开启辅助访问 切换到窄版

打印 上一主题 下一主题

51单片机流水灯

[复制链接]
版块:
MCU单片机技术 单片机入门及综合应用 发布时间:2018-6-25 14:07:20
9580
楼主
跳转到指定楼层
| 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用P1口做实验, IO 高电平 触发亮灯。
假如,我们要让P15的灯亮,其他的灯灭,
P17 P16 P15 P14 P13 P12 P11 P10
0 0 1 0 0 0 0 0
即是0010 0000 换成16进制的数 就是 : 0x20
P1 = 0x20 ,就可以了;
是不是很简单?
那好,下面提供二种方式,让8盏灯流水
(1)

大家自己检查对照一下, 数组dat[8]里面每个数,分别对应那盏灯亮 ;
(2)

其实,上面二种方式都是一样的,表达方式不一样而已,实际结果都是P1 = 0xXX 而已。
第二种方式,i=0、dat(0x80)移动0位,还是0x80,那么P1=0x80,

i=1,dat(0x80)移动1位,变成0x40,那么P1 = 0x40,
i=2,dat(0x80)移动2位,变成0x20,那么P1 = 0x20,
。。。。。。。看,实际效果和第一种方式一样的。
流水灯的速度,只要大家自己修改delay() 函数就可以了,延时时间长,流水灯速度就慢,反之则快。
至此,没错,protuus仿真试一下 :

下一篇,我将介绍 51单片机驱动一位数码管 显示 0--9 的数字

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

回复

使用道具 举报

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

本版积分规则

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