网上有关“求89C51单片机C语言用四个74hc595控制四个LED实现交通灯程序 ”话题很是火热,小编也是针对求89C51单片机C语言用四个74hc595控制四个LED实现交通灯程序寻找了一些与之相关的一些信息进行分析 ,如果能碰巧解决你现在面临的问题,希望能够帮助到您 。
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uint t1oc=20; //20*50000us=1s
uint count;
uchar tp[8];
uchar t1,t2,t3,t4;
uchar d1,d2,d3,d4;
//数码管显示代码
unsigned char code tab[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71,
0x40,0x80};
//0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
//0 1 2 3 4 5 6 7 8 9 A B C D E F - .
unsigned char code tab_p[]={
0xbf,0x86,0xdb,0xcf,
0xe6,0xed,0xfd,0x87,
0xff,0xef,0xf7,0xfc,
0xb9,0xde,0xf9,0xf1};//带小数点的16个数码
unsigned char code tab_w[]={
0x7F,0xBF,0xDF,0xEF,0xF7,0xfb,0xfd,0xfe};//位选择代码 从右到左
void delay1ms(unsigned int count) //延时1ms
{
unsigned char j;
for(;count>0;count--)
for(j=0;j<120;j++);
}
void led_ex(unsigned char dat,unsigned char N)
{
P0=dat;
P2=0x01<<N;
delay1ms(1);
P2=0x00;
}
void display(unsigned char num,unsigned char wei,bit p)
{
P3=tab_w[wei];
if(!p)
P1=tab_p[num];
else
P1=tab[num];
delay1ms(1);
P1=0x00;
}
//定时器0 50000us 12MHz
void initTimer(void)
{
TMOD=0x1;
TH0=0x3c;
TL0=0xb0;
}
//定时器0 定时中断
void timer0(void) interrupt 1
{
TH0=0x3c;
TL0=0xb0;
t1oc--;
if(t1oc==0)
{
t1oc=20; //20*50000us=1s
t1--;
if(t1==0)
{
t1=d1;
led_ex(0xFF,0);
}
tp[0]=t1%10;
tp[1]=t1/10;
t2--;
if(t2==0)
{
t2=d2;
led_ex(0x00,1);
}
tp[2]=t2%10;
tp[3]=t2/10;
t3--;
if(t3==0)
{
t3=d3;
led_ex(0x00,2);
}
tp[4]=t3%10;
tp[5]=t3/10;
t4--;
if(t4==0)
{
t4=d4;
led_ex(0x00,3);
}
tp[6]=t4%10;
tp[7]=t4/10;
}
}
void main()
{
unsigned char i;
initTimer();
TR0=1;
ET0=1;
EA=1;
d1= 60;
d2= 30;
d3= 50;
d4= 45;
t1=1;
t2=1;
t3=1;
t4=1;
while(1)
{
for(i=0;i<8;i++)
{
display(tp[i],i,i%2);
}
}
}
交通信号灯无线控制器初学单片机的需要多久能做出来?
Proteus Professional V7.5 SP3好像不错,我上学的时候使用过,可以绘制出电路 ,仿真你编写的单片机程序,什么跑马灯 、交通灯、LED显示、数码管显示的仿真都可以做的
大概看了一下,这个无线控制用到PT2262/2272估计是用于红外控制的。初学单片机的话 ,如果C语言功底不好,可能时间会耗长一些,当然用汇编写也可以 ,但开发速度也没C语言快。
我觉得这个控制方案对初学者来说,也不是很好。无线部分可以选用无线射频方案,用那种315M模块最方便了 ,也比原来的红外控制方案优势 。
你这个完全就是一个毕业设计的课题,怎么可能让初学单片机的去做?还要设计PCB图。
这个让我做的话,估计还得半天的时间才能做得完。我也只是玩单片机一年多 。
有什么问题欢迎一起探讨。
关于“求89C51单片机C语言用四个74hc595控制四个LED实现交通灯程序”这个话题的介绍 ,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!
本文来自作者[咬处]投稿,不代表捕梦资讯立场,如若转载,请注明出处:https://urbike.com.cn/news/5250.html
评论列表(3条)
我是捕梦资讯的签约作者“咬处”
本文概览:网上有关“求89C51单片机C语言用四个74hc595控制四个LED实现交通灯程序”话题很是火热,小编也是针对求89C51单片机C语言用四个74hc595控制四个LED实现交通...
文章不错《求89C51单片机C语言用四个74hc595控制四个LED实现交通灯程序》内容很有帮助