如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
《通信应用软件设计》通信应用软件设计》课程设计报告题目:基于MS51单片机的红绿灯的设计基于MS51单片机的红绿灯的设计MS51专姓学业:名:号:通信涂俊伟30黄先栋指导老师:设计成绩:完成日期:2010年12月12日南京信息职业技术学院通信学院1设计概述(要求:阐释设计的目标,主要功能、主要元器件的选择等设计思路。10分)近年来,随着我国国民经济的快速发展,我国机动车辆发展迅速,而城镇道路建设由于历史等各种原因相对滞后,交通拥挤和堵塞现象时常出现。本设计是由单片机控制的单向红绿灯系统,能满足基本的设计目标,即红灯亮60秒后,黄灯亮4秒,绿灯亮30秒,黄灯亮4秒,红灯亮60秒……就这样循环下去。本设计的不同之处是,在特殊的情况下,还能对红绿灯进行控制,即通过串口通信,pc即发送字符“g”代表green)(g,红绿灯接收后能立马跳到绿灯,比如老人过马路等等情况,这下可方便咯。当然本设计还有不足,不尽如人意的地方,希望通过今后的学习加以改进。主要硬件设备:AT89C51单片机、发光二极管、共阳型LED数码管、连线若干等。2总体方案总体方案(包括系统结构、各功能模块,用框图说明。10分)南京信息职业技术学院通信学院驱动电源单片机AT89C51数码管显示红路灯装置串口通信南京信息职业技术学院通信学院3实现3.1硬件设计(20分)1、硬件电路图2、主要元器件选择表2-1主要元器件清单序号12345678910材料名称单片机发光二极管共阳型LED数码管无极性电容电解电容晶振COMPIM组件虚拟终端电阻若干连线若干11.0592MHZ规格型号AT89C52数量13121111元器件代号)3.2软件设计(各模块工作流程图及其说明,南京信息职业技术学院通信学院1、主程序流程图开始红灯亮60秒,且传送数字给数码管黄灯亮4秒,且传送数字给数码管绿灯亮40秒,且传送数字给数码管黄灯亮4秒,且传送数字给数码管系统初始化开定时器中断,开串口中断扫描数码管定时器中断服务程序串口中断服务程序Y返回有“g”发送?南京信息职业技术学院通信学院2、其它部分程序流程图(如显示、中断服务、重要元器件的驱动等函数模块)开始循环次数减一定时器初始化设定中断的循环次数重新给循环次数赋初值定时开始调显示子程序N定时时间到Y产生中断返回南京信息职业技术学院通信学院3、详细代码设计(源程序,含关键语句备注)#include<reg52.h>#defineucharunsignedchar#defineuintunsignedintsbitshiw=P2^6;sbitgew=P2^7;sbitred=P1^0;sbitgreen=P1^2;sbityellow=P1^1;ucharcodedigit[11]={0x28,0x7E,0xA2,0x62,0x74,0x61,0x21,0x7A,0x20,0x60,0xff};//共阳管编码ucharnum,second=40,turned,shi,ge;//定义计数变量和显示变量voiddelayms(uintxms){uinti,j;for(i=xms;i>0;i--)for(j=123;j>0;j--);}//延时子函数南京信息职业技术学院通信学院voiddisplay(){P2=0x00;P0=digit[shi];shiw=1;delayms(5);//显示子函数//消隐(实验板为0xff)//(实验板为0)P2=0x00;P0=digit[ge];gew=1;delayms(5);}//消隐voidmain(){red=0;IP=0x10;SCON=0x50;TMOD=0x21;PCON=0x00;TH1=0xFD;TL1=0xFD;TI=RI=0;//发送/接收中断标志复位//开始时就使红灯先亮//串口中断优先级最高//串口工作在方式1,允许接受//T1工作在模式2,T0工作在模式1//波特率不倍增//波特率9600B南京信息职业技术学院通信学院IE=0x90;TR1=1;//开串口中断//启动定时器1TH0=(65536-45872)/256;TL0=(65536-45872)%256;EA=1;ET0=1;TR0=1;while(1){display();}}//开总中断//开定时器1中断//启动定时器0中断voidT0_time()interrupt1{TH0=(65536-45872)/256;TL0=(65536-45872)%256;