微电子实习报告
院校:华东交通大学机电工程学院 课题:基于单片机的交通信号灯控制系统 班级: 姓名: 同组成员: 指导教师:
1
基于单片机的交通信号灯控制系统
目录
1 《微电子实习》任务书 ....................................................................................... 5
1.1 实习性质及目的 .......................................................................................... 5 1.2 实习主要内容 .............................................................................................. 5 1.3 设计题目 ...................................................................................................... 5 1.4 实习进度或计划 .......................................................................................... 5 1.5 设计说明书包括的主要内容 ...................................................................... 6 1.6 考核方法 ...................................................................................................... 6 2 常用元器件的介绍 ............................................................................................... 6
2.1 电阻 .............................................................................................................. 6
2.1.1 定义 ..................................................................................................... 6 2.1.2 单位 ..................................................................................................... 6 2.1.3 电阻器上阻值的标示方法 ................................................................. 6 2.1.4 电阻器好坏的检测 ............................................................................. 7 2.2 二极管 .......................................................................................................... 7
2.2.1 正向性 ................................................................................................. 8 2.2.2 反向性 ................................................................................................. 8 2.2.3 二极管的识别 ..................................................................................... 8 2.3 电容 .............................................................................................................. 8
2.3.1 定义 ..................................................................................................... 8 2.3.2 单位换算 ............................................................................................. 8 2.3.3 电容器的型号命名方法 ..................................................................... 8
2
华东交通大学课程设计
3 KEIL C51,PROTEUS软件的介绍 .................................................................... 9
3.1 KEIL C .......................................................................................................... 9 3.2 PROTEUS ..................................................................................................... 9
3.2.1 进入Proteus ISIS .............................................................................. 10 3.2.2 工作界面 ........................................................................................... 10 3.2.3 菜单命令简述 ................................................................................... 10
4 电烙铁焊接工艺 ................................................................................................. 11
4.1 对焊接点的基本要求 ................................................................................ 11 4.2 手工焊接的基本操作方法 ........................................................................ 11 4.3 印制电路板的焊接工艺 ............................................................................ 11
4.3.1 焊前准备 ........................................................................................... 11 4.3.2 焊接顺序 ........................................................................................... 11 4.3.3 对元器件焊接要求 ........................................................................... 11 4.4 拆焊 ............................................................................................................ 12 5 电子元器件的引线成型和插装 ......................................................................... 12
5.1 电子元器件的引线成型要求 ................................................................... 12 5.2 电子元气件的插装方法 ............................................................................ 12 6 系统总体方案及硬件设计 ................................................................................. 13
6.1 方案的选择 ................................................................................................ 13 6.2 硬件电路及主要元件介绍 ........................................................................ 13
6.2.1 硬件电路 ........................................................................................... 13
3
基于单片机的交通信号灯控制系统
6.2.2 主要元器件的介绍 ........................................................................... 14 6.3 总电路的设计及说明 ................................................................................ 17
6.3.1 总电路的工作原理 ........................................................................... 17 6.3.2 各端口的控制作用 ........................................................................... 18 6.3.3 时钟电路和复位电路 ....................................................................... 18
7 软件设计 ............................................................................................................. 19
7.1 交通灯状态的分析 .................................................................................... 19 7.2 主程序流程图 ............................................................................................ 19 7.3 中断程序流程图 ........................................................................................ 20 8 调研报告 ............................................................................................................. 20 9 微电子实习心得体会 ......................................................................................... 21 参考文献 ................................................................................................................. 21 附录一:源程序代码 ............................................................................................. 22 附录二:实物图 ..................................................................................................... 28 附录三:系统原理图 ............................................................................................. 30
4
华东交通大学课程设计
1 《微电子实习》任务书 1.1 实习性质及目的
通过微电子实习教学,使学生对电工和电子的一些相关知识有感性认识,加深电类有关课程的理论知识。并在生产实践中,激发学生动手、动脑、勇于创新的积极性,培养学生严谨、认真、踏实、勤奋的学习精神和工作作风,为后续专业课程的学习打下坚实的基础。
1.2 实习主要内容
1)熟悉一些电工电子常用元器件及其基本性能; 2)掌握相关仪器/工具的使用方法;
3)掌握单片机开发系统(ISP、KEIL C)的使用;
4)掌握电子元件的焊接、电气元件的安装、连线等基本技能,建立电气原 理图和电子线路图的基本概念,熟悉PROTEL软件的基本使用; 5)参观故障诊断实验室、调研长运电子市场、请教学长、查阅测控论坛及 相关网站,了解电子类、测控类相关知识,并写一份调研报告; 6)针对某一常见的测控问题,设计具体电路,要求实验室调试。
1.3 设计题目
基于单片机的交通信号灯控制系统
在经济飞速发展的今天,城乡交通自动指挥越来越显得重要,为了确保安全,保证正常的交通秩序,应对十字路口的红黄绿灯进行自动控制,以便于车辆行人能顺利通过十字路口。
设计要求及技术指标:设计一个十字路口交通灯定时自动控制电路。设a——南北方向绿灯接通;b——东西方向绿灯接通;c——南北方向红灯接通;d——东西方向红灯接通;e——南北方向黄灯接通;f——东 西方向黄灯接通。以上设定的六种状态,按交通规则两个方向的信号灯还必须交叉并行工作。设:A——a和d交叉并行;B——e和d交叉并行;C——b和c交叉并行;D——f和c交叉并行。工作顺序为 A-B-C-D-A ,要求各状态的工作 时间如:绿灯(25S)黄灯(5S)红灯(30S)绿灯。要求设计电路并安装调试。
1.4 实习进度或计划
1)布置任务 0.5天 2)参观故障诊断实验室、调研长运电子市场等,写参观笔记/报告 2天 3)熟悉常用元器件 1.5天 4)掌握相关仪器/工具的使用 1.5天 5)掌握单片机开发系统使用 2天 6)掌握焊接技术 1.5天
5
基于单片机的交通信号灯控制系统
7)具体电路设计及实验室调试 5天 8)整理报告与答辩 1天
1.5 设计说明书包括的主要内容
1)目录 2)设计任务书 3)设计题目
4)正文按上述实习主要内容撰写(参观笔记/报告须提供手写速记材料) 5)心得体会 6)主要参考文献
1.6 考核方法
考核根据学生平时学习态度(含出勤率)、报告(包括参观笔记、面包板实 物、焊接实物)和答辩(报告答辩、现场调试等)成绩确定。
2 常用元器件的介绍 2.1 电阻 2.1.1 定义
在电路中对电流有阻碍作用并且造成能量消耗的部分叫电阻。通常用文字符号“R”表示。
2.1.2 单位
电阻的单位为欧姆,简称欧,符号是Ω,1Ω=1V/A。比较大的单位有千欧(kΩ)、兆欧(MΩ)。1兆欧=103千欧=106欧。
2.1.3 电阻器上阻值的标示方法
直标法和色环法。
直标法,即将电阻阻值直接印刷在电阻器上。
例如,在5.1Ω的电阻器上印有“5.1”或“5R1”字样。
色环法,即在电阻器上印刷4道或5道色环来表
示阻值,阻值的单位为Ω。 图1 电阻器
对于4环电阻器,第一、二环表示两位有效数字,第三环表示倍乘数,第四环表示允许偏差。对于5环电阻器,第一、二、三环表示两位有效数字,第三环表示倍乘数, 第四环表示允许偏差。色环颜色所代表的数字或者意义见表1。
6
华东交通大学课程设计
表1 两位有效数字阻值的色环表示法 颜 色 黑 棕 红 橙 黄 绿 蓝 紫 灰 白 金 银 有 效 数 字 0 1 2 3 4 5 6 7 8 9 倍 乘 数 100 101 允 许 偏 差 ±1% ±2% ±0.5% ±0.25% ±0.1% ―20% ~ +50% 5% 10% 102 103 104 105 106 107 108 109 101 102 2.1.4 电阻器好坏的检测
(1)用指针万用表判定电阻的好坏
首先选择测量档位,再将倍率档旋钮置于适当的档位, 100欧姆以下电阻器可选RX1档,100欧姆-1K欧姆的电阻器可选RX10档,1K欧姆-10K欧姆电阻器可选RX100档,10K-100K欧姆的电阻器可选RX1K档,100K欧姆以上的电阻器可选RX10K档。测量档位选择确定后,对万用表电阻档为进行校0,校0的方法是将万用表两表笔金属棒短接,观察指针有无到0的位置,如果不在0位置,调整调零旋钮表针指向电阻刻度的0位置。接着将万用表的两表笔分别和电阻器的两端相接,表针应指在相应的阻值刻度上,如果表针不动和指示不稳定或指示值与电阻器上的标示值相差很大,则说明该电阻器已损坏。
(2)用数字万用表判定电阻的好坏
首先将万用表的档位旋钮调到欧姆档的适当档位,一般200欧姆以下电阻器可选200档,200-2K欧姆电阻器可选2K档,2K-20K欧姆可选20K档,20K-200K欧姆的电阻器可选200K档,200K-200M欧姆的电阻器选择2M欧姆档。2M-20M欧姆的电阻器选择20M档,20M欧姆以上的电阻器选择200M档,
2.2 二极管
二极管又称晶体二极管,简称二极管(diode),另外,还有早期的真空电子二极管;它是一种具有单向传导电流的电子器件。在半导体二极管内部有一个PN结两个引线端子,这种电子器件按照外加电压的方向,具备单向电流的转导性。一般来讲,晶体二极管是一个由p型半导体和n型半导体烧结形成的p-n结界面。在其界面的两侧形成空
7
基于单片机的交通信号灯控制系统
间电荷层,构成自建电场。当外加电压等于零时,由于p-n 结两边载流子的浓度差引起扩散电流和由自建电场引起的漂移电流相等而处于电平衡状态,这也是常态下的二极管特性。
2.2.1 正向性
外加正向电压时,在正向特性的起始部分,正向电压很小,不足以克服PN结内电场的阻挡作用,正向电流几乎为零,这一段称为死区。这个不能使二极管导通的正向电压称为死区电压。当正向电压大于死区电压以后,PN结内电场被克服,二极管导通,电流随电压增大而迅速上升。在正常使用的电流范围内,导通时二极管的端电压几乎维持不变,这个电压称为二极管的正向电压。
2.2.2 反向性
外加反向电压不超过一定范围时,通过二极管的电流是少数载流子漂移运动所形成反向电流,由于反向电流很小,二极管处于截止状态。这个反向电流又称为反向饱和电流或漏电流,二极管的反向饱和电流受温度影响很大。
2.2.3 二极管的识别
小功率二极管的N极(负极),在二极管外表大多采用一种色圈标出来,有些二极管也用二极管专用符号来表示P极(正极)或N极(负极),也有采用符号标志为“P”、“N”来确定二极管极性的。发光二极管的正负极可从引脚长短来识别,长脚为正,短脚为负。用数字式万用表去测二极管时,红表笔接二极管的正极,黑表笔接二极管的负极,此时测得的阻值才是二极管的正向导通阻值,这与指针式万用表的表笔接法刚好相反。
2.3 电容 2.3.1 定义
电容(或称电容量)是表征电容器容纳电荷本领的物理量。电容的符号是C。
2.3.2 单位换算
在国际单位制里,电容的单位是法拉,简称法,符号是F,常用的电容单位有毫法(mF)、微法(μF)、纳法(nF)和皮法(pF)(皮法又称微微法)等,换算关系是:
1法拉(F)= 1000毫法(mF)=1000000微法(μF) 1微法(μF)= 1000纳法(nF)= 1000000皮法(pF)。
2.3.3 电容器的型号命名方法
国产电容器的型号一般由四部分组成(不适用于压敏、可变、真空电容器)。依次分别代表名称、材料、分类和序号。
第一部分:名称,用字母表示,电容器用C。 第二部分:材料,用字母表示。
第三部分:分类,一般用数字表示,个别用字母表示。 第四部分:序号,用数字表示。
8
华东交通大学课程设计
用字母表示产品的材料:A-钽电解、B-聚苯乙烯等非极性薄膜、C-高频陶瓷、D-铝电解、E-其它材料电解、G-合金电解、H-复合介质、I-玻璃釉、J-金属化纸、L-涤纶等极性有机薄膜、N-铌电解、O-玻璃膜、Q-漆膜、T-低频陶瓷、V-云母纸、Y-云母、Z-纸介。
3 KEIL C51,PROTEUS软件的介绍 3.1 KEIL C
KEIL C51集成开发环境主要由菜单栏、工具栏、源文件编辑窗口、工程窗口和输出窗口五部分组成。工具栏为一组快捷工具图标,主要包括基本文件工具栏、建造工具栏和调试工具栏,基本文件工具栏包括新建、打开、拷贝、粘贴等基本操作。建造工具栏主要包括文件编译、目标文件编译连接、所有目标文件编译连接、目标选项和一个目标选择窗口。调试工具栏位于最后,主要包括一些仿真调试源程序的基本操作,如单步、复位、全速运行等。在工具栏下面,默认有三个窗口。左边的工程窗口包含一个工程的目标(target)、组(group)和项目文件。右边为源文件编辑窗口,编辑窗口实质上就是一个文件编辑器,我们可以在这里对源文件进行编辑、修改、粘贴等。下边的为输出窗口,源文件编译之后的结果显示在输出窗口中,会出现通过或错误(包括错误类型及行号)的提示。如果通过则会生成“HEX”格式的目标文件,用于仿真或烧录芯片。MCS-51单片机软件KEIL C51开发过程为:
(1)建立一个工程项目,选择芯片,确定选项; (2)建立汇编源文件或C源文件; (3)用项目管理器生成各种应用文件; (4)检查并修改源文件中的错误;
(5)编译连接通过后进行软件模拟仿真或硬件在线仿真; (6)编程操作; (7)应用。
3.2 PROTEUS
Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:①实现了单片机仿真和SPICE电路仿结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。②支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。③提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统
9
基于单片机的交通信号灯控制系统
中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision4等软件。④具有强大的原理图绘制功能。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。
3.2.1 进入Proteus ISIS
双击桌面上的ISIS图标或者单击屏幕左下方的“开始”→“程序”→“Proteus 7 Professional” →“ISIS”进入Proteus ISIS集成环境。
3.2.2 工作界面
Proteus ISIS的工作界面是一种标准的Windows界面。包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。
3.2.3 菜单命令简述
(1)使用元件工具箱
Proteus ISIS主窗口左端的元件工具箱与工具条的作用相似,包含添加全部元器件的快捷图标按钮,与菜单中的元器件添加命令完全对应,用法与工具条一致。通过选取主窗口的菜单项View/Element Palette(查看/元件栏)可以隐藏/显示这个工具箱。
(2)使用状态信息条
Proteus ISIS主窗口下端的状态条显示当前电路图编辑状态以及键盘中几个键的当前状态,这些状态显示用于方便用户的操作。几个输出窗口下端也有状态条,显示当前鼠标位置对应的坐标值,并随鼠标的移动及时地更新,便于用户读图。通过选取主窗口的菜单项View/Status Bar(查看/状态信息栏)可以隐藏/显示这个状态条。
(3)使用对话框
Proteus ISIS中全部参数输入均采用对话框完成。各种对话框虽功能不同,但都具有共同的特点。所有对话框均包含有按钮、列表框、组合框、编辑框等几种控制,均含有OK(确定)和Cancel (取消)两个特殊按钮。点按OK (确定)可关闭对话框,并使参数输入生效;点按Cancel(取消)也可关闭对话框,但使参数输入全部失效。
(4)使用计算器工具
计算器窗口可以计算微带线特性和常规算术运算。 (5)使用仿真信息窗口
Proteus ISIS的仿真信息窗口显示正在进行的电路仿真的执行状态、出错信息以及执行结果,如电路的成品率等。用户可根据这些信息来查错、是否继续做优化、是否应强行终止仿真。通过选取主窗口的菜单项View/Simulation Message(查看/仿真信息)可以隐藏/显示这个窗口。
(6)关闭Proteus ISIS
在主窗口中选取菜单项File/Exit(文件/退出),屏幕出现提问框,问用户是否想关闭Proteus ISIS关闭Proteus ISIS,点按OK (确定) 键即可关闭Proteus ISIS。如果当
10
华东交通大学课程设计
前电路图修改后尚未存盘,在提问框出现前还会询问用户是否存盘。
4 电烙铁焊接工艺 4.1 对焊接点的基本要求
(1)焊点要有足够的机械强度,保证被焊件在受振动或冲击时不致脱落、松动。不能用过多焊料堆积,这样容易造成虚焊、焊点与焊点的短路。
(2)焊接可靠,具有良好导电性,必须防止虚焊。虚焊是指焊料与被焊件表面没有形成合金结构。只是简单地依附在被焊金属表面上。
(3)焊点表面要光滑、清洁 , 焊点表面应有良好光泽,不应有毛刺、空隙,无污垢,尤其是焊剂的有害残留物质,要选择合适的焊料与焊剂。
4.2 手工焊接的基本操作方法
(1)焊前准备
准备好电烙铁以及镊子、剪刀、斜口钳、尖嘴钳、焊料、焊剂等工具,将电烙铁及焊件搪锡,左手握焊料,右手握电烙铁,保持随时可焊状态。
(2)用烙铁加热备焊件 (3)送入焊料,熔化适量焊料。 (4)开焊料。
(5)当焊料流动覆盖焊接点,迅速移开电烙铁。
掌握好焊接的温度和时间。在焊接时,要有足够的热量和温度。如温度过低,焊锡流动性差,很容易凝固,形成虚焊;如温度过高,将使焊锡流淌,焊点不易存锡,焊剂分解速度加快,使金属表面加速氧化,并导致印制电路板上的焊盘脱落。尤其在使用天然松香作助焊剂时,锡焊温度过高,很易氧化脱皮而产生炭化,造成虚焊。
4.3 印制电路板的焊接工艺 4.3.1 焊前准备
首先要熟悉所焊印制电路板的装配图,并按图纸配料,检查元器件型号、规格及数量是否符合图纸要求,并做好装配前元器件引线成型等准备工作。
4.3.2 焊接顺序
元器件装焊顺序依次为:电阻器、电容器、二极管、三极管、集成电路、大功率管,其它元器件为先小后大。
4.3.3 对元器件焊接要求
(1)电阻器焊接
按图将电阻器准确装入规定位置。要求标记向上,字向一致。装完同一种规格后再装另一种规格,尽量使电阻器的高低一致。焊完后将露在印制电路板表面多余引脚齐根剪去。
(2)电容器焊接
11
基于单片机的交通信号灯控制系统
将电容器按图装入规定位置,并注意有极性电容器其“ + ”与“ - ”极不能接错,电容器上的标记方向要易看可见。先装玻璃釉电容器、有机介质电容器、瓷介电容器,最后装电解电容器。
(3)二极管的焊接
二极管焊接要注意以下几点:第一,注意阳极阴极的极性,不能装错;第二,型号标记要易看可见;第三,焊接立式二极管时,对最短引线焊接时间不能超过2S 。
(4)三极管焊接
注意 e 、 b 、 c 三引线位置插接正确;焊接时间尽可能短,焊接时用镊子夹住引线脚,以利散热。焊接大功率三极管时,若需加装散热片,应将接触面平整、打磨光滑后再紧固,若要求加垫绝缘薄膜时,切勿忘记加薄膜。管脚与电路板上需连接时,要用塑料导线。
(5)集成电路焊接
首先按图纸要求,检查型号、引脚位置是否符合要求。焊接时先焊边沿的二只引脚,以使其定位,然后再从左到右自上而下逐个焊接。
对于电容器、二极管、三极管露在印制电路板面上多余引脚均需齐根剪去。
4.4 拆焊
在调试、维修过程中,或由于焊接错误对元器件进行更换时就需拆焊。拆焊方法不当,往往会造成元器件的损坏、印制导线的断裂或焊盘的脱落。良好的拆焊技术,能保证调试、维修工作顺利进行,避免由于更换器件不得法而增加产品故障率。
普通元器件的拆焊:
(1)选用合适的医用空心针头拆焊 (2)用铜编织线进行拆焊 (3)用气囊吸锡器进行拆焊 (4)用专用拆焊电烙铁拆焊 (5)用吸锡电烙铁拆焊
5 电子元器件的引线成型和插装 5.1 电子元器件的引线成型要求
手工插装焊接的元器件引线加工形状有卧式和竖式。 (1)引线不应该在根部弯曲;
(2)弯曲处的圆角半径R 应要大于两倍的引脚直径; (3)弯曲后的两根引线要与元件本体垂直; (4)元气件的符号标志应方向一致。
5.2 电子元气件的插装方法
(1)手工插装
12
华东交通大学课程设计
(2)自动插装
(3)元气件在印制电路板上插装的原则
a、电阻、电容、晶体管和集成电路的插装应使标记和色码朝上,易于辨认。 b、有极性的元气件有极性标记方向决定插装方向。 c、插装顺序应该先轻后重、先里后外、先低后高。 d 、元气件间的间距不能小于1mm,引线间隔要大于2mm。
6 系统总体方案及硬件设计 6.1 方案的选择
经过小组的认真讨论和对题目的要求,采用单片机控制,可提高电路的稳定性和可靠性,硬件电路会比较简单,主要是靠软件进行控制,控制方式灵活,可以通过中断的方式应对不同的情况。本次课题用的芯片是51系列。
此系统的核心就是控制芯片,采用的是ATC51,通过编写程序控制LED数码管及发光二极管,当外界有突发情况时,我们采用了外部中断的方式进行控制,提高了灵活性。这次课题采用了LED数码管进行道路通行或者禁行的时间提示,采用倒计时的方式,采用二极管模仿红黄绿灯来作为道路通行的标志。由于东西方向的道路的通行状况是一样的,所以控制东西方向的LED数码管可以同一设置,二极管也一样。但我们本次课题,为了显得更加真实,依然每个方向都用了了两个8段的一位LED数码管和红黄绿二极管。
6.2 硬件电路及主要元件介绍 6.2.1 硬件电路
本系统主要包括四大部分:单片机控制、LED显示、二极管显示、中断系统。具体的硬件及连接如图2:
图2 总电路图
13
基于单片机的交通信号灯控制系统
6.2.2 主要元器件的介绍
(1)核心部件ATC51的说明 (见图3)
1主要特性: ○
与MCS-51
4KB字节可编程闪烁存储器 寿命:1000写/擦除循环 数据保留时间:十年 全静态工作:0Hz-24Hz 三级程序存储器锁存 128*8内部RAM 32课编程I/O线
两个16位定时/计数器
5个中断源 可编程串行通道 低功耗闲置和掉电模式
片内振荡器和时钟电路
2引脚说明 ○
Vcc:接+5V电源正端 图3 ATC51引脚图 Vss:接+5V电源地端
XTAL1:接外部石英晶体的一端 XTAL2: 接外部晶体的另一端
RES/VPD:res即为RESET,VPD为备用电源,所以该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可以实现复位操作,使单片机恢复到初始状态(复位电路见后图)
P0口:但不接外部存储器与不扩展I/O接口时,它可以作为准双向8位输入/输出接口。当接有外部存储器与扩展I/O接口时,P0口味地址/数据分时复用口。它分时提供8位地址总线和8位双向数据总线。
对于片内含有EPROM编程时,从P0口输入指令字节,而当检验程序时,则输出指令字节。
P1口:可作为准双向I/O接口使用。对于MCS-52子系列单片机,P1.0和P1.1还有第二功能:P1.0可作为定时器/计数器2计数脉冲输入端T2;P1.1可用作定时器/计数器2的外部控制端T2EX。
对EPROM编程和 进行程序验证时,P1口接收输入的额低8位地址。
P2口:一般用作准双向I/O接口,当接有外部存储器或扩展I/O接口且寻址范围超过
14
华东交通大学课程设计
256个字节时,P2口作为高8位的地址总线送出高8位的地址。
对EPROM编程和进行程序验证时,P2口接收输入的高8位地址。
P3口。它 为双功能口,它可作为一般的准双向I/O接口,也可以将每一位用于第二功能使用,而且P3口的每一条引脚都可以定义为第一功能的输入或输出或第二功能详见下表2。
表2 P3口第2功能表
引脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 第二功能 RXD (串行口输入端) TXD (串行口输出端) INT (外部中断0请求输入端,低电平有效) INT1 (外部中断1请求输入端,低电平有效) T0 (定时器/计数器0计数脉冲输入端) T1 (定时器/计数器1计数脉冲输入端) WR (外部数据存储器写选通信号输出端,低电平有效) RD (外部数据存储器读选通信号输出端,低电平有效) (2)LED数码管
LED数码管是最常用的一种字符显示器件,它是将若干个LED按一定的图形正组 织在一起构成的,外形如图4。
图4 7段LED数码管
LED数码管有许多种,,按显示字形分为数字管和符号管,按显示位数分为一位,双位和多位数码管,按内部连结方式分为共阴极数码管和共阳极数码管两种,按字符 颜色分为红色,黄色,绿色和橙色等,7段LED数码管是应用比较广泛的一种数码管。本系统应用的是7段共阴极的一位数码管。
1一位共阴极LED数码管的引脚 ○
一位共阴极LED数码管共10个引脚,其中,3、8两引脚为共阴极(该两引脚内部2LED数码管显示器的显示段码 ○
为了显示字符,要为LED显示器提供显示段码(或称字形代码),组成一个“8”字形字符的7段,再加上一个小数点,共计8段,因此提供给LED显示器的显示段码为
15
已连接在一起)其余8个引脚分别为7段比划和一个小数点的阳极,如图5所示 。
基于单片机的交通信号灯控制系统
1个字节。各段码位的对应关系如下:
段码位 显示段 D7 dp D6 g D5 f D4 e D3 d D2 c D1 b D0 a 用共阴极LED显示器显示十六进制数和空白字符与P的显示段码如表3:
表3 十六进制数及空白字符与P的显示段码
字符 0 1 2 3 4 5 6 7 8 共阴极段码 3FH 06H 5BH 4FH 66H 6DH 7DH 07H 7FH 字符 9 A B C D E F 空白 P 共阴极段码 6FH 77H 7CH 39H 5EH 79H 71H 00H 73H 3LED数码管的特点 ○LED数码管的特点是发光亮度高、响应时间快、高频特性好、驱动电路简单,而且体积小、质量轻、寿命长和耐冲击性能好。
图5 数码管引脚图 图6 与门74LS11引脚图 (3)与门74LS11(引脚如图6) 引出端符号: 1A----3A 输入端 1B-----3B 输入端 1C-----3C 输入端
16
华东交通大学课程设计
1Y-----3Y 输出端
(4)其它元器件介绍
交通信号灯:采用红、黄、绿三色二极管封装在一起组成三色交通信号灯,在实际运用中应注意其极性。
此外,还有12个0.5K的电阻和2个1K的电阻,排阻1个,外部中断按钮和复位电路共用了4个按钮,2个20P的电容及1个晶振。
6.3 总电路的设计及说明
设计基本电路分为四个部分,其框架如图7。
图7 硬件电路框架
6.3.1 总电路的工作原理
东西处于禁止通行的状态时,南北处于允许通行的状态。南北路红灯亮是,东西方向绿灯亮;南北路绿灯亮时,东西方向红灯亮。总之东西与南北方向的警示灯的状态是不同的,但是其中的转变及时间顺序关系有一定的关系。当南北路亮红灯30秒时,东西方向亮绿灯25秒,;当东西路绿灯25秒亮完后,转为黄灯5秒倒计时,南北方向依然剩余5秒红灯;当东西和南北方向5秒都减为0时,南北路转为绿灯,时间25秒,东西转为红灯,时间30秒;当南北路绿灯25秒走完后,转为黄灯5秒倒计时,此时东西方向红灯依然剩余5秒;东西和南北5秒都减完后,再次转变。如此循环,构成了十字路口的道路通行规则。利用C51单片机控制交通灯系统工作。其中,P0口用作数据输出口,接外部LED数码管,P2口接数码管的COM口,用于选择数据输出的地址,这样就可以实现数码管的动态显示,因此节省了端口数。P1口作为红黄绿交通灯的控制口,通过上拉电阻将二
17
基于单片机的交通信号灯控制系统
极管的正极接高电平,负极接P1口,我们可以通过控制单片机P1口的输出数据控制红黄绿二极管的亮灭。当发生紧急情况时,可以通过利用外部中断INT0申请中断,当INT0为低电平时,单片机的PC指向外部中断的入口地址从而转向紧急中断程序。此时我们可以通过判断外部中断开关的状态来对红黄绿灯的显示时间进行修改。同时当INT0为低电平时,东西南北都置为红灯,从而使得东西南北路都禁止通行。
6.3.2 各端口的控制作用
P1口作为红黄绿灯的控制端,P1.0,P1.2,P1.1分别控制东西方向的红黄绿灯信号,P1.4,P1.6, P1.5分别控制南北方向的红黄绿灯信号。
P0口作为LED数码管的信号输送端,P2口中的P2.0,P2.1控制东西方向的LED数码管控选端,P2.2,P2.3控制南北方向的LED数码管控选端。
P3口的P3.2即为外部中断INT0作为紧急情况和调时功能控制,P3.5, P3.6 P3.7是紧急信号控制口。
6.3.3 时钟电路和复位电路
(1)复位电路
复位电路如图8所示,本系统采用的复位电路既可以进行上电自动复位,也可以外部手动复位。其中R7和R8都是1K欧姆,C3为10UF。当开关打开时,RET通过电阻接地;当开关闭合时,由于电容的作用VCC通过电阻施加在单片机的复位端RET上,实现单片机复位。
(2)时钟电路
时钟电路如图9所示,本系统采用外接时钟源,由两个电容串联之后并联一个晶振组成,接入单片机的XTAL1端和XTAL2端。其中C1和C2约为20P,晶振频率为12MHz。
图8 复位电路 图9 时钟电路
18
华东交通大学课程设计
7 软件设计
7.1 交通灯状态的分析
十字路口交通灯如图10共有四种状态: A:南北方向绿灯接通,东西方向红灯接通; B:南北方向黄灯闪烁,东西方向红灯依然接通; C:东西方向绿灯接通,南北方向红灯接通;
D:东西方向黄灯闪烁,南北方向红灯依然接通。 以上四种状态转换并循环下去 图10 十字路口交通灯 7.2 主程序流程图
主程序流程图见图11和图12。
开始东西红灯亮,南北绿灯亮,延时东西红灯亮,南北黄灯亮,延时东西绿灯亮,南北红灯亮,延时东西黄灯亮,南北红灯亮,延时
图11 主程序流程图 图12 主程序流程图
19
基于单片机的交通信号灯控制系统
7.3 中断程序流程图
中断程序流程图见图13。
图13 中断程序流程图
8 调研报告
今天,开完晨会后自己就去了长运电子市场调研。天气还好,至少感觉不会冷。到了电子市场,感觉那里有点小,应该不会有什么东西的,可是等进入其中,才知道自己错了,里面完全不是那么一回事。里面有很多的小店,有卖电子元器件的,也有
20
华东交通大学课程设计
卖家用电器元件的,还有一些别的东西,只不过店面都有点冷清。
一进去的前面几家店并不是卖电子元器件的,所以自己就直接去找并走到卖电子元器件的店了。第一家,本来想拿几个自己感兴趣的元器件来看的,可是老板直接说了“不买就不要碰”,所以自己只能在那眼巴巴地看,连续好几家店都是如此。接着往里走,走到了另外的一家,看到了自己想要的一些元器件,并且买了,所以就在那儿多看了下,也顺便问了老板一些东西。
在里面将近停留了一个半小时才出来,期间看到了很多的元器件。有发光(稳压)二级管、LED数码显示管、74LS系列芯片(74LS11、74LS373…)、51系列单片机(ATC51、ATS52…)、色环电阻、排阻、电源、电容(20p、10u…)、开关、晶振(12MHz)、传感器、芯片插座等。
总的来说,这次调研收获还是蛮多的,不仅知道了很多元器件,让自己开拓了视野,同时得到了自己需要的一些东西,加快了做实物的进度。
9 微电子实习心得体会
通过这次微电子实习,自己学到了很多,也得到了很多,同时也明白了理论与实际的差别是巨大的。以前在课本上确实是学到了一些东西,但那并不是牢固的,经不起实践的考验。只有在实践中加入理论,并运用理论知识来解决实践中遇到的问题,才能让我们更加熟悉透特的掌握知识,并用它来解决其他类似的问题。
在此次微电子实习中,自己接触到了很多的东西,尤其是电子元器件,虽然说这只是元器件大家族中的一个小小的角落,但这对于自己来说已经很多了。还有就是一些仪器(如示波器、万用表等)的使用,尽管自己不太会,但还是懂一点点的。同时不可缺少的就是电烙铁的使用,那是焊接电路板的关键,虽然说接线也是很重要的,但若不会焊接,会接线那也是惘然,因为制作不出电路板。再者就是熟悉了一些相关软件的使用,如KEIL C,ISP,PROTEUS。但这些还不是重要的,重要的是学会了一种寻找问题、分析问题、解决问题的能力。
这次实习,采用的是两个人同组的形势开展的。期间和组员一起讨论、制作作品,感觉真的很好。很重要的一点是在我们的共同努力下,我们的作品最终顺利完成了,虽然不是特别的完美,但过程是美好的。同时,也感谢老师您这三周陪我们一起走来,虽然说过程是痛苦并快乐的,但这段记忆,却是值得一生珍藏的。
参考文献
【1】张毅坤,陈善久,裘雪红。单片微型计算机原理及应用。西安:西安电子科技大学出版社,1997。 【2】赵广林。看图快速学Protel 99SE电路设计与制版。北京:电子工业出版社,2009。 【3】门 宏。快速学认电子元器件。北京:人民邮电出版社,2011。
【4】机械Q584230580。单片机交通信号灯控制系统http://www.doc88.com/p-9985942767.html。 【5】李海滨,片春媛,许瑞雪。单片机技术课程设计与项目实例。北京:中国电力出版社,2009。 【6】测控论坛:http://ecjtucekong.5d6d.com/bbs.php。
21
基于单片机的交通信号灯控制系统
附录一:源程序代码
#include unsigned char TIME_EW; //东西方向倒计时寄存器单元 unsigned char TIME_SN; //南北方向倒计时寄存器单元 unsigned char MS_CNT; //50ms计时 unsigned int SEC_CNT; //秒计时 unsigned char HOUR=12; //小时缓冲区 unsigned char flash; unsigned char code table[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; //延时功能 void Delay(unsigned char format_t) { unsigned char t; t=format_t; while(t--); } //显示功能 22 华东交通大学课程设计 void Display(void) { unsigned char h,l; l=TIME_EW%10; P2=0xff; P0=table[l]; Delay(3); P20=0; h=TIME_EW/10; P2=0xff; P0=table[h]; Delay(3); P21=0; //--------------- l=TIME_SN%10; P2=0xff; P0=table[l]; Delay(3); P22=0; h=TIME_SN/10; P2=0xff; P0=table[h]; Delay(3); P23=0; } //T0中断功能 void Timer0(void)interrupt 1 { TH0=(65536-49990)/256; TL0=(65536-49990)%256; if(MS_CNT>=10) flash=1; else flash=0; if(MS_CNT>=20) { 23 基于单片机的交通信号灯控制系统 MS_CNT=0; SEC_CNT+=1; TIME_EW-=1; TIME_SN-=1; if(SEC_CNT==3600) HOUR+=1; if(HOUR==24) HOUR=0; } else MS_CNT+=1; } //进入中断功能 void INTSP(void)interrupt 0 { unsigned char tmp; tmp=P1; EX0=0; P2=0xff; Delay(10); P32=1; if(~P35) P1=0x65; else if(~P36) P1=0x56; else if(~P37) P1=0x66; while(~P32) {;} P1=tmp; EX0=1; } //东西红,南北绿 --25S void StateRG(void) { TIME_EW=30; //P1.0----红绿 //P1.1----绿红 //P1.0----红红 24 华东交通大学课程设计 TIME_SN=25; P1=0xff; while(TIME_SN) { Display(); EWR=0;SNG=0; } P1=0xff; } //东西红,南北黄 --5S void StateRY(void) { TIME_SN=5; P1=0xff; while(TIME_SN) { Display(); EWR=0;SNY=0; } P1=0xff; } //东西绿,南北红 --25S void StateGR(void) { TIME_EW=25; TIME_SN=30; P1=0xff; while(TIME_EW) { Display(); EWG=0;SNR=0; } P1=0xff; } //东西黄,南北红 --5S 25 基于单片机的交通信号灯控制系统 void StateYR(void) { TIME_EW=5; P1=0xff; while(TIME_EW) { Display(); EWY=0;SNR=0; } P1=0xff; } //SLEEP void StateSleep(void) { P1=0xff; if(flash) { EWY=0;SNY=0; } else P1=0xff; P2=0x00; } void main(void) { TMOD=0x01; TH0=(65536-49990)/256; TL0=(65536-49990)/256; IT0=1; //外部中断请求0触发方式控制 PX0=1; //T0中断高优先级 ET0=1; //T0中断允许 EX0=1; //外部中断0允许 EA=1; //所有中断允许 TR0=1; //启动T0 while(1) 26 华东交通大学课程设计 { while(HOUR>=0&&HOUR<=5) StateSleep(); StateRG(); StateRY(); StateGR(); StateYR(); } } 27 基于单片机的交通信号灯控制系统 附录二:实物图(见图14、图15和图16) 图14 实物图1 28 华东交通大学课程设计 图15 实物图2 图16 实物图3 29 基于单片机的交通信号灯控制系统 附录三:系统原理图 30 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- sarr.cn 版权所有 赣ICP备2024042794号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务