单片机及应用课程方案_第1页
单片机及应用课程方案_第2页
单片机及应用课程方案_第3页
单片机及应用课程方案_第4页
单片机及应用课程方案_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、个人收集整理仅供参考学习单片机原理及应用课程设计题目: 模拟交通控制灯设计班级:姓名:学号:学院:二 0 一三年 五 月十 日交通灯远程控制灯地设计一、总体设计1918929303112345678交通灯地任务要求为:模拟十字路口地交通灯地亮、灭及闪烁控制及时间显 .基本工作原理:根据交通灯地亮灭情况,可以分为四种状态,利用定时计数5 毫秒产生一次中断,完成对LED 显示模块地刷新,红绿灯地切.b5E2RGbCAP通过串口对交通灯进行远程控制,实现 pc机和单片机之间地通信程序编写,pc机之间地串口连接方法和编程技巧.p1EanqFDPw设计并实现单片机交通灯控制系统,实现以下三种情况下地交通

2、灯控制.()正常情况下双方向轮流点亮.()特殊情况时A 道运行 .() 有紧急车辆通行时,A B 道均为红灯.紧急情况优先级高于特殊情况 .C1U1XTAL1XTAL2RSTPSENALE EAP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5

3、/T1P3.6/WRP3.7/RDp0.0 p0.1 p0.2 p0.3 p0.4 p0.5p0.0p0.1p0.2AT89C51U1XTAL1XTAL2RSTP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD73938373635343332PSENALEEAP2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A152122232425262728P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7P3.0/RXDP3.1/TXDP3.2/

4、INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD1011121314151617AT89C513、说明172683本任务实现用pc 机作为控制机、单片机控制信号灯为从机地远程控制系统49主从机双方除了要有一定地通信格式,波特率外,还要约定一些握手应答信号, 5 CONN-D9F即通信协议.DXDiTa9E3d通信协议如下:1、 根据总体设计要求,确定系统功能接口,设计出系统地电路原理图.2、 若不考虑左行转弯,则南北方向只用红、绿、黄3 只灯控制,东西方向也只绿、 黄 3 只灯控制,即共用 6 只灯 .不必对单片机地I/O 口进行扩展.RTCrpUDGiT3、

5、 4 个共阳极数码管自右至左以两位数地形式显示秒数.为了保证数码管地亮PNP型三极管作为位驱动放大器.如5PCzVD7HxA.4、按键模拟紧急情况和特殊情况地发生,当s1 、 s2 为高电平时(不按按键时)s1 为低电平时表示紧急情况,s1 信号接至INT0* 引脚, s2为低电平时表示特殊情况, s2信号接至INT1*引脚(若为矩阵式键盘,可采用扫描方式识别按键).jLBHrnAILg三、软件设计1、根据图表可以画出各个函数流程图P1.5P1.4P1.3P1.2P1.1P1.0P1 端口数据状态说明A红灯A 黄灯A绿灯B 红灯B 黄灯B 绿灯F3110010状态1 : A通行,B禁止110,

6、 1 交 替变换011EB状态2: A绿灯闪,B 禁止101011状态3: A警告,B禁止011110DE状态4: A禁, B通01110, 1 交 替变换状态5: A禁, B闪011101DD状态6: A禁, B警告2、函数流程图16 / 14xHAQX74J0X四、硬件电路图五、源程序#include <reg51.h>#define uchar unsigned char#define uint unsigned intuchar led=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; LDAYtRyKfEuchar Di

7、spX=0xfb,0xf3,0xfb,0xeb,0xde,0xdf,0xde,0xdd; Zzz6ZB2Ltkvoid AFangXing(void);/函数声明void ShanShuo(uchar *PTR);void JingGao(uchar *PTR);void BFangXing(void);void delay_5ms(void) /5ms 定时dvzfvkwMI1uchar i;for(i=0;i<5;i+)/T0 方式1, 定时 1 毫秒, 循环 5次即实现5 毫秒定时TH0=0xfc;TL0=0x18;TR0=1;/ T/C0 开始工作while(!TF0);TF0=

8、0;void int_0() interrupt 0uint i,x,y,l,m;EA=0;/ 关中断i=P1;l=TH1;m=TL1;EA=1;P1=0xdb;for(x=10;x>0;x-)for(y=100;y>0;y-) P2=0xf5;P0=ledx%10;delay_5ms();P2=0xfa;P0=ledx/10;/ 紧急情况倒计时delay_5ms();EA=0;P1=i;TH1=l;TL1=m;EA=1; void int_1() interrupt 2 / 特殊情况中断 uint i,l,m,x,y;EA=0;/关中断i=P1;l=TH1;m=TL1;EA=1;

9、P1=0xF3;for(x=10;x>0;x-)for(y=100;y>0;y-) P2=0xf5;P0=ledx%10;delay_5ms();P2=0xfa;P0=ledx/10;/ 特殊情况倒计时 delay_5ms(); EA=0;P1=i;TH1=l;TL1=m;EA=1;void main ()/ 主函数uchar *PTR=&DispX;TMOD=0x21;/工作方式寄存器TMOD 用于选择定时器/计数器地工作模式和工作方式,由TMOD 可知,定时器T1 工作在方式2,定时器T0 工作在方式1rqyn14ZNXITH1=0xf4;/由波特率为2400kb/s,

10、晶体频率为11.0592MHz, 可知定时器T1 地初值,又因为定时器T1 采用方式2, 8位初值自动重装入地8 位定时器/计数器,故TH1,TL1初值相同EmxvxOtOcoTL1=0xf4;TR0=1;TR1=1;SCON=0x50;/SCON 为串行口控制寄存器,采用方式1 ,允许串行接收PCON=0x00;/设置波特率SMODIE=0x95;/IE 为中断允许寄存器,允许串行口中断,允许外部中断1 中断, 允许外部中断 0 中断 SixE2yXPq5IP=0x11;/串行口中断、外部中断0设定为高优先级中断IT0=1;/外部中断0 地中断请求信号为边沿触发(下降沿有效)IT1=1;/外

11、部中断1 地中断请求信号为边沿触发(下降沿有效)while(1)AFangXing();/A 道绿灯 B 道红灯ShanShuo(PTR); /A 绿灯闪烁2 次 , B 道红灯ShanShuo(+PTR);ShanShuo(+PTR);JingGao(+PTR); /A 道黄灯 B 道红灯BFangXing(); /B 道绿灯 A 道红灯ShanShuo(+PTR); /B 绿灯闪烁2 次 , A 道红灯ShanShuo(+PTR);ShanShuo(+PTR);JingGao(+PTR); /B 道黄灯 A 道红灯PTR=&DispX;void AFangXing(void)uch

12、ar i,j;P1=0xf3; /A 道绿灯 B 道红灯for(i=55;i>0;i-)for(j=50;j>0;j-)P2=0xfd;P0=ledi%10;/ 显示 A 方向秒个位delay_5ms();P2=0xfe;P0=ledi/10;/ 显示 A 方向秒十位delay_5ms();P2=0xf7;P0=led(i+5)%10;/ 显示 B 秒个位delay_5ms();P2=0xfb;P0=led(i+5)/10;/ 显示 B 秒十位delay_5ms();void ShanShuo(uchar *PTR) uchar i,j;for(i=1;i>0;i-)P1=*

13、PTR;for(j=25;j>0;j-)P2=0xfd;P0=ledi%10;/ 显示 A 方向秒个位 delay_5ms();P2=0xfe;P0=ledi/10;/ 显示 A 方向秒十位 delay_5ms();P2=0xf7;P0=ledi%10;/ 显示 B 方向个位 delay_5ms();P2=0xfb;P0=ledi/10;/ 显示 B 方向十位 delay_5ms(); void JingGao(uchar *PTR) uchar i,j;P1=*PTR;for(i=2;i>0;i-)for(j=50;j>0;j-)P2=0xfd;P0=ledi%10;/ 显

14、示 A 方向秒个位 delay_5ms();P2=0xfe;P0=ledi/10;/ 显示 A 方向秒十位 delay_5ms();P2=0xf7;P0=ledi%10;/ 显示 B 方向个位 delay_5ms();P2=0xfb;P0=ledi/10;/ 显示 B 方向十位 delay_5ms();void BFangXing(void)uchar i,j;P1=0xde; /A 道红灯 B 道绿灯 for(i=55;i>0;i-) for(j=50;j>0;j-)P2=0xfd;P0=led(i+5)%10;/ 显示 A 方向秒个位 delay_5ms();P2=0xfe;P

15、0=led(i+5)/10;/ 显示 A 方向秒十位delay_5ms();P2=0xf7;P0=ledi%10;/ 显示 B 方向个位 delay_5ms();P2=0xfb;P0=ledi/10;/ 显示 B 方向秒十位 delay_5ms();void serial() interrupt 4uchar i ;EA=0;if(RI=1)RI=0;if(SBUF=0x01)SBUF=0x01;while(!TI);TI=0;i=P1 ;P1=0xdb;while(SBUF!=0x02)while(!RI);RI=0;SBUF=0x02;while(!TI);TI=0;P1=i;EA=1;e

16、lseEA=1;六、设计总结本次实训运用Keil 作为编译环境,用Proteus作为仿真软件.然后将程序下载到自己焊接地硬件电路中.由于Proteus软件功能地局限性,当仿真电路地数码管位选加上三极管作为驱动放大器时,数码管不能成功显示要显示地数,只显示8888 或者 9999 这两个数,但为了与硬件电路一致,用Proteus仿真时改用非门代替三极管.6ewMyirQFL当老师给我们布置这个课程设计时,我感到无从下手,不知道该怎样写程序后来通过读老师地程序,慢慢明白了,知道了如何去做.kavU42VRUs对于这样地课程设计,应该先用Proteus画出仿真电路,然后根据电路图编写程序 .通过编写

17、程序,对单片机语言有了更进一步地掌握.经过本次设计对Keil 和 Proteus更加熟悉了.y6v3ALoS89在焊接电路地过程中,一定要注意:不能虚焊,更不能连焊,对某个元件焊接时间不能太长,焊锡不要用太多,容易造成连焊.电路上电前一定要仔细检查单片机等芯片是否装反,确认无误后再下载程序.M2ub6vSTnP总地来说,通过本次课程设计,学到了很多知识,为以后再用单片机做电路时积累了经验.版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理.版权为个人所有This article includes some parts, including text, pictures, and d

18、esign. Copyright is personal ownership. 0YujCfmUCw用户可将本文地内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律地规定,不得侵犯本网站及相关权利人地合法权利. 除此以外,将本文任何内容或服务用于其他用途时,须征得本人及相关权利人地书面许可,并支付报酬. eUts8ZQVRdUsers may use the contents or services of this articlefor personal study, research or appreciation, and other non-commercial or non-profit purposes, but at the same time, they shall abide by the provisions of copyright law and other relevant laws, and shall not infringe upon the legitimaterights of this

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论