1、Company LOGO毕业设计(论文)答辩Company Logo2系统总体方案3硬件设计4软件设计5总结 1设计意义与研究背景Company Logo1.设计意义与研究背景 随着微电子技术的高速发展,单片机在国民经济的个人领域得到了广泛的运用。单片机以体积小、功能全、性价比高等诸多优点,在工业控制、家用电器、通信设备、信息处理、尖端武器等各种测控领域的应用中独占鳌头。而电子钟作为电子类小设计不仅是市场上的宠儿,也是是单片机实验中一个很常用的设计。数字显示的日历钟已经越来越流行,特别是适合在家庭居室、办公室、大厅、会议室、车站和广场等使用,壁挂式LED数码管显示的日历钟逐渐受到人们的欢迎。L
2、CD数字显示的日历钟显示清晰直观、走时准确、可以进行夜视,并且还可以扩展出多种功能。Company Logo主要内容(1 1)选用电子万年历芯片时,应重点考虑功能实在、使)选用电子万年历芯片时,应重点考虑功能实在、使用方便、单片存储、低功耗、抗断电的器件。用方便、单片存储、低功耗、抗断电的器件。(2 2)根据选用的电子万年历芯片设计外围电路和单片机)根据选用的电子万年历芯片设计外围电路和单片机的接口电路。的接口电路。(3 3)在硬件设计时,结构要尽量简单实用、易于实现,)在硬件设计时,结构要尽量简单实用、易于实现,系统电路尽量简单。系统电路尽量简单。(4 4)根据硬件电路图,在开发板上完成器件
3、的焊接。)根据硬件电路图,在开发板上完成器件的焊接。(5 5)根据设计的硬件电路,编写控制)根据设计的硬件电路,编写控制AT89S52AT89S52芯片的单芯片的单片机程序。片机程序。(6 6)通过编程、编译、调试,把程序下载到单片机上运)通过编程、编译、调试,把程序下载到单片机上运行,并实现本设计的功能。行,并实现本设计的功能。(7 7)在硬件电路和软件程序设计时,主要考虑提高人机)在硬件电路和软件程序设计时,主要考虑提高人机界面的友好性,方便用户操作等因素。界面的友好性,方便用户操作等因素。v 本设计由数据显示模块、温度采集模块、时间处理模块和本设计由数据显示模块、温度采集模块、时间处理模
4、块和调整设置模块四个模块组成。系统以调整设置模块四个模块组成。系统以AT89S52AT89S52单片机为控单片机为控制器,以串行时钟日历芯片制器,以串行时钟日历芯片DS1302DS1302记录日历和时间,它可记录日历和时间,它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能。温度采集选用等多种功能。温度采集选用DS18B20DS18B20芯片,万年历采用直芯片,万年历采用直观的数字显示,数据显示采用观的数字显示,数据显示采用1602A1602A液晶显示模块,可以液晶显示模块,可以在在LCDLCD上同时显示年、月、日、星期、时、分、
5、秒,还具上同时显示年、月、日、星期、时、分、秒,还具有时间校准等功能有时间校准等功能Company Logo2.系统设计方案 v 方案一方案一:v 如果采用的是如果采用的是AT89C51AT89C51芯片作为系统的硬件核心。因为它是一种本芯片作为系统的硬件核心。因为它是一种本身具有身具有4K4K字节可编程的字节可编程的Flash ROM,Flash ROM,并且在低电压的条件下工作并且在低电压的条件下工作,与与MCS-51MCS-51系列的属性差不多。但是在对系统进行测试的时侯,系统有时系列的属性差不多。但是在对系统进行测试的时侯,系统有时会出现程序错误需要修改或需要增加一些新程序的时候,需要
6、对芯片会出现程序错误需要修改或需要增加一些新程序的时候,需要对芯片进行多次的拔插,这可能会导致不同程度的损坏。进行多次的拔插,这可能会导致不同程度的损坏。v 方案二方案二:v 如果采用的是如果采用的是AT89S52AT89S52芯片作为系统的硬件核心。因为它是一种自芯片作为系统的硬件核心。因为它是一种自身具有身具有8K8K字节可编程的字节可编程的Flash ROMFlash ROM,能够在低电压环境下工作。也有,能够在低电压环境下工作。也有在线编程的可擦除功能。在操作中,当系统显示程序的错误需要进行在线编程的可擦除功能。在操作中,当系统显示程序的错误需要进行修改或需要对整个程序增加一些程序来实
7、现新的功能的时候,不需要修改或需要对整个程序增加一些程序来实现新的功能的时候,不需要把芯片拔插,从而保证了芯片的性能不受到破坏。此外把芯片拔插,从而保证了芯片的性能不受到破坏。此外AT89S52AT89S52的在的在线编程支持线编程支持ISPISP。v 综合实际情况来考虑,第二种方案相对较好,所以选择第二种方案。综合实际情况来考虑,第二种方案相对较好,所以选择第二种方案。Company Logo单片机芯片的选取v 方案一:方案一:v 采用矩阵键盘。当系统中需要安装按键开关数目多的采用矩阵键盘。当系统中需要安装按键开关数目多的时侯,一般情况下会使用矩阵键盘。时侯,一般情况下会使用矩阵键盘。CPU
8、对整个内部对对整个内部对应的端口进行连续地扫描才能够收集到数据。应的端口进行连续地扫描才能够收集到数据。v 方案二:方案二:v 采用独立按键。对程序的设计较为简单采用独立按键。对程序的设计较为简单,虽然会更多的虽然会更多的使用使用I/O口,但能够节省口,但能够节省CPU资源。资源。v 由于总系统的设计中所需按键不多,只有四个按键。因此由于总系统的设计中所需按键不多,只有四个按键。因此为了简化设计,减少成本。选择使用方案二。为了简化设计,减少成本。选择使用方案二。Company Logo按键控制的选取v 方案一:方案一:v 一般使用单片机本身内部的定时计数器设备,给总系一般使用单片机本身内部的定
9、时计数器设备,给总系统提供信号来源。在编写对时间准确记录的程序。从而减统提供信号来源。在编写对时间准确记录的程序。从而减少了芯片的使用,节约了成本。但在实际操作中往往出现少了芯片的使用,节约了成本。但在实际操作中往往出现时间有误差,且误差系数较大。时间有误差,且误差系数较大。v 方案二:方案二:v 选取选取DS1302时钟芯片。这种时钟芯片需要使用的功时钟芯片。这种时钟芯片需要使用的功率很少。并具有年、月、日、星期、时、分、秒计时功能,率很少。并具有年、月、日、星期、时、分、秒计时功能,闰年补偿功能闰年补偿功能1。工作电压。工作电压2.5V5.5V。v 因为本次设计中对于时间的精度比较高。所以
10、决定采用因为本次设计中对于时间的精度比较高。所以决定采用方案二。采用方案二。采用DS1302时钟芯片。时钟芯片。Company Logo时钟模块的选取v 方案一:方案一:v 一些相关的温度传感器对温度进行采集。主要是将从一些相关的温度传感器对温度进行采集。主要是将从外面采集到的信息经过一系列处理变换,最终获得的是数外面采集到的信息经过一系列处理变换,最终获得的是数字形式的信号。其获得温度示数的精度比较准确,可是传字形式的信号。其获得温度示数的精度比较准确,可是传感器的花费会很大,设计时需要的电路也很复杂。感器的花费会很大,设计时需要的电路也很复杂。v 方案二:方案二:v 采用采用DS18B20
11、芯片。它也是一种常用的温度传感芯片。它也是一种常用的温度传感器,其体积不大,抗干扰能力比较强,精确度也很准确,器,其体积不大,抗干扰能力比较强,精确度也很准确,一般测试的结果以一般测试的结果以912位数字量方式呈现的,而且只需位数字量方式呈现的,而且只需要简单的编程就可以实现,误差最大为要简单的编程就可以实现,误差最大为2度。度。v 综合实际情况,为了减少成本。决定采用方案二。综合实际情况,为了减少成本。决定采用方案二。Company Logo温度采集的选取v 方案一:方案一:v 采用动态显示方法。相应的制作会比较简单,主要还采用动态显示方法。相应的制作会比较简单,主要还是利用间断扫描法进行工
12、作,其制作出来的成本会比较低是利用间断扫描法进行工作,其制作出来的成本会比较低廉,体积也不大。廉,体积也不大。v 方案二方案二:v 采用采用1602A液晶显示屏来显示。可以将液晶屏直接液晶显示屏来显示。可以将液晶屏直接与单片机接口与单片机接口,使用的使用的LCD1602能够同时出现能够同时出现32个字符个字符,也可以实现的其他内容。且耗能很小,不具有任何辐射,也可以实现的其他内容。且耗能很小,不具有任何辐射,屏幕调节起来也很方便。唯一的不足可能是亮度不够。屏幕调节起来也很方便。唯一的不足可能是亮度不够。v 综合实际情况考虑。由于方案二减少了硬件器件的使用,综合实际情况考虑。由于方案二减少了硬件
13、器件的使用,集成度也高,消耗的功率很少等特点。所以选择方案二。集成度也高,消耗的功率很少等特点。所以选择方案二。Company Logo数据显示的选取设计要求设计要求硬件设计硬件设计软件设计软件设计设计要求设计要求v(1)具有年、月、日、星期、时、分、秒的计时功能;)具有年、月、日、星期、时、分、秒的计时功能;v(2)具有年、月、日、星期、时、分、秒的校准功能;)具有年、月、日、星期、时、分、秒的校准功能;v(3)具有温度采集和显示的功能;)具有温度采集和显示的功能;v(4)闹钟的定时:小时、分钟、秒。)闹钟的定时:小时、分钟、秒。Company LogoCompany Logo3.硬件设计A
14、T89S52电源模块温度模块独立按键时钟模块显示模块闹钟模块Company Logo时钟芯片DS1302的接口设计 如右图所示。其中Vcc1,Vcc2它们分别是对时钟模块提供电源的,Vcc1是备份电源,而Vcc2则是主电源。在整个供电的系统中,由于VCC1是辅助电源,因此它的用途都是提供所需要的低电源和低功率。确保能够在出现故障不能提供主电源时,可以及时的保存好相关信息与数据。VCC2在系统中起到主要作用。主要提供电力的供应。DS1302由VCC1或VCC2 两者中较大者供电。当VCC2大于VCC1+0.2V时,VCC2给DS1302供电。当VCC2小于VCC1时,DS1302由VCC1供电。
15、对DS1302进行初始化设置,操作位:先把串行时钟线端置于 低电平,接着把复位的端口置于高电平,最后通过串行时钟线提供时钟信号脉冲。Company Logo温度芯片DS18B20的接口设计 由于整个系统的温度模块使用的是DS18B20,本身只用一根数据线就可以进行数据之间的传输,也叫一线总线。如下图右图所示,从图上可以看出,DS18B20的DQ端口跟单片机AT89S52的P3.7端口之间进行信息数据传送。此外Vcc对应接电源,GND直接是接地。这样就能够保证温度芯片与单片机能够有效的连接,从而传输采集到信息。Company LogoLCD的接口设计 如右图所示,首先数据的输入输出端口的D0D7
16、依次跟单片机的P0口所对应的07的端口进行信息传输;同时在与数据线相连接的输入端口处,由于P0口内部没有增加驱动能力的电阻,必须要在连接线上接一个10K的电阻;LCD的RS管脚与P2.5口进行信息传输;LCD的RW管脚会与P2.6口进行信息传输;LCD的EN始能端口则是连接P2.7端口进行信息传输;而引脚BLK、BLA分别作为背光的正极和负极,连接上电源后会是LCD显示屏内部的背光灯打开。Company Logo按键模块的接口设计 由上图可以看出4个独立按键各自跟单片机的P3.0端口、P3.1端口、P3.2端口、P3.3端口相互连接。对以上4个按键作简要说明:K1SET 键,K2UP键,K3D
17、OWN键,K4seeNL-NZ键。其中SET 键:当启动SET键的时候,单片机的I/O口会检测到低电流来控制系统,此时就会处于一个时间校准状态,接着再按一下,则就会变成是对秒模块进行调整的状态。再按一下就会进入到对分模块的调整,从而依此类推,对设计的每个计时显示模块都会有校准;UP键:启动SET键的功能,UP键根据实际要求对SET的可以选定的项(如:小时)中的数据显示模块作加的功能处理;DOWN键:启动SET键的功能,DOWN键就会根据实际要求对SET的可以选定的项(如:小时)中的数据显示模块作减的功能处理;seeNL-NZ键:当启动seeNL-NZ键,系统就会进入到闹钟的调时功能,首先按第一
18、下,显示屏就会显示当前的阴历时间及润平年的显示,再按第二下,就会进入闹钟模式,可以通过设定某个时间来实现闹钟相应。Company Logo复位按键的接口设计 设计电路图如右图所示。在整个系统接通电流后,因为电流经过电容是对其充电,则在RST端会有一段时间的电流流过。随后整个系统进行正常运作后,再一次的去按下RES键,此时也是会有一段时间的高电平流过。这样就达到了通电的同时开关有复位的操作。这一次复位模块使用的是大小为10F的电容,10K的电阻。Company Logo蜂鸣器闹钟的接口设计 通过单片机传送给蜂鸣器一段低电平的时候,电流流过三极管使其导通,从而使得蜂鸣器会发出滴滴的声响,以此来作为
19、设计闹钟模块的闹钟叫声,设计的电路图上图所示,其电路接口与单片机的P2.2口相连接。Company Logo单片机最小系统的设计 单片机最小系统有单片机、时钟电路、复位电路组成,时钟电路选用了12MHZ的晶振提供时钟,作用为给单片机提供一个时间基准,其中执行一条基本指令需要的时间为一个机器周期,单片机的复位电路,按下复位按键之后可以使单片机进入刚上电的起始状态。P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78RST9P3.0(RXD)10P3.1(TXD)11P3.2(INT0)12P3.3(INT1)13P3.4(T0)14P3.5(T1)15P3.6(WR)
20、16P3.7(RD)17XTAL218XTAL119GND20(A8)P2.021(A9)P2.122(A10)P2.223(A11)P2.324(A12)P2.425(A13)P2.526(A14)P2.627(A15)P2.728PSEN29ALE/PROG30EA/VPP31(AD7)P0.732(AD6)P0.633(AD5)P0.534(AD4)P0.435(AD3)P0.336(AD2)P0.237(AD1)P0.138(AD0)P0.039VCC40U389C51/C5212MHzC2230C2330R2710K+C110uF1234KSRESETVCCVCC123456789J
21、?CON9Company Logo软件设计 主程序开始初始化,并打开中断,然后执行扫描闹钟、键盘及读取18B20值。当有K1键按下时,执行时钟设置,当有K4键按下时,则进入闹钟设置,无论是时钟还是闹钟,设置完后退出,温度、时钟恢复实时显示。主程序流程图如图上图所示:Company Logo DS1302与DS18B20读写程序的设计设计 当对时钟芯片和单片机之间将数据进行处理交换,第一步是从单片机本身内部发送命令字节传送给相关的电路,这些被传送的地址的最高位MSB只能是高点平,如果D7为低电平,则时钟芯片DS1302停止对数据的写操作,即写保护;D6=0,指定时钟数据,D6=1,指定RAM数据
22、;在单片机中的D1、D2、D3、D4、D5都是作为输入或输出的寄存器来使用的;其中当D0是低电平时,此次的操作指定为写操作,当D0是高电平时,此次的操作指定为读操作。由于DS18B20内部是以一线总线的数字方式进行数据传输的,所以对于它的运行操作只是会对数据进行初始化的处理、写数据和读数据这三种方面的运行操作。其中只有写数据的操作是单向的,而其他的两个操作都是双向的。Company Logo闹钟程序的设计 关于闹钟方面的设计,主要还是采用通过按键的控制对时间进行设置。首先闹钟模块是通过启动K1键和K4键来控制的。当按下K4键时,系统就会处于对闹钟时间的调制模块,发光的下标指向秒的位置,通过按U
23、P,DOWN键对显示示数进行设置,K1键被按下1、2、3次,就会进入到闹钟的秒、分、时的设置,从而达到电子钟的闹钟显示功能的要求。闹钟设计模块如图9所示。Company Logo系统原理图系统原理图P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78R ST9P3.0(R XD)10P3.1(TXD)11P3.2(INT0)12P3.3(INT1)13P3.4(T0)14P3.5(T1)15P3.6(W R)16P3.7(R D)17XTAL218XTAL119GND20(A8)P 2.021(A9)P 2.122(A1 0)P2.223(A1 1)P2.324(A
24、1 2)P2.425(A1 3)P2.526(A1 4)P2.627(A1 5)P2.728PS EN29ALE/PR OG30EA/VP P31(AD7)P0.732(AD6)P0.633(AD5)P0.534(AD4)P0.435(AD3)P0.336(AD2)P0.237(AD1)P0.138(AD0)P0.039VCC40U189 C5 2/S52321P1POW ERVCC112233445566S1SW ITCHbceQ190 12Y112 MHzC 330C 4301234K4seeNL-NZR 410 KVCCVCCbceQ290 12VCCR 22.2KLS 1SP EAKE
25、RGND1VCC2V03RS4R/W5EN6D07D18D29D310D411D512D613D714A15K16D2LC D_16 02VCCVCC1234K1SET1234K2UP1234K3DOW NR 32.2KC OM1R 12R 23R 34R 45R 56R 67R 78R 8910 310 KVCCVCCVcc21X12X23GND4C E5I/O6SC LK7Vcc18U2DS13 02P23VY232.7 68+C 110 uFGND1DQ2VCC3U3DS18 B2 0R 510 KVCCVCCR 610 KR 71.5KCompany Logo总结总结 从整个设计过程中
26、,自己还是对单片机这一块的知识领域有了进一步的了解和认识。关于单片机的整体运作方面自己还存在一些不懂得问题,需要在日后的实践中来完善自己的能力。但就对于在单片机的外部电路设计和内部的程序编写方面,感觉自己在这些方面的能力还是有不少的长进。因为需要自己来设计程序,所以在前期还是查阅了大量的论文资料,同时也和身边的同学一起讨论了程序中一些比较容易混淆的段落。总之,在这一次的设计中,自己虽然是完成了电子中的设计,但我也知道论文设计本身也会存在一些不足的地方,有些方面没有做到改善,需要自己进行进一步的改进。毕竟这一次的学习是一个不断积累的过程,只有经过不断的学习和实践,才可以提高自己的综合素质。Company Logo