首页 理论教育 单片机信号灯控制器设计成果

单片机信号灯控制器设计成果

时间:2023-11-24 理论教育 版权反馈
【摘要】:本项目是用单片机设计一个信号灯控制器,要求:单片机接一个发光二极管L1和一个独立按键S1,发光二极管显示按键的状态。图2-36信号灯控制器的系统结构图3.硬件设计信号灯控制器的硬件电路如图2-37所示。图2-37信号灯控制器硬件电路原理图P3.0口作为输入口使用,所以将按键S1接至P3.0。图2-39信号灯控制器Proteus仿真硬件电路图6.硬件制作与调试元器件采购。

单片机信号灯控制器设计成果

1.任务描述

信号灯在工厂企业、交通运输业、商业、学校等各个行业应用非常广泛,信号灯有各种各样的类型,用途也各不相同。信号灯不同的颜色、不同的形状、不同的亮暗规律等都表示不同的含义,因此,对信号灯的控制尤为重要。信号灯的控制有多种方式,如机械开关控制方式、电气开关控制方式、数字逻辑电路控制方式、可编程逻辑器件PLD控制方式、单片机控制方式等。其中,应用单片机对信号灯控制,具有控制电路简单、控制灵活、操作方便等一系列优点,应用非常广泛。

本项目是用单片机设计一个信号灯控制器,要求:单片机接一个发光二极管(LED)L1和一个独立按键S1,发光二极管显示按键的状态。即按下S1时,L1点亮;松开S1时,L1灭。

2.总体设计

本项目的设计需要硬件与软件两大部分协调完成。系统硬件电路以AT89S51单片机控制器为核心,包括单片机最小系统硬件电路、按键电路和LED信号灯电路几个部分。信号灯控制器的系统结构图如图2-36所示。软件部分主要实现对按键的状态判断及LED灯的亮灭控制。

图2-36 信号灯控制器的系统结构图

3.硬件设计

信号灯控制器的硬件电路如图2-37所示。实现该任务的硬件电路中包含的主要元器件有AT89S51 1片、按键1个、LED灯1个、12MHz晶振1个、电阻和电容等若干。

图2-37 信号灯控制器硬件电路原理图

P3.0口作为输入口使用,所以将按键S1接至P3.0。按键在没有被按下时,输入引脚上保持为高电平。当按键被按下时,单片机的输入引脚被接地。其中10kΩ的电阻R2为限流电阻。

选择P1.0作为输出口使用,将LED灯L1接至P1.0。R1为其限流电阻,其参数选择为220Ω。当P1.0输出低电平时灯亮,当P1.0输出高电平时灯灭。

整个系统工作时,单片机读取按键的状态,并将按键的状态送LED显示。

图2-38 程序流程图

4.软件设计

(1)程序流程图如图2-38所示。

(2)源程序如下:

5.虚拟仿真与调试

(1)打开Proteus ISIS软件,装载本项目的硬件图。

(2)将Keil μVision 3软件开发环境下编译生成的HEX文件装载到Proteus虚拟仿真硬件电路中的AT89S51芯片里。

(3)启动仿真运行后,在“Debug”菜单下,打开相应的部件,仔细观察运行结果,如果有不符合设计要求的情况,调整源程序并重复步骤(1)(2),直至其完全符合本项目提出的各项设计要求为止。

特别说明:在后续各项目中,虚拟仿真与调试方法及步骤均同此项目,在以后项目中不再赘述。

信号灯控制器Proteus仿真硬件电路图如图2-39所示。观察调试结果如下:当按下S1时灯L1点亮,松开S1后灯L1灭。P3.0口接的按键状态确实在相应的LED灯上得到反映,可以确定P3.0起输入口的作用,P1.0起输出口的作用。

图2-39 信号灯控制器Proteus仿真硬件电路图(www.xing528.com)

6.硬件制作与调试

(1)元器件采购。

采购清单见表2-1。

表2-1 元器件清单

(2)硬件制作。

对照元器件表,检查所有元器件的规格、型号有无错误,如有及时纠正。检查硬件PCB版图是否符合设计要求,并按电子组装工艺焊接要求焊接电路板。

(3)调试方法与步骤。

①电路板静态检查。

对照元器件表,检查所需元器件的规格、型号有无错误。对照原理图仔细检查有无错线、短路、断路等故障。需要重点关注单片机最小系统的构建是否正确,包括晶振的选择,各电阻、电容的大小及类型的选择。还需要关注有极性的器件——LED及电解电容等的极性有无接错,AT89S51芯片有无插反,轻触按键四个脚的接法是否正确、有无短接。还应特别注意电源系统的检查,以防止电源短路和极性错误,并重点检查系统信号线是否存在相互之间短路。

②电路板通电检查。

检查电源电压的幅值和极性无误后给电路板通电。加电后检查各插件上引脚的电位,一般先检查Vcc与GND之间电位,若电位在4.8~5V之间属正常。若有高压,调试时会使应用系统中的集成块发热损坏。

③程序在线仿真(没有仿真器的用户此步骤可以不做)。

将生成的目标文件(HEX文件)装载到单片机开发系统的仿真RAM中。运行程序,观察到如下结果:按下按键S1,则发光二极管点亮;松开按键S1后,该灯灭。也可采用单步运行(Step)、设置断点等方法调试程序,观察每一条指令运行后电路板上交通灯的状态变化。若与功能不符,建议检查程序,修改功能。

④程序装载。

确认仿真结果正确后,将生成的HEX文件通过ISP在线编程或编程器直接烧写到单片机中。若使用编程器烧写,再反复烧写拔插芯片,可将写好程序的AT89S51芯片插入电路板的相应位置(注意芯片的槽口),接上电源启动运行,观察结果。

若通过ISP在线编程,只要将ISP电缆和目标板的ISP接口连接后,就可以不拔下单片机芯片,直接对实验板内部程序进行下载更新,彻底告别以前用普通编程器反复烧写拔插芯片的烦恼。程序下载完成后自动运行,具有所见即所得的特点,效率较高。本项目中采用的单片机AT89S51具有在线编程(ISP)的功能,通常采用在线编程。

⑤结果分析。

程序正常运行后观察运行结果是否与仿真结果一致。若调试结果不符合设计的要求,对硬件电路和软件进行检查,重复调试。

⑥硬件调试注意事项。

·在系统进行硬件调试时会发现通电后电路板不工作,首先用示波器检查ALE脚及XTAL2脚是否有波形输出(也可以用多用表测量这两个脚对地电压,若为电源电压一半左右即表示有振荡信号)。若没有波形输出,需要检查单片机最小系统接线是否正确。单片机最小系统必须满足基本的硬件条件,系统才能正常工作,尤其采用单片机芯片内部的程序存储器时,脚一定要接高电平。

·在系统进行硬件调试时可能会出现LED不亮,此时应检查LED的极性是否接反、限流电阻的选择是否合适、电路是否虚焊以及LED是否损坏。

·在系统进行硬件调试时可能出现按键不起作用,此时应检查按键接线是否正确、电阻选择是否合适及电路是否虚焊。

·若选择ISP在线编程,在使用下载头之前,必须检查目标板电源是否短路,以及各ISP相关引脚是否接错。

特别说明:在后续各项目中,硬件制作和调试方法与步骤均同此项目,在以后项目中不再赘述。

7.能力拓展

将LED灯接至P2.1,按键S1接至P2.6,要求:按键按下时,LED点亮;按键释放时,LED熄灭。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈