1、 单片机课程设计报告 -简易交通灯设计 班级:09 级通信工程二班 学号: 姓名: 指导老师: 日期:2012 年 3 月 24 日 课题:课题:简易交通信号控制器简易交通信号控制器 课程设计目的课程设计目的: : 单片机课程设计是一门实践课程,要求学生具有制作调试单片机 最小系统及外设的能力,能够掌握单片机内部资源的使用。 单片机课程设计内容包括硬件设计、制作及软件编写、调试,学 生在熟练掌握焊接技术的基础上,能熟练使用单片机软件开发环境 Keil C51 编程调试, 并使用 STC ISP 调试工具采用串口下载方式联调 制作的单片机最小系统。 课课程设计程设计内容及内容及要求要求: 自制一
2、个单片机最小系统,包括串口下载、复位电路,采用内部 定时器定时控制南北、东西的交通信号灯(采用 LED 模拟) ,交通信 号灯由红、黄、绿灯组成,东西、南北模拟路口由 12 路 LED 组成, 其中南北、东西均采用并联方式连接,双向均有倒计时牌。 控制方案如下: 东西绿灯 东西绿闪 东西黄灯 东西红灯 22 5 3 30 南北红灯 南北绿灯 南北绿闪 南北黄灯 30 22 5 3 实现思路:实现思路: 使用定时器 0 方式一及中断实现精准定时,P0 口控制两组交通 灯亮灭,P1,P2 口分别控制路口倒计时牌十位和各位数值显示,实 现倒数功能! 实现程序如下:实现程序如下: #include #
3、define uint unsigned int #define uchar unsigned char uint i=0,num=0; uchar code table=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f;/ 显示段码值 09 sbit dxgreen=P10; sbit dxyellow=P11; sbit dxred=P12; sbit nbgreen=P13; sbit nbyellow=P14; sbit nbred=P15; sbit gewei=P16; sbit shiwei=P17; void main() P
4、1=0xff; TMOD = 0x01; /使用模式 1,16 位定时器 TH0=(65536-50000)/256; /定时 50ms,装初值 TL0=(65536-50000)%256; EA=1; /总中断打开 ET0=1; /定时器中断打开 TR0=1; while(1) if(i=20) i=0; num+; if(num=1 nbyellow=0; if(num=61) num=0; nbyellow=1; void timer0() interrupt 1 TH0=(65536-50000)/256; /定时 50ms,装初值 TL0=(65536-50000)%256; i+; Proteus 仿真结果如下:仿真结果如下: 课程设计心得体会:课程设计心得体会: 其实在之前的单片机课程学习的时候, 就发现自己对单片机比较 感兴趣了,自己买了个单片机开发板学习了一些简单控制的教程,这 些都为我这次成功的单片机课程设计打下了基