找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1349|回复: 2
收起左侧

单片机循环点亮LED灯 为什么多一层循环那个程序能让8个灯循环间隔亮

[复制链接]
ID:1099577 发表于 2023-11-23 15:00 | 显示全部楼层 |阅读模式
有好心人能帮忙看看这两个简单程序为什么多一层循环那个程序能让8个灯循环间隔亮,而少个循环的不能间隔循环亮吗?
单片机程序1.png
单片机程序2.png
单片机图2.png
回复

使用道具 举报

ID:712097 发表于 2023-11-23 15:28 | 显示全部楼层
循环间隔亮,左移2位就好了。P1=P1<<2;// 这样
回复

使用道具 举报

ID:647261 发表于 2023-11-23 17:08 | 显示全部楼层
1. 第一个循环没有加大括号,只能执行下一句for循环,也就是只能延时一下,然后再亮第二颗灯,程序就结束了。要亮8颗灯,大括号不能省。
2. 51单片机下,int的值是-32768~+32768,程序上面写的90000超范围了,建议改到范围内,或者int改成unsigned int,范围是0~+65535。当然,有些单片机会默认int为unsigned int的,也可以写到65535
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表