电子职业技能训练报告
训练内容:模拟交通灯控制系统(硬件部分)
专业班级:电子信息工程1202 学生姓名: 同组学生: 指导教师:
训练时间:2015—2016(1)9—15周双休日
模拟交通灯控制系统
1、设计任务与要求
1.1、设计任务
设计并制作一个城市交道口交通灯控制系统 1.2、设计要求
1.2.1、课题设计需要实现的系统功能:
1.AB方向亮绿灯60s,然后黄灯闪烁3次,每次一秒(亮灭各40ms),红灯40s,同时CD方向红灯65s,绿灯35s,黄灯闪烁3s
2.各路灯用LED模拟显示,同时用七段数码管显示两路的倒计时时间 3.利用键盘可修改灯亮时间
4.PC机设置灯亮时间,利用PC与单片机串口通信实现
2、方案设计与论证
AB、CD两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为AB、CD两干道的公共停车时间。
表1 各车道亮灯时间对应表
表1说明:
(1)当AB道为绿灯,此道车辆通过,行人禁止通行。时间为60 秒;CD方向为红灯,此道车辆禁止通行,CD道行人可通过。
(2)当AB方向为黄灯闪烁3秒,警示车辆和行人红、绿灯的状态即将切换;CD方向为红灯,此道车辆禁止通行,CD道行人可通过。
(3)当AB方向为红灯,此道车辆禁止通行,AB道行人可通过;当CD方向为红灯,此道车辆禁止通行,CD道行人可通过。
(4)当AB方向为红灯,此道车辆禁止通行,AB道行人可通过;AB道为绿灯,此道车辆通过,行人禁止通行。时间为35秒。
(5)当AB方向为红灯,此道车辆禁止通行,AB道行人可通过;CD方向为黄灯闪烁3秒,警示车辆和行人红、绿灯的状态即将切换。此表可根据车流量动态设定红绿灯初始值。
综上,本系统采用MSC-51系列单片机AT89C51和74LS47来设计交通灯控制器,实现了能根据实际车流量通过AT89C51芯片的P1口设置红、绿灯熄亮时间的功能;红绿灯循环点亮,绿灯熄灭时黄灯闪烁3秒(交通灯信号通过P1口输出,显示时间直接通过P0、P2口输出至二个对应的双位数码管)。
3、单元电路设计与参数计算
3.1、硬件部分
选用设备:AT89C51单片机一片,74LS47芯片二片,共阴极的七段数码管7SEG-MPX2-CA两个,红、黄、绿交通灯各四个,开关键盘、连线、电阻、电容若干。 3.1.1、AT89C51芯片简介
AT89C51单片机内部结构
AT89C51单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。
MCS-51的引脚说明:
MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。
图1单片机的复位及初始化如图2:
图1 图
2
3.1.2、74LS47芯片简介
74LS47的端子功能图如下图3:
图3
74LS47的主要功能端如下:
BI为熄灭输入端,低电平有效,当BI=0时,无论其他输入端状态如何,译码器输出七段同时熄灭;BI=1时,不影响译码器正常译码。
LT为测试输入端,低电平有效,用于检查数码管的七段是否正常发光。当LT=0,同时BI=1时,不管输入的BCD码是什么状态,都可使驱动数码管的七段同时点亮。译码器要正常译码,必须LT输入无效电平。
RBI为灭零输入端,低电平有效。设置灭零输入端的目的是为了能将不希望显示的0熄灭,例如一个四位数码显示电路,整数部分两位,小数部分两位,在显示6.4时,将出现06.40的字样,如果将前、后多余的0熄灭,显示的结果更醒目一些。灭零输入端只能对显示的0进行熄灭,而对其他数字没有影响。 在原理图中,译码器与数码管的连接如图4:
图4
3.2、线路图及工作原理 3.2.1.、系统总框图如下:
3.2.2、交通灯硬件线路图:
3.2.3、系统工作原理
(1)开关键盘a、改变数码管显示的时间;b、开关控制十字路口十个方向的灯同时显示红灯且数码管显示00。
(2) 由AT89C51单片机每秒钟通过P0、P2口向74LS47的数据口送信息,由P1口显示红、绿、黄灯的燃亮情况;由7SEG-MPX2-CA显示每个灯的燃亮时间。
(3)AT89C51 P3.3为低电平时,P1口对应的红灯即四个方向的红灯亮,数码显示为00. AT89C51 P3.2有下降沿触发时,时间暂停,进入时间显示状态,当P3.6为低电平时,时间显示以240ms的速度进行加1;当P3.7为低电平时,时间显示以240ms的速度进行减1;当P1.0为低电平时,时间暂停消除,恢复正常。
(5)初始状态AB方向绿灯60秒CD方向红灯65秒。
(6)当AB方向绿灯60秒倒计时完了。进入下一阶段,AB方向黄灯3秒,且黄灯以40ms的速度闪烁;CD方向红灯5秒。
(7)当AB方向黄灯3秒倒计时完。进入第三阶段,AB方向红灯40秒;CD方向红灯2秒。 (8)当CD方向红灯2秒倒计时完。进入第四阶段,AB方向红灯38秒;CD方向绿灯35秒。 (9)当CD方向绿灯35秒倒计时完。进入第五阶段,AB方向红灯3秒;CD方向黄灯3秒,且黄灯以40ms的速度闪烁。
(10)AB方向红灯和CD方向黄灯3秒同时倒计时完毕,重新循环。
3.3、软件程序
ORG 0000H ;伪指令、程序开始、中断入口地址 LJMP MAIN ORG 0003H LJMP ZHD1 ORG 000BH LJMP ZHD2 ORG 0013H
LJMP ZHD3 ORG 1000H ;主程序
MAIN:MOV TMOD,#01H ;设工作方式
MOV TL0,#0F0H ;设初值 ,单片机晶振12M,定时10ms MOV TH0,#0D8H
SETB EA ;开放总中断 SETB ET0 ;开放T0中断
SETB TR0 ;启动T0定时
SETB EX0 ;开放外中断0 SETB EX1 ;开放外中断1
SETB IT0 ;设外中断0为边沿触发 CLR IT1 ;设外中断1为低电平有效 SETB PT0
CYCLE:MOV R0,#60 ;AB方向绿灯显示时间 MOV R1,#65 ;CD方向红灯显示时间 MOV R2,#25 ;为延时1秒而用 ;CD红灯 AB绿灯 LOOP1:SETB P3.4
MOV P1,#01H
SETB P1.7 ;点亮红灯 SETB P1.4 ;点亮绿灯
LCALL DISPLAY ;调用显示程序 DJNZ R2,LOOP1 MOV R2,#25 DEC R1
DJNZ R0,LOOP1
MOV R0,#3 ;AB方向黄灯显示时间 ;CD红灯 AB黄灯 LOOP2:MOV P1,#01H SETB P1.7 ;点亮红灯 SETB P1.3 ;点亮黄灯
LLJ: LCALL DISPLAY ;调用显示程序 CPL P1.3 DJNZ R2,LLJ DEC R1 MOV R2,#25 DJNZ R0,LOOP2 MOV R0,#40 ;AB ;CD红灯 AB红灯 LOOP3:MOV P1,#01H SETB P1.7 ; SETB P1.2 ; LCALL DISPLAY ; DJNZ R2,LOOP3
MOV R2,#25 DEC R0 DJNZ R1,LOOP3 MOV R1,#35 ;CD ;CD绿灯 AB红灯 LOOP4:MOV P1,#01H SETB P1.5 ; SETB P1.2 ; LCALL DISPLAY ; DJNZ R2,LOOP4 MOV R2,#25 DEC R0 DJNZ R1,LOOP4 MOV R1,#3 ;CD ;CD黄灯 AB红灯 LOOP5:MOV P1,#01H SETB P1.6 ; SETB P1.2 ;
LLJ1: LCALL DISPLAY ; CPL P1.6 DJNZ R2,LLJ1 MOV R2,#25 DEC R0 DJNZ R1,LOOP5 LJMP CYCLE ;键盘中断程序
方向红灯显示时间 点亮红灯 点亮红灯 调用显示程序 方向绿灯显示时间 点亮绿灯 点亮红灯 调用显示程序 方向黄灯显示时间点亮黄灯 点亮红灯 调用显示程序
ZHD1: LCALL DISPLAY JB P3.6,Q2 INC R1 INC R0
CJNE R1,#99,TIAO2 MOV R1,#00H
TIAO2:CJNE R0,#99,TIAO3 MOV R0,#00H
TIAO3:LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY JNB P1.0,Z2 Q2: JB P3.7,WAIT1 DEC R1 DEC R0
CJNE R1,#00H,TIAO MOV R1,#99
TIAO: CJNE R0,#00H,TIAO1 MOV R0,#99
TIAO1:LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY WAIT1:JNB P1.0,Z2 WAIT: LJMP ZHD1 Z2: RETI ;时间中断程序
ZHD2: MOV TL0,#0F0H ;重先赋值 MOV TH0,#0D8H CLR P3.4 RETI
;应急通道中断程序 ZHD3:MOV P1,#85H MOV P0,#30H MOV P2,#30H JNB P3.3,ZHD3 RETI ;数显显示
DISPLAY:MOV A,R0 ;AB方向时间的显示 MOV B,#10
DIV AB ;把要显示的数的十位存放在A中,个位存放在B中 ADD A,#10H ;位选通十位 MOV P0,A ;显示十位数字 TI0: JNB P3.4,TT SJMP TI0 TT: SETB P3.4 MOV A,B
ADD A,#20H ;位选通个位 MOV P0,A ;显示个位数字 TI1: JNB P3.4,TT1 SJMP TI1 TT1: SETB P3.4 ;CD方向的显示
MOV A,R1 ;CD方向时间的显示 MOV B,#10 DIV AB
ADD A,#10H ;位选通十位 MOV P2,A ;显示十位数字 TI2: JNB P3.4,TT2 SJMP TI2 TT2: SETB P3.4 MOV A,B
ADD A,#20H ;位选通个位 MOV P2,A ;显示个位数字 TI3: JNB P3.4,TT3 SJMP TI3 TT3: SETB P3.4 RET END
4、总原理图及元器件清单
4.1、总原理图
4.2、元件清单
5、结论与心得
电子职业技能训练已接近尾声,此次技能训练我们的任务是交通灯,刚开始的时候,几乎没有一点头绪,不知从何下手,可是真正完成了之后,觉得其实也并不是特别困难,只要找到线头,顺着它一步步往下走,就可以顺利到达终点。通过这一学期对单片机的学习,已经对单片机有了基本的了解,但那要说真正理解,我觉得差的还不是一点点,毫无疑问,这次的技能训练就给了我们一个深入学习单片机,提高动手能力与团结合作的大好机会。
这次技能训练中,我负责的主要是硬件,包括各种元件的检查,电路的焊接。提到焊接就感到惭愧,由于以前在这方面经验比较少,加之为了元件排版美观,导致电路板背面得导线焊得一塌糊涂,正如老师所说,一碗面条。以后在焊接方面还是有待提高,多动手。虽然没有负责软件,但比起以前,还是对程序以及此次用到的几个软件有了一点了解。总之,这次技能训练还是让我收获挺多的不管是软件,硬件还是团结协作方面。当然,任何事情都不是一次就能成功的,必须经过多次的尝试并改善才能得到最好的。在这次设计中,我们也不可避免的遇到了同样的问题,在完成程序并通过软件仿真之后,经过多次的尝试,我们还是遇到了问题,两个数码管中始终不亮,刚开始以为是电流过小,不能驱动这么多数码管,老师建议我们加个74LS247,可是加上之后还是那样,最后通过检查,才发现原来是电阻的问题,在进行修改之后,终于实现了自己想要的。虽然我们的作品很简单,扩展功能也不多,也许在所有同学的作品里面并不是很惊艳,但不管如何,这是我们通过自己的努力做出来的,我们也收获了自己想要的,不管最终的成绩如何,我们知道自己努力过了就好了。总之,通过这次技能训练,我学到了很多东西,对单片机及其应用有了更深的了解,不过还是要不断努力。虽然最后在检查的时候老师提出了一点问题,感觉不是很完美,但是还是很高兴。
6、参考文献
[1] 欧伟民. 基于单片机的交通信号控制系统[J].湖南大学学报(自然科学版),
2002.(S2).
[2] 沈鸿星. LED交通信号灯系统的硬件设计[J].电子工程师 ,2004,(03) .
[3] 罗亚非. 凌阳16 位单片机应用基础[M]. 北京:北京航空航天大学出版社,2003 [4] 方志烈.第三代L ED 交通信号灯[A] . 第七届全国L ED 产业研讨与学术会议论文集 [c].中国光学光电子行业协会光电器件专业分会,2000.30232.
[5] 查振亚,叶向阳. 智能交通灯控制系统[J]. 华中理工大学学报, 1997, 25(2): 63~65 [6] 谭浩强. C 程序设计[M]. 清华大学出版社,1999 年12 月第2 版
[7] 白炳良. 单片机自动控制交通信号灯[J].漳州师范学院学报(自然科学版) ,1997,(02) . [8] 何立民.单片机应用技术大全[M].北京:北京航空航天大学出版社,1994. [9] 李广弟.单片机基础[M].北京:北京航空航天大学出版社,1992. [10] 张云龙. 交通信号控制器的设计[J].兵工自动化 ,2003,(04) .
[11] 李朝青.单片机原理及接口技术(修订版)[M].北京:北京航空航天大学出版社,1998.
[12] 阎 石. 数字电子技术基础(第四版)[M].高等教育出版社,2000年5月第一版. [13] 胡汉才. 单片机原理及其接口技术[M].清华大学出版社,2000年5月第一版. [14] 何立民. 单片机高级教程[M].北京航空航天大学出版社,2000年5月第一版.
[15] 陈汝全. 电子技术常用器件应用手册[M].第二版,机械工业出版社,2002年5月第一 版.
电子职业技能训练报告
训练内容:模拟交通灯控制系统(硬件部分)
专业班级:电子信息工程1202 学生姓名: 同组学生: 指导教师:
训练时间:2015—2016(1)9—15周双休日
模拟交通灯控制系统
1、设计任务与要求
1.1、设计任务
设计并制作一个城市交道口交通灯控制系统 1.2、设计要求
1.2.1、课题设计需要实现的系统功能:
1.AB方向亮绿灯60s,然后黄灯闪烁3次,每次一秒(亮灭各40ms),红灯40s,同时CD方向红灯65s,绿灯35s,黄灯闪烁3s
2.各路灯用LED模拟显示,同时用七段数码管显示两路的倒计时时间 3.利用键盘可修改灯亮时间
4.PC机设置灯亮时间,利用PC与单片机串口通信实现
2、方案设计与论证
AB、CD两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为AB、CD两干道的公共停车时间。
表1 各车道亮灯时间对应表
表1说明:
(1)当AB道为绿灯,此道车辆通过,行人禁止通行。时间为60 秒;CD方向为红灯,此道车辆禁止通行,CD道行人可通过。
(2)当AB方向为黄灯闪烁3秒,警示车辆和行人红、绿灯的状态即将切换;CD方向为红灯,此道车辆禁止通行,CD道行人可通过。
(3)当AB方向为红灯,此道车辆禁止通行,AB道行人可通过;当CD方向为红灯,此道车辆禁止通行,CD道行人可通过。
(4)当AB方向为红灯,此道车辆禁止通行,AB道行人可通过;AB道为绿灯,此道车辆通过,行人禁止通行。时间为35秒。
(5)当AB方向为红灯,此道车辆禁止通行,AB道行人可通过;CD方向为黄灯闪烁3秒,警示车辆和行人红、绿灯的状态即将切换。此表可根据车流量动态设定红绿灯初始值。
综上,本系统采用MSC-51系列单片机AT89C51和74LS47来设计交通灯控制器,实现了能根据实际车流量通过AT89C51芯片的P1口设置红、绿灯熄亮时间的功能;红绿灯循环点亮,绿灯熄灭时黄灯闪烁3秒(交通灯信号通过P1口输出,显示时间直接通过P0、P2口输出至二个对应的双位数码管)。
3、单元电路设计与参数计算
3.1、硬件部分
选用设备:AT89C51单片机一片,74LS47芯片二片,共阴极的七段数码管7SEG-MPX2-CA两个,红、黄、绿交通灯各四个,开关键盘、连线、电阻、电容若干。 3.1.1、AT89C51芯片简介
AT89C51单片机内部结构
AT89C51单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。
MCS-51的引脚说明:
MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。
图1单片机的复位及初始化如图2:
图1 图
2
3.1.2、74LS47芯片简介
74LS47的端子功能图如下图3:
图3
74LS47的主要功能端如下:
BI为熄灭输入端,低电平有效,当BI=0时,无论其他输入端状态如何,译码器输出七段同时熄灭;BI=1时,不影响译码器正常译码。
LT为测试输入端,低电平有效,用于检查数码管的七段是否正常发光。当LT=0,同时BI=1时,不管输入的BCD码是什么状态,都可使驱动数码管的七段同时点亮。译码器要正常译码,必须LT输入无效电平。
RBI为灭零输入端,低电平有效。设置灭零输入端的目的是为了能将不希望显示的0熄灭,例如一个四位数码显示电路,整数部分两位,小数部分两位,在显示6.4时,将出现06.40的字样,如果将前、后多余的0熄灭,显示的结果更醒目一些。灭零输入端只能对显示的0进行熄灭,而对其他数字没有影响。 在原理图中,译码器与数码管的连接如图4:
图4
3.2、线路图及工作原理 3.2.1.、系统总框图如下:
3.2.2、交通灯硬件线路图:
3.2.3、系统工作原理
(1)开关键盘a、改变数码管显示的时间;b、开关控制十字路口十个方向的灯同时显示红灯且数码管显示00。
(2) 由AT89C51单片机每秒钟通过P0、P2口向74LS47的数据口送信息,由P1口显示红、绿、黄灯的燃亮情况;由7SEG-MPX2-CA显示每个灯的燃亮时间。
(3)AT89C51 P3.3为低电平时,P1口对应的红灯即四个方向的红灯亮,数码显示为00. AT89C51 P3.2有下降沿触发时,时间暂停,进入时间显示状态,当P3.6为低电平时,时间显示以240ms的速度进行加1;当P3.7为低电平时,时间显示以240ms的速度进行减1;当P1.0为低电平时,时间暂停消除,恢复正常。
(5)初始状态AB方向绿灯60秒CD方向红灯65秒。
(6)当AB方向绿灯60秒倒计时完了。进入下一阶段,AB方向黄灯3秒,且黄灯以40ms的速度闪烁;CD方向红灯5秒。
(7)当AB方向黄灯3秒倒计时完。进入第三阶段,AB方向红灯40秒;CD方向红灯2秒。 (8)当CD方向红灯2秒倒计时完。进入第四阶段,AB方向红灯38秒;CD方向绿灯35秒。 (9)当CD方向绿灯35秒倒计时完。进入第五阶段,AB方向红灯3秒;CD方向黄灯3秒,且黄灯以40ms的速度闪烁。
(10)AB方向红灯和CD方向黄灯3秒同时倒计时完毕,重新循环。
3.3、软件程序
ORG 0000H ;伪指令、程序开始、中断入口地址 LJMP MAIN ORG 0003H LJMP ZHD1 ORG 000BH LJMP ZHD2 ORG 0013H
LJMP ZHD3 ORG 1000H ;主程序
MAIN:MOV TMOD,#01H ;设工作方式
MOV TL0,#0F0H ;设初值 ,单片机晶振12M,定时10ms MOV TH0,#0D8H
SETB EA ;开放总中断 SETB ET0 ;开放T0中断
SETB TR0 ;启动T0定时
SETB EX0 ;开放外中断0 SETB EX1 ;开放外中断1
SETB IT0 ;设外中断0为边沿触发 CLR IT1 ;设外中断1为低电平有效 SETB PT0
CYCLE:MOV R0,#60 ;AB方向绿灯显示时间 MOV R1,#65 ;CD方向红灯显示时间 MOV R2,#25 ;为延时1秒而用 ;CD红灯 AB绿灯 LOOP1:SETB P3.4
MOV P1,#01H
SETB P1.7 ;点亮红灯 SETB P1.4 ;点亮绿灯
LCALL DISPLAY ;调用显示程序 DJNZ R2,LOOP1 MOV R2,#25 DEC R1
DJNZ R0,LOOP1
MOV R0,#3 ;AB方向黄灯显示时间 ;CD红灯 AB黄灯 LOOP2:MOV P1,#01H SETB P1.7 ;点亮红灯 SETB P1.3 ;点亮黄灯
LLJ: LCALL DISPLAY ;调用显示程序 CPL P1.3 DJNZ R2,LLJ DEC R1 MOV R2,#25 DJNZ R0,LOOP2 MOV R0,#40 ;AB ;CD红灯 AB红灯 LOOP3:MOV P1,#01H SETB P1.7 ; SETB P1.2 ; LCALL DISPLAY ; DJNZ R2,LOOP3
MOV R2,#25 DEC R0 DJNZ R1,LOOP3 MOV R1,#35 ;CD ;CD绿灯 AB红灯 LOOP4:MOV P1,#01H SETB P1.5 ; SETB P1.2 ; LCALL DISPLAY ; DJNZ R2,LOOP4 MOV R2,#25 DEC R0 DJNZ R1,LOOP4 MOV R1,#3 ;CD ;CD黄灯 AB红灯 LOOP5:MOV P1,#01H SETB P1.6 ; SETB P1.2 ;
LLJ1: LCALL DISPLAY ; CPL P1.6 DJNZ R2,LLJ1 MOV R2,#25 DEC R0 DJNZ R1,LOOP5 LJMP CYCLE ;键盘中断程序
方向红灯显示时间 点亮红灯 点亮红灯 调用显示程序 方向绿灯显示时间 点亮绿灯 点亮红灯 调用显示程序 方向黄灯显示时间点亮黄灯 点亮红灯 调用显示程序
ZHD1: LCALL DISPLAY JB P3.6,Q2 INC R1 INC R0
CJNE R1,#99,TIAO2 MOV R1,#00H
TIAO2:CJNE R0,#99,TIAO3 MOV R0,#00H
TIAO3:LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY JNB P1.0,Z2 Q2: JB P3.7,WAIT1 DEC R1 DEC R0
CJNE R1,#00H,TIAO MOV R1,#99
TIAO: CJNE R0,#00H,TIAO1 MOV R0,#99
TIAO1:LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY LCALL DISPLAY WAIT1:JNB P1.0,Z2 WAIT: LJMP ZHD1 Z2: RETI ;时间中断程序
ZHD2: MOV TL0,#0F0H ;重先赋值 MOV TH0,#0D8H CLR P3.4 RETI
;应急通道中断程序 ZHD3:MOV P1,#85H MOV P0,#30H MOV P2,#30H JNB P3.3,ZHD3 RETI ;数显显示
DISPLAY:MOV A,R0 ;AB方向时间的显示 MOV B,#10
DIV AB ;把要显示的数的十位存放在A中,个位存放在B中 ADD A,#10H ;位选通十位 MOV P0,A ;显示十位数字 TI0: JNB P3.4,TT SJMP TI0 TT: SETB P3.4 MOV A,B
ADD A,#20H ;位选通个位 MOV P0,A ;显示个位数字 TI1: JNB P3.4,TT1 SJMP TI1 TT1: SETB P3.4 ;CD方向的显示
MOV A,R1 ;CD方向时间的显示 MOV B,#10 DIV AB
ADD A,#10H ;位选通十位 MOV P2,A ;显示十位数字 TI2: JNB P3.4,TT2 SJMP TI2 TT2: SETB P3.4 MOV A,B
ADD A,#20H ;位选通个位 MOV P2,A ;显示个位数字 TI3: JNB P3.4,TT3 SJMP TI3 TT3: SETB P3.4 RET END
4、总原理图及元器件清单
4.1、总原理图
4.2、元件清单
5、结论与心得
电子职业技能训练已接近尾声,此次技能训练我们的任务是交通灯,刚开始的时候,几乎没有一点头绪,不知从何下手,可是真正完成了之后,觉得其实也并不是特别困难,只要找到线头,顺着它一步步往下走,就可以顺利到达终点。通过这一学期对单片机的学习,已经对单片机有了基本的了解,但那要说真正理解,我觉得差的还不是一点点,毫无疑问,这次的技能训练就给了我们一个深入学习单片机,提高动手能力与团结合作的大好机会。
这次技能训练中,我负责的主要是硬件,包括各种元件的检查,电路的焊接。提到焊接就感到惭愧,由于以前在这方面经验比较少,加之为了元件排版美观,导致电路板背面得导线焊得一塌糊涂,正如老师所说,一碗面条。以后在焊接方面还是有待提高,多动手。虽然没有负责软件,但比起以前,还是对程序以及此次用到的几个软件有了一点了解。总之,这次技能训练还是让我收获挺多的不管是软件,硬件还是团结协作方面。当然,任何事情都不是一次就能成功的,必须经过多次的尝试并改善才能得到最好的。在这次设计中,我们也不可避免的遇到了同样的问题,在完成程序并通过软件仿真之后,经过多次的尝试,我们还是遇到了问题,两个数码管中始终不亮,刚开始以为是电流过小,不能驱动这么多数码管,老师建议我们加个74LS247,可是加上之后还是那样,最后通过检查,才发现原来是电阻的问题,在进行修改之后,终于实现了自己想要的。虽然我们的作品很简单,扩展功能也不多,也许在所有同学的作品里面并不是很惊艳,但不管如何,这是我们通过自己的努力做出来的,我们也收获了自己想要的,不管最终的成绩如何,我们知道自己努力过了就好了。总之,通过这次技能训练,我学到了很多东西,对单片机及其应用有了更深的了解,不过还是要不断努力。虽然最后在检查的时候老师提出了一点问题,感觉不是很完美,但是还是很高兴。
6、参考文献
[1] 欧伟民. 基于单片机的交通信号控制系统[J].湖南大学学报(自然科学版),
2002.(S2).
[2] 沈鸿星. LED交通信号灯系统的硬件设计[J].电子工程师 ,2004,(03) .
[3] 罗亚非. 凌阳16 位单片机应用基础[M]. 北京:北京航空航天大学出版社,2003 [4] 方志烈.第三代L ED 交通信号灯[A] . 第七届全国L ED 产业研讨与学术会议论文集 [c].中国光学光电子行业协会光电器件专业分会,2000.30232.
[5] 查振亚,叶向阳. 智能交通灯控制系统[J]. 华中理工大学学报, 1997, 25(2): 63~65 [6] 谭浩强. C 程序设计[M]. 清华大学出版社,1999 年12 月第2 版
[7] 白炳良. 单片机自动控制交通信号灯[J].漳州师范学院学报(自然科学版) ,1997,(02) . [8] 何立民.单片机应用技术大全[M].北京:北京航空航天大学出版社,1994. [9] 李广弟.单片机基础[M].北京:北京航空航天大学出版社,1992. [10] 张云龙. 交通信号控制器的设计[J].兵工自动化 ,2003,(04) .
[11] 李朝青.单片机原理及接口技术(修订版)[M].北京:北京航空航天大学出版社,1998.
[12] 阎 石. 数字电子技术基础(第四版)[M].高等教育出版社,2000年5月第一版. [13] 胡汉才. 单片机原理及其接口技术[M].清华大学出版社,2000年5月第一版. [14] 何立民. 单片机高级教程[M].北京航空航天大学出版社,2000年5月第一版.
[15] 陈汝全. 电子技术常用器件应用手册[M].第二版,机械工业出版社,2002年5月第一 版.