单片机交通灯数码管c语言程序,基于AT89C52单片机的交通灯C语言程序

该博客详细介绍了如何使用C语言编写一个基于AT89C52单片机的交通灯控制系统程序。程序通过控制2位7段共阳数码管显示倒计时,包括四种状态的绿灯和红灯显示代码,并提供了相应的延时函数和数码管显示函数。
摘要由CSDN通过智能技术生成

如图,简易交通灯 。

有四个状态0,1,2,3

数码管为2位7段共阳数码管,可以通过修改i,j的值进而修改倒计时的长短。

不当地方,敬请批评指正!

6098ba644bcf310a2e026ad65810502f.png

图一:十字路口交通灯

7f3e7987291202fc086cef1d1ba323d0.png

图二:状态0

绿灯:0x42

红灯:0xbd

9f7d1dcd6d8ca9079a992b4980facd64.png

图三:状态1

绿灯:0x25

红灯:0xda

48d346d5c1d14047b7c8ace51f8287b0.png

图四:状态2

绿灯:0x90

红灯:0x6f

a26d664eff62be85f9e906f8f0a1f2b0.png

图五:状态3

绿灯:0x2c

红灯:0xd3

9315509f4349c35bec977973687063b1.png

5e2a710eccefc2f152017089643b299e.png

#include

#include

#define uint unsigned int

#define uchar unsigned char

sbit ge=P0^6;

sbit shi=P0^7;

sbit d0=P0^0;

sbit d1=P0^1;

sbit d2=P0^2;

void delay(uint z)

{

uint x,y;

for(x=z;x>0;x--)

for(y=113;y>0;y--);

}

void shu0()

{

d0=0;

d1=0;

d2=0;

delay(1);

d0=1;

d1=0;

d2=0;

delay(1);

d0=0;

d1=1;

d2=0;

delay(1);

d0=1;

d1=1;

d2=0;

delay(1);

d0=0;

d1=0;

d2=1;

delay(1);

d0=1;

d1=0;

d2=1;

delay(1);

_nop_();

_nop_();

_nop_();

delay(1);

}

void shu1()

{

d0=1;

d1=0;

d2=0;

delay(1);<

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值