找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 627|回复: 2
打印 上一主题 下一主题
收起左侧

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

[复制链接]
跳转到指定楼层
楼主
有好心人能帮忙看看这两个简单程序为什么多一层循环那个程序能让8个灯循环间隔亮,而少个循环的不能间隔循环亮吗?

单片机程序1.png (40.63 KB, 下载次数: 97)

单片机程序1.png

单片机程序2.png (48.92 KB, 下载次数: 85)

单片机程序2.png

单片机图2.png (27.88 KB, 下载次数: 87)

单片机图2.png
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
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 单片机教程网

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