编写交通信号灯控制程序。要求如下:
1.能够正常的南北东西走向红绿灯控制
2.红绿灯切换的时候,黄灯红灯要闪烁
3.使用插入代码功能,代码格式一定要符合C语言标准格式
首先我们打开keil_proteus中调试交通信号灯的电路图
根据题目要求我们知道这9个灯的闪烁要满足
能够正常的南北东西走向红绿灯控制
红绿灯切换的时候,黄灯红灯要闪烁
所以现在我们打开Keil uVision4开始编撰代码,编好的代码如下
#include <reg52.h> #include "delay.h" sbit W_E_R=P0^0; sbit W_E_Y=P0^1; sbit W_E_G=P0^2; sbit N_S_R=P0^3; sbit N_S_Y=P0^4; sbit N_S_G=P0^5; void main() { //四个路口红灯亮 W_E_R = 0; N_S_R = 0; delay1s(); //交通灯正常工作循环 while(1) { //东西红灯亮,南北绿灯亮,10s延迟 W_E_R = 0; N_S_R = 1; N_S_G = 0; delay10s(); //东西红灯闪,南北黄灯闪,3s延迟 W_E_R = 0; N_S_Y = 0; N_S_G = 1; delay1s(); W_E_R = 1; N_S_Y = 1; delay1s(); W_E_R = 0; N_S_Y = 0; N_S_G = 1; delay1s(); W_E_R = 1; N_S_Y = 1; delay1s(); W_E_R = 0; N_S_Y = 0; N_S_G = 1; delay1s(); W_E_R = 1; N_S_Y = 1; delay1s(); //东西绿灯亮,南北红灯亮,10s延迟 W_E_G=0; N_S_R=1; N_S_R=0; delay10s(); //东西黄灯闪,南北红灯闪,3s延迟 } }
最后将代码输入到proteus中即可实现交通灯调试