1 / 5
文档名称:

基于Proteus仿真交通灯.doc

格式:doc   大小:83KB   页数:5页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

基于Proteus仿真交通灯.doc

上传人:小雄 2021/6/27 文件大小:83 KB

下载得到文件列表

基于Proteus仿真交通灯.doc

文档介绍

文档介绍:基于Proteus仿真交通灯
Proteus
班级:
姓名:
成绩:
电信13-2段学亮 电子与信息工程学院
信息与通信工程系
设计要求
单片机的P3 〜,P0 口控制一只数码 管,当4X4矩阵键盘中的某一按键按下时,数码管上显示对应的键号。 例如,1号键按下时,数码管显示“1”,14号键按下时,数码管显示“E” 等等.
仿真电路图
仿真电路图,如图一
图1:4*4键盘控制数码管显示
仿真C51程序
#include<> ttdefine uchar unsigned char ttdefine uint unsignedint sbitdula=P2A6; sbitwela=P2A7; uchardisnum,temp,key; void delay(uchari)
ucharj,k;
for(j=0;j<i;j++)
for(k=0;k<200;k++);
}
uchar code
table_du[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0x7f8,0x80,0x90,0x88,0x83,0
xc6,Oxa 1,0x86,0x8e,0xff};
void main()
{
disnum=16;
wela=0;
while(l)
{
P3=0xf0;
temp=P3;
temp=temp&0xf0;
if(temp!=OxfO)
{
delay(lO);
if(temp!=OxfO)
temp=P3;
temp=temp|OxOf;
P3=temp;
key=P3;
switch(key)
2
{ case Oxee : disnum=O; break;
case Oxde : disnum=l; break;
case Ox be : disnum=2; break;
case 0x7e : disnum=3; break;
case Oxed : disnum=4; break;
case Oxdd : disnum=5; break;
case Oxbd : disnum=6; break;
case 0x7d : disnum=7; break;
case Oxeb : disnum=8; break;
case Oxdb : disnum=9; break;
case Oxbb : disnum=10; break;
case 0x7b : disnum=ll; break;
case 0xe7 : disnum=12; break;
case 0xd7 : disnum=13; break;
case 0x