//以ä¸ä»£ç ç»è¿Keil C51软件è°è¯éè¿
#include "reg51.h" //头æ件å
å«
//å®å®ä¹
#define uint unsigned int
#define uchar unsigned char
#define ON 0 //0çæ¶åç¯äº®
#define OFF 1 //1çæ¶åç¯äº®
//管èå®ä¹
//ååé é»ç¯äº®3ç§ çº¢ç¯äº® 30ç§ é»ç¯3ç§ ç»¿ç¯38ç§
//ä¸è¥¿é é»ç¯äº®3ç§ ç»¿ç¯äº® 28ç§ é»ç¯3ç§ çº¢ç¯40ç§
sbit PortDX_Yellow = P1^0; //ä¸è¥¿æ¹åé»ç¯
sbit PortDX_Red = P1^1; //ä¸è¥¿æ¹å红ç¯
sbit PortDX_Green = P1^2; //ä¸è¥¿æ¹å绿ç¯
sbit PortNB_Yellow = P1^3; //ååæ¹åé»ç¯
sbit PortNB_Red = P1^4; //ååæ¹å红ç¯
sbit PortNB_Green = P1^5; //ååæ¹å绿ç¯
void delay(uint ms) // 毫ç§çº§å»¶æ¶(AT89C52 @ 11.0592MHz)
{
uint ti;
while(ms--)
{
for(ti=0;ti<112;ti++){}//112
}
}
/*==================== 主å½æ° ====================*/
void main(void)
{
delay(400); //å¼æºå»¶æ¶400ms
while(1)
{
PortNB_Yellow = ON ;PortNB_Red = OFF;PortNB_Green = OFF;//ååé»ç¯äº®3ç§
PortDX_Yellow = ON ;PortDX_Red = OFF;PortDX_Green = OFF;//ä¸è¥¿é»ç¯äº®3ç§
delay(3000);
PortNB_Yellow = OFF;PortNB_Red = ON ;PortNB_Green = OFF;//åå红ç¯äº®28ç§
PortDX_Yellow = OFF;PortDX_Red = OFF;PortDX_Green = ON ;//ä¸è¥¿ç»¿ç¯äº®28ç§
delay(28000);
PortNB_Yellow = OFF;PortNB_Red = ON ;PortNB_Green = OFF;//åå红ç¯äº®2ç§
PortDX_Yellow = ON ;PortDX_Red = OFF;PortDX_Green = OFF;//ä¸è¥¿é»ç¯äº®2ç§
delay(2000);
PortNB_Yellow = ON ;PortNB_Red = OFF;PortNB_Green = OFF;//ååé»ç¯äº®1ç§
PortDX_Yellow = ON ;PortDX_Red = OFF;PortDX_Green = OFF;//ä¸è¥¿é»ç¯äº®1ç§
delay(1000);
PortNB_Yellow = ON ;PortNB_Red = OFF;PortNB_Green = OFF;//ååé»ç¯äº®2ç§
PortDX_Yellow = OFF;PortDX_Red = ON ;PortDX_Green = OFF;//ä¸è¥¿çº¢ç¯äº®2ç§
delay(2000);
PortNB_Yellow = OFF;PortNB_Red = OFF;PortNB_Green = ON ;//åå绿ç¯äº®38ç§
PortDX_Yellow = OFF;PortDX_Red = ON ;PortDX_Green = OFF;//ä¸è¥¿çº¢ç¯äº®38ç§
delay(3800);
}
}
1ï¼å½ä¸ºé»ç¯æ¶ååãä¸è¥¿ä¸¤éåæ¶ä¸ºé»ç¯ï¼ä»¥æ示è¡äººæ车è¾ä¸ä¸ä¸ªç¯è²å³å°å°æ¥æ¶é´ 3ç§ã
2ï¼å½åå为红ç¯ï¼ååé车è¾ç¦æ¢éè¡ï¼æ¶é´30ç§;ååé为绿ç¯ï¼ååé车è¾éè¿æ¶é´38ç§ ã
3ï¼å½ä¸è¥¿é绿ç¯ï¼ä¸è¥¿é车è¾éè¡ï¼æ¶é´ä¸º28ç§ï¼ä¸è¥¿é为红ç¯ï¼ä¸è¥¿é车è¾ç¦æ¢éè¿æ¶é´ä¸º40ç§ã
4ï¼è¿æ ·å¦ä¸è¡¨çæ¶é´å红ã绿ãé»åºç°ç顺åºä¾æ¬¡åºç°è¿æ ·è¡äººå车è¾å°±è½å®å
¨ç
éçéè¡ã
温馨提示:答案为网友推荐,仅供参考