![单片机C语言程序设计实训100例:基于STC8051+Proteus仿真与实战](https://wfqqreader-1252317822.image.myqcloud.com/cover/270/43738270/b_43738270.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
3.4 LED模拟交通灯
LED模拟交通灯电路如图3-5所示,12只LED分成东西向和南北向两组,各组指示灯均有相向的2只红色、2只黄色与2只绿色的LED,并在程序中对各LED单独进行位定义。程序运行时模拟了十字路口交通指示灯的切换过程与显示效果。
![](https://epubservercos.yuewen.com/DF9E4A/23020648309755406/epubprivate/OEBPS/Images/42553-00-61-1.jpg?sign=1739100176-ZUi43okLGMsXbB3NjY06QlBHfxc8O3e4-0-6cfbee811b98d5f2b67631ec2c6e1de6)
图3-5 LED模拟交通灯电路
1. 程序设计与调试
在程序中,用6行sbit对东西和南北向的红、黄、绿指示灯分别进行定义,以便独立控制各路指示灯。在仿真程序中,将交通指示灯切换时间设置得较短,以便调试时较快观察到运行效果。在真实的交通灯应用中,还要考虑准确的定时问题、数字的显示问题及功率驱动问题等。
2. 实训要求
① 修改程序,模拟实际应用中的交通指示灯切换过程。
② 在掌握后续有关蜂鸣器的程序设计后,添加黄灯闪烁的提示音输出功能。
3. 源程序代码
![](https://epubservercos.yuewen.com/DF9E4A/23020648309755406/epubprivate/OEBPS/Images/42553-00-61-2.jpg?sign=1739100176-tScblXydBK7m8X7DOcIgFRHgxSBIME8q-0-e0215ebbb564665005073095208919b0)
![](https://epubservercos.yuewen.com/DF9E4A/23020648309755406/epubprivate/OEBPS/Images/42553-00-62-1.jpg?sign=1739100176-lAkeUpWFNEfYgT03SMC96aGL5BOzzD3C-0-da1e2a7b5433df7b59ba70e4c7641639)
![](https://epubservercos.yuewen.com/DF9E4A/23020648309755406/epubprivate/OEBPS/Images/42553-00-63-1.jpg?sign=1739100176-ThscR4U8FhTUUCHvGzhCI8OBaCfHCuHN-0-206825bc9255cd4975626a47033c8cba)