1、原理,电灯有个正负极,当正确接入电源正负极就能点亮(如正极5v,负极0v),单两边同时接入正极,就不会亮(两端都是5v),所以通过控制电平,来实现控制led等的亮暗
cpu通过给寄存器写入1,则赋予高电平,写0赋予低电平,即可达到控制目的。(p2代表负极,主要控制负极的电位)


2、进制转换表

3、控制第一盏灯,让它亮应该为二进制 1111 1110,但是需要转换成16进制

4、打开单片机软件(STC-ISP)
选择单片机型号

选择串口号

打开程序软件

进入刚刚的工程文件,但是发现里面是空的,是因为kiel默认不生成文件下载文件,所以需要设置一下

勾选下面选项

重新编译


点击下载

重新打开(单片机的开关)

这样就不会重复执行函数

二、实现闪烁
1、使用while循环交替执行最低为置0和置1(但是程序执行效率太快,看不到效果,所以要进行设置)

2、获取延迟函数

添加进代码,并重新编译


三、流水灯

四、改造延迟函数,选个1毫秒的延迟时间,执行个500次,就变成500ms了,这样可以控制延迟时间。

所有函数改成传参形式

四、独立控制每一个led灯亮灭(每个按键对于相应的编号,通过查看pdf可知,第一个开关是p3_1,每个灯也有自己的编号,如第一个led是p2_0)

五、独立按键控制led状态(因为按键过程中会抖动,所以加个延迟,然后取反~)

六、独立按键,位移,每按一次,就下一盏灯亮




![自动化项目实战 [个人博客系统]](https://img-blog.csdnimg.cn/80364bcf13fc438fbbff8838f884187a.png)















