单片机原理及应用毕业课程设计交通灯控制系统设计.doc

上传人:e****s 文档编号:92379986 上传时间:2023-06-03 格式:DOC 页数:27 大小:496KB
返回 下载 相关 举报
单片机原理及应用毕业课程设计交通灯控制系统设计.doc_第1页
第1页 / 共27页
单片机原理及应用毕业课程设计交通灯控制系统设计.doc_第2页
第2页 / 共27页
点击查看更多>>
资源描述

《单片机原理及应用毕业课程设计交通灯控制系统设计.doc》由会员分享,可在线阅读,更多相关《单片机原理及应用毕业课程设计交通灯控制系统设计.doc(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、单片机原理及应用课程设计 - 交通灯控制系统设计 摘 要交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。本系统采用单片机AT89C51为中心器件来设计交通灯控制器,系统实用性强、操作简单、扩展性强。本设计就是采用单片机模拟十字路口交通灯的各种状态显示以及倒计时时间。本设计系统由单片机I/O口扩展系统、交通灯状态显示系统、LED数码显示系统、紧急情况中断系统、复位电路等几大部分组成。系统除基本的交通灯功能外,还具有倒计时、紧急情况处理等功能,较好的模拟实现了

2、十字路口可能出现的状况。软件上采用C51编程,主要编写了主程序,LED数码管显示程序,中断程序延时程序等。经过整机调试,实现了对十字路口交通灯的模拟。关键词: AT89C51 8255A 74LS164 LED 交通灯 程序目 录任务书i摘 要ii第一章 绪 论11.1 概述11.2 设计目的11.3 设计任务和内容1第二章 总体设计及核心器件简介2总体设计22.2 AT89C5122.3 8255A42.4 74LS16452.5 X50457第三章 单元电路模块设计11复位电路11晶振电路113.4 I/O口扩展电路123.5 LED数码管显示电路123.6 交通灯状态显示电路143.7

3、紧急情况中断电路153.8 总体设计原理图及功能介绍16第四章 软件编程设计174.1 设计思想174.2 程序框图174.3 源程序17第五章 设计心得和存在问题21参考文献24第一章 绪 论 概述近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1.2 设计目的(1)加强对单片机和C5

4、1语言的认识,充分掌握和理解设计各部分的工作原理、设计过程、选择芯片器件、模块化编程等多项知识。(2)用单片机模拟实现具体应用,使个人设计能够真正使用。(3)把理论知识与实践相结合,充分发挥个人能力,并在实践中锻炼。(4)提高利用已学知识分析和解决问题的能力。(5)提高实践动手能力。1.3 设计任务和内容结合教材及参考资料,用AT89C51单片机模拟实现十字路口的交通灯亮灭、倒计时显示、紧急情况处理等功能。(1)填写设计任务书。(2)进行总体设计,画出原理图。(3)用Protel软件画出PCB板并制板。(4)焊接器件和芯片。(5)编写并调试程序。第二章 总体设计及核心器件简介整个设计以AT89

5、C51单片机为核心,由I/O口扩展,LED数码管显示,紧急情况中断电路,watchdog复位电路组成。硬件模块入图3-1。AT89C51单片机I/0口扩展LED数码管显示中断系统复位电路图21 硬件模块2.2 AT89C511AT89C51单片机简介AT89C51是美国ATMEL公司推出的系列单片机,将多种功能的8位CPU与FPEROM(快闪可编程/擦除只读存储器)结合在一个芯片上,是一种低功耗、高性能的CMOS控制器,为很多嵌入式控制应用提供了非常灵活而又价格适宜的方案,其性能价格比远高于同类芯片。它与MCS-51指令系统兼容,片内FPEROM允许对程序存储器在线重复编程,也可用常规的EPR

6、OM编程器编程,可循环写入/擦除1000次。89C51内含4KB的FPEROM,一般的EEPROM的字节擦除时间和写入时间基本上均为10ms,对于任一个实时控制系统来说,这样长的时间是不可能在线修改程序的。图22 89C51内部结构图与EEPROM相比较,FPEROM大大缩短了存储内容擦除和写入的时间,为在线改写程序提供了极大的方便,而且价格也比带EPROM87C系列单片机便宜,这更显示出了89C系列的优越性。它还有128*8Bit的片内RAM;32根I/O线;2个16位定时/计数器;5个中断源;一个全双工的异步串行口;间歇和掉电工作模式;三级程序存储器加密;全静态工作,晶振工作范围:0Hz2

7、4MHz。2管脚功能AT89C51单片机为40引脚芯片如图23所示。I/O口线: P0、P1、P2、P3共四个八位P0口是三态双向口, 通称数据总线口, 因为只有该口能直接用于对外部存储器的读写操作。P0口也用以输出外部存储器的低8位地址。由于是分时输出, 故应在外部加锁存器将此地址数据锁存, 地址锁存信号用ALE。P1口是专门供用户使用的I/O口, 是准双向口。P2口是从系统扩展时作高8位地址线用。不扩展外部存储器时, P口也可以作为用户I/O口线使用, P2口也是准双向口。P3口是双功能口, 该口的每一位均可独立地定义为第一I/O 功能或第二I/O功能。作为第一功能使用时操作同P1口。P3

8、口的第二功能如表21。图2-3 89C51引脚图控制口线: PSEN (片外取控制)、AL E( 地址锁存控制)、EA (片外储器选择)、RE2SET (复位控制) ;电源及时钟: CCC、VSS; XTAL 1, XTAL 2表2-1 引脚功能表2.3 8255A8255A是Intel公司生产的可编程输入输出接口芯片,它具有3个8位的并I/O口,具有三种工作方式,可通过程序改变其功能,因而使用灵活,通用性强,可作为单片机与多种外围设备连接时的中间接口电路。8255有三种基本工作方式,PC口被分为两个部分,上半部分随PA口称为A组,下半部分随PBPA口可工作与方式0、1和2,而PB口只能工作在

9、方式0和1。8255共有40个引脚,采用双列直插式封装。其引脚图如图2-4所示,各引脚功能如下:图2-4 8255A引脚图D0-D7:三态双向数据线,与单片机数据总线连接,用来传送数据信息。CS:片选信号线,低电平有效,表示芯片被选中。RD:读出信号线,低电平有效,控制数据的读出。WR:写入信号线,低电平有效,控制数据的写入。Vcc:+5V电源。PA0-PA7:A口输入/输出线。PB0-PB7:B口输入/输出线。PC0-PC7:C口输入/输出线。RESET:复位信号线。A1、A0:地址线,用来选择8255内部端口。GND:地线。2.4 74LS16474LS164引脚定义如图2-5所示,其真值

10、表如表2-2所示,其功能是将外部输入的串行数据转化为8位的并行数据输出具有锁寸功能。A、B端为串行数据输入端,QA QH为数据输出端,CLK为外部时钟输入端,CLR为清零端。图2-5 74LS164引脚图表2-2 74LS164真值表 输入输出CLEARCLOCKA BQA QB QHLX X XL L LHL X XQA0 QB0 QH0H H HH QAn QGnH L XL QAn QGnH X LL QAn QGn注 QA0、 QB0、QH0为在稳态输入条件建立之前QA 、QB 和QH相应的电平;QAn 、QGn 为在最近的时钟转换前QA或QG的电平,表示移1位。74LS164内部功能

11、图如图2-6所示:图2-6 74LS164内部功能图2.5 X5045 X5045是一种集看门狗、电压监控和串行EEPROM 三种功能于一身的可编程电路。这种组合设计减少了电路对电路板空间的需求。X5045中的看门狗对系统提供了保护功能。当系统发生故障而超过设置时间时,电路中的看门狗将通过RESET信号向CPU 作出反应。X5045提供了三个时间值供用户选择使用。它所具有的电压监控功能还可以保护系统免受低电压的影响,当电源电压降到允许范围以下时,系统将复位,直到电源电压返回到稳定值为止。X5045的存储器与CPU 可通过串行通信方式接口,共有4096个位,可以按512 x 8个字节来放置数据。

12、1 引脚介绍CS/WDI:片选输入/看门狗复位输入;SO:串行输出;WP:写保护输入;RESET:复位输出;SCK:同步时钟输入;SI:串行输入。 图2-7 X5045引脚图 Vss:地;Vcc:电源;2 工作原理 2.1 上电复位 向X5045加电时会激活其内部的上电复位电路,从而使RESET 引脚有效。该信号可避免系统微处理器在电压不足或振荡器未稳定的情况下工作。当VCC 超过器件的Vtrip门限值时,电路将在200ms(典型)延时后释放RESET 以允许系统开始工作。 2.2 低电压监视 工作时, X5045对VCC 电平进行监测,若电源电压跌落至预置的最小Vtrip以下时,系统即确认R

13、ESET,从而避免微处理器在电源失效或断开的情况下工作。当RESET 被确认后,该RESET 信号将一直保持有效,直到电压跌到低于1V 。而当VCC 返回并超过Vtrip达200ms时,系统重新开始工作。 2.3 看门狗定时器看门狗定时器的作用是通过监视WDI输入来监视微处理器是否激活。由于微处理器必须周期性的触发CS/WDI引脚以避免RESET 信号激活而使电路复位,所以CS/WDI引脚必须在看门狗超时时间终止之前受到由高至低信号的触发。2.4 重新设置VCC 门限X5045/45出厂时设置的标准VCC 门限电压为Vtrip,但在应用时,如果标准值不恰当,用户可以重新调整。2.5 SPI串行

14、存储器器件存储器部分是带块锁保护的CMOS串行EEPROM 阵列,阵列的内部组织是x8 位。X5045可提供最少为1000,000次擦写和100年的数据保存期,并具有串行外围接口(SPI)和软件协议的特点,允许工作在简单的四总线上。X5045主要是通过一个8 位的指令寄存器来控制器件的工作,其指令代码通过SI输入端(MSB在前)写入寄存器。表2-3所列为X5045的指令格式及其操作。表2-3 X5045的指令格式及其操作2.6 时钟和数据时序 当CS变低以后,SI线上的输入数据在SCK 的第一个上升沿时被锁存。而SO 线上的数据则由SCK的下降沿输出。用户可以停止时钟,然后再启动它, 以便在它

15、停止的地方恢复操作。在整个工作期间,CS必须为低。2.7 状态寄存器 状态寄存器包含四个非易失性状态位和两个易失性状态位。控制位用于设置看门狗定时器的操作和存储器的块锁保护。状态寄存器的格式如表2-4(缺省值为00H) :表2-4 状态寄存器格式其中: WIP (Write-In-Progress) 位是易失性只读位,用于指明器件是否忙于内部非易失性写操作。WIP 位可用RDSR指令读出。当该位为“1”时,表示非易失性写操作正在进行;为“0”时,表示没有进行写操作。 WEL(Write Enable Latch)位用于指出“写使能”锁存的状态。WEL=1时,表示锁存被设置;WEL=0 表示锁存

16、已复位。WEL 位是易失性只读位。可以用WREN指令设置WEL 位;用WRDI指令复位WEL位。 用BLO,BL1(Block Lock)位可设置块锁存保护的范围。任何被块锁保护的存储器都只能读出不能写入。这两个非易失性位可用WRSR指令来编程,并允许用户保护EEPROM 阵列的1/4 、1/2、全部或0。参见表2-5 。2-5 受保护的EEPROM陈列地址WD0、WD1( Watchdog Timer)位用于选择看门狗的超时周期。见表2-6 。表2-6 看门狗的超时周期选择 当用CS 选中器件后,送8 位RDSR指令,并由CLK 信号触发即可将状态寄存器的内容从SO 线上读出。而在写状态寄存

17、器时,应先将CS 拉低,然后送WREN指令,再拉高CS。然后再次拉低CS,最后送入WREN指令及对应于状态寄存器内容的8 位数据即可。该操作由CS 变高结束。 WEL位及WP引脚的状态对器件内的存储器及状态寄存器各部分保护的影响如表2-7所列。表2-7 WREN命令和/WP引脚状态寄存器的影响 第三章 单元电路模块设计复位方式有多种,但本设计采用看门狗芯片X5045,接线图如图3-1所示。 3-1 复位电路原理图在设定的定时时间内,89C51必须在/CS/WDI引脚产生一个由高到低的电平变化,以清内部定时器,即“喂狗”,否则X5045将产生一个复位信号。晶振电路原理图如3-2:3-2晶振模块原

18、理图选取原则:传统做法,但能够实现所需,即最简单也最是实用。电容选取22uF,晶振为11.0592Hz。3.4 I/O口扩展电路 硬件原理设计图如图3-3所示:图3-3 8255A扩展单片机I/0口电路图用74LS373锁存,74LS138译码,扩展单片机的I/O口,由原理图得8255端口地址分配为:A口:0FFD8HB口:0FFD9HC口:0FFDAH3.5 LED数码管显示电路在单片机应用系统中,数码管显示常用两种方法:静态显示和动态扫描显示。所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的I/O接口用于笔划段字形代码。这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了

19、,直到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中CPU的开销小,可以提供单独锁存的I/O接口电路很多。所以本设计采用串并转换电路74LS164的静态显示电路。其电路图如图3-4所示。 图3-4 数码管显示静态驱动电路MCS-51单片机串行口方式0为移位寄存器方式,外接2片74LS164作为2位LED显示器的静态显示接口,把89C51的RXD作为数据输出线,TXD作为移位时钟脉冲。74LS164为TTL单向8位移位寄存器,可实现串行输入,并行输出。其中A、B(第1、2脚)为串行数据输入端,2个引脚按逻辑与运算规律输入信号,共一个输入信号时可并接。T(第8脚)为时钟输入端,可连

20、接到串行口的TXD端。每一个时钟信号的上升沿加到T端时,移位寄存器移一位,8个时钟脉冲过后,8位二进制数全部移入74LS164中。R(第9脚)为复位端,当R=0时,移位寄存器各位复0,只有当R=1时,时钟脉冲才起作用。Q1Q8(第3-6和10-13引脚)并行输出端分别接LED显示器的hga各段对应的引脚上。在给出了8个脉冲后,最先进入74LS164的第一个数据到达了最高位,然后如果再来一个脉冲,第一个脉冲就会从最高位移出。设计中的2片7LS164首尾相串,而时钟端则接在一起,这样,当输入8个脉冲时,从单片机RXD端输出的数据就进入到了第一片74LS164中了,而当第二个8个脉冲到来后,这个数据

21、就进入了第二片74LS164,而新的数据则进入了第一片74LS164,这样首先送出的数据被送到了右面的164中,后送入的则在左面的164中。本设计中采用的是共阴极LED数码管,其字形码如表3-1所示。表3-1 共阴极LED数码管字形码表数据位D7D6D5D4D3D2D1D0笔段位ABCDEFGH字形码0011111107EH10001001012H210111100BCH310110110B6H411010010D2H511100110E6H611101110EEH70011001032H811111110FEH911110110F6H全灭0000000000H3.6 交通灯状态显示电路十字路

22、口的交通灯分布示意图如图3-5所示,将这12个交通灯进行编号。图3-5 十字路口交通灯分布示意图这12个交通灯共有四个状态:状态1(S1):东西红灯(4、10)亮,南北绿灯(3、9)亮状态2(S2):南北黄灯(2、8)亮,东西仍为红灯(4、10)亮状态3(S3):南北红灯(1、7)亮,东西绿灯(6、12)亮状态4(S4):东西黄灯(5、11)亮,南北仍为红灯(1、7)亮对应的硬件原理设计图如图3-6所示:图3-6 交通灯状态显示电路用7407对发光二极管进行驱动,图中电阻R为390欧姆,以保证通过发光二极管的电流大于工作电流10mA。四种状态下发光二极管与相应端口取值关系见表3-2。表3-2

23、发光二极管与相应端口取值关系PB5PB4PB3PB2PB1PB0PA5PA4PA3PA2PA1PA0西红西绿西黄南红南绿南黄东红东绿东黄北红北绿北黄东西红灯亮南北绿灯亮0111010111011D1DH东西红灯亮南北黄灯亮0111100111101E1EH东西绿灯亮南北红灯亮1010111010112B2BH东西黄灯亮南北红灯亮1100111100113333h红灯全亮0110110110111B1BH3.7 紧急情况中断电路紧急情况中断处理电路图如图3-7所示:图3-7 紧急情况中断电路图当东西向(或南北向)有特殊情况,比如有救护车通过,开关SW0为低电平则应使交通灯处于S3(东西绿灯、南北

24、),开关SW1为低电平则应使交通灯处于S1(南北向绿灯、东西向红灯)。3.8 总体设计原理图及功能介绍 整个设计原理图见附图。 功能介绍在应用电路中,采用8255A对单片机的I/O口进行有效的扩展,从而大大增加了可利用的I/O口资源,使得I/O口很充裕。8255的PA口和PB口接发光二极管,通过对PA口和PB口的位写“1”或“0”来控制发光二极管的亮、灭,进而模拟显示出十字路口交通灯的各种状态。 LED数码管则用来对各种状态进行倒计时的显示。设计中采用74LS164静态驱动LED数码管,利用单片机的RXD作为数据的输出端给164送数。利用164的移位进行多位的显示。利用延时程序控制每秒时间,从

25、而控制RXD送数的时间间隔。紧急情况的处理则采用查询加中断的方式。通过查询P1.2和P1.3的状态来控制外部中断1,然后进去相应的处理程序。在哪一方向上有紧急情况,则能通过开关进行中断,使该方向上为绿灯放行,同时紧急情况报警灯亮。第四章 软件编程设计4.1 设计思想交通灯根据其显示情况可以分为四个状态,可以通过定时来控制每个状态的时间;通过定时也可以向LED数码管中每隔1秒送一个数,显示该状态剩余的时间;如果有中断出现则进入相应的处理程序:先保留目前的显示状态,然后根据情况显示处理中的状态,紧急情况结束则恢复到保留的原来状态。4.2 程序框图 主程序框图和中断程序框图分别如图4-1和4-2所示

26、。程序初始化状态1(S1)状态2 (S2)状态3(S3)状态4(S4) 图4-1 主程序框图 图4-2 中断程序框图4.3 源程序#include #include #include #define uint unsigned int#define uchar unsigned char#define COM8255 XBYTE0xffdb#define PA8255 XBYTE0xffd8#define PB8255 XBYTE0Xffd9sbit P1_0=P10;sbit P1_2=P12;sbit P1_3=P13;sbit P3_0=P30;sbit P3_1=P31;uchar c

27、ode table=0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xff,0xf6,0x00;void delay_500ms(int x) /*延时子程序*/ int i; for(;x0;x-) for(i=6245;i0;i+) ;void int1_srv(void)interrupt 2 using 2 uchar a,b; if(!INT1) a=PA8255; b=PB8255; /*保留A口,B口状态*/ if(P1_2=0) PA8255=0x1d; PB8255=0x1d; P1_0=0; if(P1_3=0) PA8255=0x2b;

28、PB8255=0x2b; P1_0=0; while(!INT1); /*等待开关断开*/ PA8255=0xff; PA8255=0xff; PA8255=a; PB8255=b; /*恢复A口,B口状态*/ P1_0=1; void display(uchar x,uchar y) uchar a2=5,1,4,1,3,1,2,1,1,1,0,1,9,10,8,10,7,10,6,10,5,10,4,10,3,10,2,10,1,10,0,10; uchar i,j; for(i=x;iy;i+) for(j=0;j2;j+) x=aij; SBUF=tablex; dowhile(TI=

29、0); TI=0; delay_500ms(2); void main()SCON=0x00;P3_0=1;P3_1=1;COM8255=0x88;SCON=0x00;EA=1;ET0=1;PX1=1;EX1=1;PA8255=0x1b;PB8255=0x1b;delay_500ms(2);while(1) PA8255=0x1d;/*东西红,南北绿:12秒*/ PB8255=0x1d; display(0,12); PA8255=0x1e; /*东西红,南北黄:3秒*/ PB8255=0x1e; display(12,16); PA8255=0x2b; /*东西绿,南北红:8秒*/ PB82

30、55=0x2b; display(5,12); PA8255=0x33; /*东西黄,南北红:3秒*/ PB8255=0x33; display(12,16); PA8255=0x1d;/*循环*/ PB8255=0x1d; 第五章 设计心得和存在问题 通过本次课程设计,我深深的体会到了作为一个硬件工程师的艰辛。即使做一个小小的项目,都需要这么多的辛苦,必须考虑到问题的任何一个细节,否则最后也将是功败垂成。 原理图设计: 当我们选取了这样一个题目,我们就开始收集相关的各种资料,对题目有个大致的了解,规划一下设计的任务将要完成哪些功能。然后就具体的每一项功能应该怎样具体的设计,例如用什么方法完成

31、这一功能,这种想法是否合理,比较使用哪个芯片来完成这项功能。经过长时间的查阅资料、思索、推敲,最后定出了这次设计的原理图。PCB板设计:在上学期两个星期的课程设计中我们从图书馆借来了有关protel软件使用方面的资料,研究应该怎样生成正确的网络表,PCB板的布局,布线,制板等工作。刚开始由于经验不足,不知道如何封装库里面没有的器件和芯片而且生成的网络表又有那么多的线,当时真是一头雾水,经过老师和同学的帮助以及自己的摸索,最后以勉强及格的水准画出了这次的设计用板。硬件焊接:在拿到板之后,按照老师的要求我们首先检查了一下板子是否有错误,这是一个非常关键的步骤,因为当你焊接上器件之后将会很难检查。结

32、果发现了真的还有一些不足,比如在画板的过程中我们居然忘记留出电源接口,还有一些两根电源线没有和其他线接到一块,另外我们给按键留的引脚的孔太小了,数码管的引脚情况也给弄错了,这些应该是初学这些东西经验不够和粗心造成的。这些也都给以后的学习留下了经验和教训,必须先拿到或熟悉芯片才能确定引脚的间距以及大小,制板过程必须要细心。发现这些错误,在焊接过程中我们采取了一系列的措施来补救这些错误。比如割断板子上的线,用导线来连接等。关于焊接这块我参与的并不多,因为自己的水平确实不怎么样,这需要一定的经验和技巧,但是我却是迟迟把握不到这种技巧。刚开始烙铁和焊锡配合不到一块,然后就是焊锡的量的控制问题。始终达不

33、到老师说明的那种效果。所以我只能在我的组员焊板的同时编制程序了。编程调试:此次设计的编程,难点在于对LED数码管显示程序的编写,由于对74LS164的工作原理不是很熟悉,所以一开始摸不着头脑。上网查阅164的相关资料,对164的工作原理有个大致的了解后,程序的编写也初见端倪了,所以花在编此段程序的时间最长;交通灯状态的显示则没有费多大力气,因为通过所学的课程已经了解了其工作原理,就是向每个相应的口上写“1”或“0”;中断程序的编写也是常规的编写,就是保存原来状态,处理,恢复现场这一中断的基本步骤。在整个程序的编写过程中,研究每个子程序是否好使,我是通过Keil C和proteus两个软件来实现

34、的。Proteus是一个单片机的仿真软件,发现它之后真的很受用,通过它可以不用连接硬件就能检查程序是否好使。Keil C则帮助我检查程序是否存在语法错误之类的问题,还可以生成hex文件,供proteus软件仿真使用。通过这两个软件,我把整个的程序调试正确。通过上面的这个步骤,把程序调试好,接下来就是真正的硬件连接调试了。程序既然已经在仿真的软件上通过认证,如果连接上硬件不好使的话,说明在硬件上某个部分存在一定的问题。这点得到了验证:硬件模拟的时候,紧急情况用的开关有一个不好使,按下的时候没有反应。用万用表检测发现,开关内部的连接没有错误,但是当开关按下的时候,不是接通的,说明此开关有问题。但是

35、开关的四个引脚不好再拆下,最后想了个没有办法的办法,在一个引脚上连了一根导线,通过触碰是开关断开或连接。调试工作中还有一环就是LED数码管的字形码的得出。由于采用的是共阴极的数码管,就对对一个引脚赋“1”的办法,01H,02H,04H,08H用这样的方法得出数码管的字形码。最后交通灯的大部分功能都已经基本实现,只是关于看门狗电路的部分,由于对X5045这个芯片不了解,所剩余的时间无几,所以没有办法进行编程调试了,这点真的很遗憾。有时间一定会把这一课补上的。这次课程设计我是全身心的投入进去了,从中确确实实学到了不少东西,使我受益匪浅。这次课程设计中犯下了不少错误,以后我会接受这些教训,同时把这些教训转换为经验应用到以后的此类设计中。最后,衷心感谢在课程设计期间老师对我们的无私帮助,还要感谢和我同组的合作者,以及所有帮助过我的同学。4

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁