使用单片机I O口控制8只LED灯 1 点亮8个中的的第任意个LED灯 使任意一个或多个LED灯闪烁(单片机点亮八个led灯程序流程图)

使用单片机I O口控制8只LED灯 1 点亮8个中的的第任意个LED灯 使任意一个或多个LED灯闪烁(单片机点亮八个led灯程序流程图)

首页维修大全综合更新时间:2024-09-04 07:22:47

使用单片机I O口控制8只LED灯 1 点亮8个中的的第任意个LED灯 使任意一个或多个LED灯闪烁

举个简单的例子,8个LED灯的正级分别接在P1.0到P.7上面,负极分别接在P2.0到P2.7上面, P1 = 0xff; (P1口全部高电平) P2 = 0x00; (P2口全部低电平),此时电流通过P1口经LED流向P2口,8个灯全部点亮,如果P1不变,P2 = 0XFF; 此时由于P1与P2的接口全部是高电平,没有电压差也就没有电流,LED全部熄灭,如果想让某一个灯点亮,可以根据8421法则,P2.7 P2.6 P2.5 P2.4是高8位,P2.4 P2.3 P2.2 P2.1 P2.0是低8位 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 8 4 2 1 8 4 2 1 当p1 = 0xff; p2 = 0xfe的时候,就是P2.0那个小灯点亮,其他7个灭,p2 = 0xfe的这个F就是8+4+2+1 =15,对应16进制里的f, 同理E=8+4+2+0 =14,对应16进制里的e。

闪烁的话需要用到定时器,时间到了把当前P2对应的引脚取反一下就行了,比如当前P2.0 = 1; 定时器时间到了以后 ~P2.0 当然实际写程序的时候不能直接这么写,自己多复习下吧

大家还看了
也许喜欢
更多栏目

© 2021 3dmxku.com,All Rights Reserved.