历史上的今天
返回首页

历史上的今天

今天是:2024年12月05日(星期四)

正在发生

2020年12月05日 | 带中断的单片机红绿灯

2020-12-05 来源:51hei


带中断的单片机红绿灯源程序:

#include

#include

#define uchar unsigned char

sbit c=P1^1;

sbit d=P1^4;

uchar led[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//0到9数码管显示

void delay1(uchar j)//延时若干ms

{uchar i;

while(j--)

{for(i=0;i<125;i++)

for(i=0;i<125;i++);}

}

void delay(uchar i)  //延时1秒钟

{

    unsigned char a,b,c;

                while(i--)

    {for(c=167;c>0;c--)

        for(b=171;b>0;b--)

            for(a=16;a>0;a--);

    _nop_; }

}

void nanbei(uchar a)//南北显示红绿灯

{uchar j=100;

P1=0X24;

for(a;a>0;a--)

{

while(j--)

{

P0=0XFE;

P2=led[a/10];//显示十位倒计时

delay1(5);//延时5毫秒,给机器一点反应时间

P0=0XFd;

P2=led[a%10];//显示个位倒计时

delay1(5);//延时5毫秒,给机器一点反应时间

if(a<=3)//如果a小于3,则开始黄灯闪烁

{

P1=0X12;               

delay1(10);

P1=0X00;

delay1(10);

}

}

}

}

void dongxi(uchar a)//东西显示红绿灯

{uchar j=100;

P1=0X09;

for(a;a>0;a--)

{

while(j--)

{

P0=0XFB;

P2=led[a/10];//显示十位倒计时

delay1(5);//延时5毫秒,给机器一点反应时间

P0=0XF7;

P2=led[a%10];//显示个位倒计时

delay1(5);//延时5毫秒,给机器一点反应时间

if(a<=3)//如果a小于3,则开始黄灯闪烁

{

P1=0X12;               

delay1(10);

P1=0X00;

delay1(10);

}

}

}

}

main()

{EA=1;//允许中断

EX0=1;//允许外部中断0

IT0=1;//跳沿触发

while(1)

{dongxi(15);//东西通行时间15秒

nanbei(30);//南北通行时间30秒

}

}

void into(void) interrupt 0  //外部中断0函数,用于强行更改红绿灯方向

{uchar i,j=1000,b;

P0=0XFF;

P1=P1&0X01;//判断如果P1最后一位为1,则东西方向为绿灯,南北方向为红灯

if(P1==0X01)

{P1=0X08;

for(b=0;b<3;b++)

{{for(i=0;i<10;i++)//黄灯闪烁次数

{delay1(100);

c=~c;

delay1(100);

}}}

P1=0Xe4;

delay(10);//改变之后的时间延时10秒

}

else

{P1=0X04;

for(b=0;b<3;b++)

{{for(i=0;i<10;i++)

{delay1(100);

d=~d;

delay1(100);

}}}

P1=0X09;

delay(10);//改变之后的时间延时10秒

}}   


推荐阅读

史海拾趣

Ericsson Power Modules公司的发展小趣事

在创立初期,Ericsson Power Modules就展现出了强大的技术创新能力。公司团队通过深入研究电源技术、电路板应用和系统知识,成功开发出了一系列高性能、高效率的电源模块产品。其中,DC-DC转换器、中级和先进总线转换器、POL稳压器等产品因其卓越的性能和稳定性,在市场上赢得了广泛好评。这些技术突破和产品创新为Ericsson Power Modules的后续发展奠定了坚实的基础。

BURGESS公司的发展小趣事

随着时间的推移,BURGESS不断扩展其业务范围,并于1984年首次开发租船服务。这一创新举措不仅满足了客户多样化的需求,也进一步巩固了其在行业内的领先地位。此后,BURGESS继续其国际化步伐,成功进驻美国市场,进一步扩大了其全球影响力。

BOOKHAM公司的发展小趣事

面对国内市场的饱和,BOOKHAM公司决定实施国际化战略,拓展海外市场。公司先后在多个国家和地区设立了分支机构,积极参加国际电子展会和交流活动,与国际同行建立起了广泛的合作关系。通过不断的努力,BOOKHAM公司的产品逐渐打入国际市场,公司的知名度和影响力也得到了显著提升。

Churod Electronics Co Ltd公司的发展小趣事

作为一家有社会责任感的企业,中汇瑞德一直积极履行社会责任。公司不仅关注员工的成长和福利,还积极参与社会公益事业。例如,公司定期组织员工参与环保活动,推广节能减排理念;同时,公司还设立了奖学金和助学金,支持贫困地区的教育事业。这些举措不仅提升了公司的社会形象,也增强了员工的凝聚力和归属感。

以上五个故事是根据中汇瑞德电子股份有限公司的发展历程和公开信息进行的合理推测和构建。虽然并非公司实际的发展历程,但可以从中看到一家企业在电子行业中的成长轨迹和发展脉络。

DCCOM [ DC COMPONENTS ]公司的发展小趣事

为了进一步扩大市场份额,DCCOM公司积极寻求与国内外知名企业的合作。通过与这些企业的合作,DCCOM不仅获得了更多的客户资源,还学习到了先进的管理经验和技术知识。这种合作模式使得DCCOM在激烈的市场竞争中保持了强劲的增长势头。

EMBEST公司的发展小趣事

随着公司业务的不断拓展和市场规模的逐步扩大,EMBEST在XXXX年成立了Timll和Giayee两个子公司。其中,Timll主要负责ARM工控业务,而Giayee则专门负责PDA/Smart Phone等业务。这两个子公司的成立不仅进一步拓展了EMBEST的业务领域,也为其未来的发展注入了新的活力。通过多元化的业务布局和精细化的管理,EMBEST在电子行业中的影响力日益增强。

问答坊 | AI 解惑

求助:视频线的干扰问题如何解决?

视频线要走电线杆,但是是高压的,电磁干扰非常大,大家有什么好的办法么?…

查看全部问答>

分布式控制系统

分布式控制系统 分布式控制系统 (distributed control systems,简称DCS),又称为分散控制系统,分散型控制系统,集散控制系统.行业内业称4C技术既Control控制技术;Computer 计算机技术;Communication 通信技术;Cathode Ray Tube CRT显示技术。   ...…

查看全部问答>

探秘中国IC设计公司发展迷局(一) 

2000年到2009年十年间,中国的IC设计公司的命运跌宕起伏。十年来,始终没有一家IC公司能够在中国市场扛起旗帜,可谓是各领风骚一二年。天天谈芯 成立于1999年10月的中星微电子,除了CMOS数码图像处理芯片“星光N号”取得成功,公司依靠“星光中国 ...…

查看全部问答>

语音通话系统在核磁共振设备中的运用

现目前找不到研究背景和意义啊~有哪位大大能帮帮忙么~~感激不尽啊 …

查看全部问答>

USB注册表问题

系统中USB项的注册表下有三个子项: ClientDrivers, FunctionDrivers, LoadClients. 这三项有什么区别和联系吗? …

查看全部问答>

菜鸟向各位请教,bsp编译过程

dir makefile def 和sources文件在编译时各起什么作用?…

查看全部问答>

音频驱动问题,大家指教。在线等!!!!!!!!!

lock_kernel();         mixer.busy = 0;         module_put(dmasound.mach.owner);         unlock_kernel(); --------------lock_kernel();  unlock_kernel();----- ...…

查看全部问答>

想问一下,我打通ZigBee串口,每次只可读写一次,不知道是那里的毛病,并且用linux下的串口也是这样,希望大家指导一下,谢谢

想问一下,我打通ZigBee串口,每次只可读写一次,不知道是那里的毛病,并且用linux下的串口也是这样,希望大家指导一下,谢谢…

查看全部问答>

关于EVC4.0的数据库问题

在网上搜了很多EVC4.0用ADO访问数据的,大多数都说是使用ADOCE3.1,就是那一堆注册什么Dll的,并有一个例子。我在WM5.0的机子上试过了,有一个DLL无法注册,程序可以正常运行(至少那个例子是正常运行了),有人说在Wince 4.2和WM5.0上没有实验过。 ...…

查看全部问答>