




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于单片机STC89S52勺数字钟设计课题:基于单片机的数字钟设计_学院(部):电子与信息工程系_专业班级: 电信1004班学生姓名:刘祥指导教师:张士军2014年6月1. 引言随着科技的不断进步和发展,单片机的使用已经渗透到我们日常生活当中的各个 领域,几乎很难找到有哪个领域没有使用单片机的踪迹。 导弹的导航装置,飞机上各 种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处 理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、 全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用 说自动控制领域的机器人、智能仪表、医疗器械了
2、。本文设计的电子万年历属于小型智能家用电子产品。 利用单片机进行控制,实时 时钟芯片进行记时,外加掉电存储电路和显示电路, 可实现时间的调整和显示。电子 万年历既可广泛应用于家庭,也可应用于银行、邮电、宾馆、饭店、医院、学校、企 业、商店等相关行业的大厅,以及单位会议室、门卫等场所。因而,此设计具有相当 重要的现实意义和实用价值。2. 关于单片机2.1单片机的发展单片机自问世以来,性能不断提高和完善,其资源又能满足很多应用场合的需要, 加之单片机具有集成度高、功能强、速度快、体积小、功耗低、使用方便、价格低廉 等特点,因此,在工业控制、智能仪器仪表、数据采集和处理、通信系统、高级计算 器、家用
3、电器等领域的应用日益广泛,并且正在逐步取代现有的多片微机应用系统。 单片机的潜力越来越被人们所重视。特别是当前用 CMOS:艺制成的各种单片机,由 于功耗低,使用的温度范围大,抗干扰能力强、能满足一些特殊要求的应用场合,更 加扩大了单片机的应用范围,也进一步促使单片机性能的发展。而现在单片机在液晶 显示上也有了很多的应用。随着科技不断进步,各种显示技术如雨后春笋般诞生,由于液晶显示器(LCD具有轻 薄短小、低耗电量、无辐射危险,平面直角显示以及影像稳定不闪烁等优势,在近年 来价格不断下跌的吸引下,逐渐取代CRT之主流地位,显示器明日之星架势十足。液 晶显示器件从初期的实验室到现在的生产厂家,已
4、形成较大规模的生产能力,使液晶 显示形成了独立的产业部门。 而今,液晶显示已经应用于人们生产、 生活中的各个领 域,人们时时处处都要与这一神奇而又普通的产品打交道。液晶显示技术以它跨越多学科的工作原理,高技术、专业化的制造工艺使它披上了一层神秘的面纱, 而它轻巧 薄形的体态,独特而理想的性能以及广泛的应用价值,又使它充满魅力,深深地吸引 着人们。在单片机技术日趋成熟的今天,其灵活的硬件电路的设计和软件的设计, 让单片 机得到了广泛的应用,几乎是从小的电子产品,到大的工业控制,单片机都起到了举 足轻重的作用。单片机小的系统结构几乎是所有具有可编程硬件的一个缩影,可谓是“麻雀虽小,肝胆俱全”,单片
5、机的学习和研究是对微机系统学习和研究的简捷途径。在目前,用户对单片机的需要越来越多,但是,要求也越来越高,因此,单片机 也在不断的发展和进步。单片机的技术进步主要反映在内部结构、功率消耗、外部电 压等级以及制造工艺上。在这几方面,较为典型地说明了数字单片机的水平。下面分 别就这三个方面说明单片机的技术进步状况。(1) 内部结构的进步单片机在内部已集成了越来越多的部件, 这些部件包括一般常用的电路,例如: 定时器,比较器,A转换器,D /A转换器,串行通信接口, Watchdog电路,LCD控 制9器等。有的单片机为了构成控制网络或形成局部网,内部含有局部网络控制模块CAN。 例如,Infin
6、eon 公司的 C 505C, C515C,C167CR,C167CS-32FM, 81C90; Motorola 公司的68HC08AZ系列等。特别是在单片机C167CS-32FM中,内部还含有2个CAN。 因此,这类单片机十分容易构成网络。特别是在控制,系统较为复杂时,构成一个控 制网络十分有用。为了能在变频控制中方便使用单片机,形成最具经济效益的嵌入式控制系统。有 的单片机内部设置了专门用于变频控制的脉宽调制控制电路,这些单片机有Fujitsu公司的 MB89850 系列、MB89860 系列;Motorola 公司的 MC68HC08MR16、MR24 等。在这些单片机中,脉宽调制电路
7、有6个通道输出,可产生三相脉宽调制交流电压, 并内部含死区控制等功能。(2) 功耗、封装及电源电压的进步现在新的单片机的功耗越来越小, 特别是很多单片机都设置了多种工作方式,这些工作方式包括等待,暂停,睡眠,空闲,节电等工作方式。Philips公司的单片机P87LPC762是一个很典型的例子,在空闲时,其功耗为 1.5 mA而在节电方式中,其 功耗只有0.5mA。而在功耗上最令人惊叹的是 TI公司的单片机MSP43係列,它是一 个16位的系列,有超低功耗工作方式。它的低功耗方式有LPM1 LPM3 LPMQ种。当电源为3V时,如果工作于LMP1方式,即使外围电路处于活动,由于 CPU不活动,
8、振荡器处于14MHz这时功耗只有50?A在LPM3时,振荡器处于32kHz,这时功 耗只有1.3?A。在LPM4寸,CPU外围及振荡器32kHz都不活动,则功耗只有0.1?A。现在单片机的封装水平已大大提高,随着贴片工艺的出现,单片机也大量采用了 各种合符贴片工艺的封装方式出现,以大量减少体积。在这种形势中,Microchip公司推出的8引脚的单片机特别引人注目。这是PIC12CXX)系列。它含有0.52K程序 存储器,25128字节数据存储器,6个I/O端口以及一个定时器,有的还含4道A/D, 完全可以满足一些低档系统的应用。扩大电源电压范围以及在较低电压下仍然能工作 是今天单片机发展的目标
9、之一。目前,一般单片机都可以在3.35.5V的条件下工作。 而一些厂家,则生产出可以在2.26V的条件下工作的单片机。这些单片机有Fujitsu 公司的MB891989195, MB8912125A, MB8913C系列等,应该说该公司的F2MC-8L 系列单片机绝大多数都满足 2.26V的工作电压条件。而TI公司的MSP430X11系列 的工作电压也是低达2.2V的。(3)工艺上的进步现在的单片机基本上采用CMO技术,但已经大多数采用了 0.6?m以上的光刻工 艺,有个别的公司,如 Motorola公司则已采用0.35?m甚至是0.25?m技术。这些技 术的进步大大地提高了单片机的内部密度和
10、可靠性。单片机在目前的发展形势下,可靠性及应用越来越高的水平和互联网连接已是一种明 显的走向。所集成的部件越来越多;NS (美国国家半导体)公司的单片机已把语音、 图象部件也集成到单片机中,也就是说,单片机的意义只是在于单片集成电路, 而不 在于其功能了;如果从功能上讲它可以讲是万用机。原因是其内部已集成上各种应用 电路。功耗越来越低和模拟电路结合越来越多也将会成为单片机的一个发展的方向。 随着半导体工艺技术的发展及系统设计水平的提高,单片机还会不断产生新的变化和 进步,最终人们可能发现:单片机与微机系统之间的距离越来越小,甚至难以辨认。3.方案选择由于现在市面上的电子万年历的种类比较多,因此
11、到底选择什么样的方案在设 计中是至关重要的。正确地选择方案就可以使产品更加人性化,并且可以减小开发的难度,缩短开发的周期,降低产品的成本等等,因此就会被人们普遍接受,并且能够 更快地将产品推向市场实现其自身的价值。下面我们就拟订了两种方案,希望能够选择一种性价比高的方案。基于STC89C5单片机的电子万年历设计不使用时钟芯片,而直接用 STC89C52单片机来实现电子万年历设计。STC89C52 是一种带8K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS位微处理器, 俗称单片机。单片机的可擦除只读存储器可以反复擦写1000余次。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATM
12、E的 STC89C52是一种高效微控制器, 为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。若采用单片机计时,利用它的一个 16位定时器/计数器每50ms产生一个中断信 号,中断20次后产生一个秒信号,然后根据时间进制关系依次向分、时、日、星期、 月、年进位。这样就实现了直接用单片机来实现电子万年历设计。用单片机来实现电子万年历设计,无须外接其他芯片,充分利用了单片机的资源。 但是精度不够高,误差较大,掉电后丢失所有数据,软件编程较复杂。4. 摘要随着当今世界经济的快速发展和信息化时代的来临,各种各样的小型智能家电产品陆续出现在我们的生活当中。日历是人们不可或缺的日常用品。但一般日历都为纸
13、 制用品,使用不便,寿命不长。电子万年历采用智能电子控制和显示技术,改善了纸 制日历的缺陷。本设计以 STC89S5洋片机为核心,构成单片机控制电路, STC89C52 是一种带8K字节闪速可编程可擦除只读存储器(PEROM的低电压、高性能CMOS 8 位为控制器。该器件采用 ATMEL非易失存储器制造技术制造,与工业标准的80C51和80C52指令集和输出管脚相兼容。结合 DS1302时钟芯片和24C02 FLASH存储器, 完成时间的自动调整和掉电保护,全部信息用液晶显示。时间、日期调整由三个按键 来实现,并可对闹铃开关进行设置。日历能显示阳历和阴历年、月、日以及星期、时、 分、秒。在显示
14、阴历月份时,能标明是否闰月。关键词:电子万年历;单片机;时钟芯片;FLASH存储器;液晶显示5、项目概述设计并实现一个基于单片机的数字钟,能够显示年、月、日、时、分、秒等信息,并 支持时间的设定、闹钟等功能。5.1设计与实现背景采用单片机设计数字钟:时钟的生成、计数、译码显示、按键调时等均可以利用单片 机内部的功能模块完成。只要单片机内部具有定时器、中断、 I/O、RS232等模块就 能够满足选型基本要求,可用的单片机型号广泛、并且价格低廉。系统的精度能够保 证,如单片机选型恰当也能满足电池供电应用。此外,系统除了可以选用一片单片机 实现所有功能的方案外,还可以采用单片机 +时钟芯片、单片机+
15、显示芯片、单片机+ 时钟芯片+显示芯片等多芯片的各种设计方案。5.2项目功能指标5.2.1基本要求 基于单片机,单片机型号自选; 至少12位信息显示(年2位,月2位,日2位,时2位,分2位,秒2位), 显示可用LED数码管,也可用液晶显示; 精度要求:1小时误差1s; 可通过外部按键进行时间的设定; 系统稳定、可靠,不会有按键响应错误、运行状态混乱等不足。5.2.2发挥部分1)支持闹钟功能;2)支持2节以内电池供电;3)具有掉电存储功能,可以存储掉电前的系统时间信息,再次上电后系统自动调 用掉电时的时间,并从此时间开始新的计时;4)时间的设定、调整可通过 COM端口,由PC端程序完成;其它功能
16、。5.3系统框图数码管显示STC89C键盘矩阵模块52单片机电源LED状态显示5.4程序设计框图开始系统初始化显示年月日时分秒5.5模块说明a. 数码管显示模块:用数码管显示时间、环境温度、电网频率及电压温度转 换模块:测量环境温度,并经过模数转换后送单片机。b. 键盘和状态显示模块:用可编程并行I/O芯片8255接状态显示所用的发光 二极管及选择各功能的键盘。c. 电源模块:向各用电系统提供电源。d. LED状态显示模块:用于在调节数字钟年月日、时分秒时选定设置位的显 示。6. 实验开发板简介及开发板模块介绍6.1开发板简介本实验是采用HL-1型开发板,上面有8位LED流水灯,6位共阴极数码
17、管,USB供 电,USB下载,4X4矩阵键盘,STC89C52芯片,74HC573数码管锁存,复位电路 等,用上述几个模块就可以做出简单的数字钟。6.2STC89C52STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在 系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改 VCC143:T2EX.P1/ 匚230 Pt C ADCIF1-2E338h Pt 1 iADPK3匚437 PC2P1.4 C5305 PC 3 i:AD31(MCSI.P1.5 匚6迁 PC 4 (AD4(Miso Pi e c7343 PC f (A
18、DS i:SOP .P1.T匚&33 PC t (AM-1氏5T匚0二 PC 7 (AD7)(RXDF3lO 匚031p EppiTXD.PJ/ 匚1130p ALEROGPlTC匚122&b pser,FTT PJ.3L132S P2 7 (Alt:(TO. P3 4 匚14y P2 (Ali:i:T1 .PJ.5 匚1520 P2 f i:AT3:乔F3E匚Ifl25 P24A12)R2.PS.7 匚1724 P23(A11KTAL2 匚523 P2.2 (A10)XTAL1C1自22, P21 鬧GND匚2021 P2 0 (A8I进使得芯片具有传统51单片机不具备 的功能。在单芯片上,
19、拥有灵巧的8位 CPU和在系统可编程 Flash,使得 STC89C52为众多嵌入式控制应用系 统提供高灵活、超有效的解决方案。具 有以下标准功能:8k字节Flash,512 字节RAM,32位I/O 口线,看门狗定时器,内置 4KB EEPROM ,MAX810 复位电路,3个16位定时器/计数器, 4个外部中断,一个7向量4级中断结 构(兼容传统51的5向量2级中断结 构),全双工串行口。另外STC89C52可降至OHz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停 止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片
20、机一切工作停止,直到下一个中断或硬件复位为止。 最高运作频率35MHz,6T/12T可选。(1)主要电源引脚 VCC电源端 GND接地端(2)EA控制或与其它电源复用引脚 RST ALE/PROG、PSEN和EA/VPP RST复位输入端。当振荡器运行时,在该引脚上出现两个机器周期的高电平 将使单片机复位。 ALE/PROG当访问外部存储器时,ALE (地址锁存允许)的输出用于锁存地址 的低位字节。即使不访问外部存储器,ALE端仍以不变的频率(此频率为振荡器频率 的1/6 )周期性地出现正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。然而要注意的是:每当访问外部数据存储器时,将跳过一
21、个ALE脉冲。在对Flash 存储器编程期间,该引脚还用于输入编程脉冲(PROG)。 PSEN 程序存储允许(PSEN )输出是外部程序存储器的读选通信号。当STC89C52/LV5曲外部程序存储器取指令(或常数)时,每个机器周期两次PSEN有效(既输出2个脉冲)。但在此期间内,每当访问外部数据存储器时,这两次有效的 PSEN信号将不出现。 Ea/VPP外部访问允许端。要使CPU只访问外部程序存储器(地址为0000HH FFFFH,则EA端必须保持低电平(接到 GND端)。当EA端保持高电平(接VSS端) 时,CPU则执行内部程序存储器中的程序。(4)输入/输出引脚 P0.0 P0.7、P1.
22、0P1.7、P2.0P2.7 和 P3.0P3.7 P0端口( P0.0P0.7 ) P0是一个8位漏极开路型双向I/O端口。作为输出 口用时,每位能以吸收电流的方式驱动 8个TTL输入,对端口写1时,又可作高阻抗 输入端用。 P1端口( P1.0P1.7 ) P1是一个带有内部上拉电阻的 8位双向I/O端口。P1的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。作输入口时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。 P2端口 (P2.0P2.7) P2是一个带有内部上拉电阻的 8位双向I/O端口。P
23、2的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。P2作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。 P3端口( P3.0P3.7) P3 口管脚是8个带内部上拉电阻的双向I/O 口,可接收输出4个TTL门电流。当P3 口写入“ T后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流,这是由于上拉的缘故。 P3 口也可作为STC89C52勺一些特殊功能,这些特殊功能见表 3-1。6.3 6位共阴极数码管与74HC573数码管锁存器6.3.1 6位共阴
24、极数码管可显示内容:数字、小数点和部分英文字符、符号。特点:自发光、亮度高,特别适合环境亮度低的场合使用。、牢固,不怕冲击。数码管是一种半导体发光器件,其基本单元是发光二极管。6位共阴极数码管采用动态显示驱动方式数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码 管 的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形, 取决于单片机对位选通 COM端电路的控制,所以我们只要 将需要显示的
25、数码管的 选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制 各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流 显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据, 不会有闪烁感,动态显示的效果和静态显示是一 样的,能够节省大量的I/O端口,而且功耗更低。6.3.2 74HC573数码管锁存器SL74HC573跟LS/AL573的管脚一样。器件的输入是和标准 CMOS ? 输出兼容的;加上拉电阻,他们能和LS/ALST
26、TL输出兼容。? 当锁存使能端为高时,这些器件的锁存对 于数据是透明的(也就是说输出同步)。当锁 存使能变低时,符合建立时间和保持时间的数 据会被锁存。74HC573和74LS373原理一样,8数据锁存 器。主要用于数码管、按键等的控制。HL-1/HJ-3G/HJ-C52用于控制驱动数码管,也可以 用于控制驱动8X8点阵管。共阴数码管字形码表0x3f , 0x06,0x5b , 0x4f , 0x66 ,012340x6d , 0x7d , 0x07,0x7f , 0x6f ,567890x77,0x7 c , a blACH EN/BLE :斗 A1niiTPirTFNULRjF0x39,0
27、x5e , 0x79,0x71 , 0x00 c d e f g章土主D!15?T5T5c c affiC573J VCC数 码管的ABCDE FGH对应74HC573-1苦片遽至 3二处丄巳二WseUDoId 口二W m U H 工 口 二 | 工 L: H - 口 Z:-R5 善予 flQQQW3QSQQIQ I 3 3 4 xw 7 * 1DR md!De-DwD0D7分 别 按卩(1O(U7 口临位其阴数码管模快w&milrDT4X 4矩阵键盘矩阵键盘的优点:当键数较多时,可以节约大量的I/O 口资源。KIe 証 Pse|eePSS3P3.0WRRD岛独立键盘碑翌門厂Bese門厂匪牡牛
28、厂匪詰旷S9P3.1S10SJ4SUS12SIC厂匪露旷 厂SESEf 厂fifeSEfi4X4矩阵键盘P3.2JNT1LCDENRSKD7关键技术及实施描述7.1总体程序流程图开始时间、定时器初始化判断是否为闰年判断按键次数对LED灯进行设定J 定时器溢出后产生中断,时间间隔设定为1S自动走时进位系统按键输入扫描进行年月日或者时分秒的调整将结果送入六位数码管显示进 行年月日或时分秒的显示7.2闰年判断过程将年份后两位除以四,能够整除的是闰年,标志位leap为1,不能整除的是平年,标志位为07.3二月份28日和29日的处理将闰年和平年的12个月份分别列出来,形成两个一维数组,然后将两个数组合并
29、形成一个二维数组,在上述闰年判断过程中有一个标志位,当leap为1时,在进行月的调整时,选择第一个数组,2月为28天;当leap为0时,选择第二个数组,2月 为29天。7.4定时器延时模块本实验采用定时器溢出中断的方式来进行延时,先简要介绍一下STC89C52内部计时 器及中断方式定时器结构定时器实质是加一计数器,有高八位和第八位两个寄存器组成。 TMOD是定时/计数 器的工作方式寄存器,确定工作方式和功能; TCON是控制寄存器,控制T0、T1的 启动和停止及设置溢出标志。加1计数器输入的计数脉冲有两个来源:一个是由系统的时钟振荡器输出脉冲经12分频后送来;一个是T0或T1引脚输入的外部脉冲
30、源。每来一个脉冲计数器加1,当加到计数器为全1时,再输入一个脉冲就使计数器回零,且计数器的溢出使TCON中TF0或TF1置1,向CPU发出中断请求(定时计数器中断允许时)。如果定时计数 器工作于定时模式,则表示定时时间已到;如果工作于计数模式,则表示计数值已满。 可见,由溢出时计数器的值减去计数初值才是加1计数器的计数值。7.4.1工作方式寄存器TMOD工作方式寄存器用于设置定时 计数器的工作方式,低四位用于 T0,高四位用于T1, 其格式如下7萌和知Op字节地址:89H.GA1EC/t JMlM0GATEC/S-MlMOTMOD.GATE为门控位 C/TA为定时/计数模式选择位本实验选择定时
31、模式,M1、M2为工作方式设置位定时/计数器工柞方或设置表1 KLMO工作方式P说明门DO方式2押位定时/计数器卩01歳卩16位定时/计数器卩10方式2日位自动重装定时/计数器喂IIP方式加T0分施两个独辽的8位定时卅数器;H此方式停止计数石验只用到了定时器T0,故只关心低四位。且其工作方式选择方式 2, 8位自动重装定 时器。742控制寄存器TCONTCON的作用是控制定时器的启、停,标志定时器溢出和中断情况。低四位用于控制 外部中断,高四位用于定时器的启动和中断申请。其格式如下:位f-7*和3p2p1q帥字节地址:88H.TF1TR1TF0TR0h4TCON.各位定义如下:TF1 :定时器
32、1溢出标志位。当定时器1计满溢出时,由硬件使TF1置“ 1 ”,并且申 请中断。进入中断服务程序后,由硬件自动清“ 0”,在查询方式下用软件清“ 0” R1 :定时器1运行控制位。由软件清“ 0”关闭定时器1。当GATE=1,且INT1为高 电平时,TR1置“1”启动定时器1;当GATE=0,TR1置“ 1”启动定时器1。TF0 :定时器0溢出标志。其功能及操作情况同 TF1TR0 :定时器0运行控制位。其功能及操作情况同 TR17.5中断系统硬件结构7.5.1中断允许寄存器IE1也 2幻242CM字节地址:A8H|阴hid|es|ET1 ET0EXO1巴各单路开关总开关位査询机构INTOIE
33、OTFOETO中断入口IE1EXITF1ET1TIiES中断入口申断源志位高中断级中断请求内部 串行口申断源志位低中断级 中断请求RITR壽点衆FA7 TP器稈眾外部中断 请求0内部定时器0INT1外部中断諳求 内部 定时器1EXO(IE.O),外部中断 0 允许位;(interrupt controller of external interrupt)ETO(IE.I), 定时 / 计数器 T0 中断允 许位; (interrupt controller of Timer0 interrupt) EX1(IE.2),外部中断 0 允许位;ET1(IE.3),定时/计数器T1中断允许位;ES
34、(IE.4),串行口 中断允许位;(interrupt controller of serial port) EA (IE.7) , CPU 中 断允许(总允许)位(global all interrupt)本实验中EA=1,ET0=17.6延时时间相关参数的计算及设定本实验的理想情况是在定时计数器溢出的整数个周期恰好为1s,实际情况有所区别。本实验芯片内部时钟芯片工作频率为11M左右,在定时计数器溢满从0开始到256,所用的时间为1 十 11M X 12X 256=279.3us那么延时一秒钟所需的循环次数大约是:1 十 279.3X 1000000=3580这即是程序中t的设置,在实际调整
35、过程中,由于开关中断等所带来的误差,最后进 过微调,得到的最小误差的t值为3582。7.7六位数码管显示年月日/时分秒模块由前面模块介绍可知,六块数码管由两个数据寄存器控制,其中一块作用是输出自行 吗,另外一块作用是位选,选择要输出的数码管。以显示时分秒为例,说明输出模块 工作原理。将小时位除以10得到的整数位送至数码管最高位,将其余数送至数码管第二位。 以此类推,将分位、秒位分送 4位数码管显示。7.8按键扫描模块 先介绍按键防抖模块7.9键盘软件消抖按键一般是利用机械触点的闭合、断开作用,由于机械触点的弹性作用,在其闭合、 断开间均右抖动过程,抖动时间一般在5 10mS,稳定闭合时间由操作
36、人员的按键动 作决定,一般为零点几秒到几秒。为了保证单片机对一次闭合,仅作一次键输入操作, 必须在编程时候编写必要的程序代码来去除抖动影响,称键盘软件消抖。键盘扫描犍盘扌勺描7.10键盘扫描模块键盘有S1, S2, S3, S4其流程图如下SI键是否按下Y年月日显示时分秒显示S2键是否按下NY1N按下一次NY 11按下两次YN按下二次t NS3 S4扫描时/年调整Y8. 项目测试及结果实验测得用手机上秒表与之对比,一小时误差在4S以内,基本满足实验要求。主要器件清单经费用情况9. 项目实施总结及心得体会本设计硬件电路的使用比较简单,所用元器件较少,电路中使用了STC89C5单片机等主要芯片,实
37、现了预计的功能。在对芯片的管脚功能和用法有了充分的了解后, 根据原先的选择好的设计要求设计硬件电路, 包括单片机控制电路、时钟电路、显示 电路。然后通过软件编程,实现了对年、月、日、时、分、秒、闰年的自动调整,用按键进行控制,用数码管模块进行显示。电子万年历可以正常显示时间并进行时间调 整,基本完成了预期要实现的目标。经过调试,和多次改进,本设计达到了预期的效 果。数字钟可以正常显示时间和日期,并且对每个月份的天数进行了处理,特别是2月这个特殊月份,本设计可以自动从 2月28日直接过度到3月1日。而且,在本设 计中,闰年和平年的2月,其天数可以被正常区分,从而达到了实用和人性化的效果。 当然,
38、还可以根据需要,增加整点报时的功能,以使本设计更加完善。总之,本设计提供了一套行之有效的数字钟的设计方案,并且成本较低,具有较高的实用性。但是本设计中还有许多不尽如人意的地方,比如说体积过大不便于摆放, 误差比较大,功能比较简单。希望老师多多指点和帮助。10参考资料1. 微型计算机控制技术于海生编2. MCS-51系列单片机原理及应用1996.43. 综合电子设计与实践黄正谨等编4. 电子设计竞赛赛题解析黄正谨等编清华大学出版社1999.6孙涵芳等编北京航空航天大学出版社东南大学出版社2002.3东南大学出版社2003.5相关代码#in elude #defi ne uchar un sig
39、ned char#defi ne uint un sig ned int sbit dula=P2A6;/ 段选 sbit wela=P2A7; 位选 sbit s仁 P3A4;sbit s2=P3A5;sbit s3=P3A6;sbit s4=P3A7;sbit g_56=P1A0;sbit g_34=P1A2;sbit g_12=P1A5;uchar nian,y ue,ri,shi,fe n, miao,leap,flag, num;uint t;uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00
40、;uchar code table1213=0,31,28,31,30,31,30,31,31,30,31,30,31,0,31,29,31,30,31,30,31,31,30,31,30,31;void delay();void delay5(void);void delayhalf (void);void time0_i nit(void);void display_sfm(uchar shi_,uchar fen _,uchar miao_);void ini t_time();void display_ nyr();void keysca n();void mai n()dula=0;
41、wela=0;in it_time(); time0_i ni t();while(1)if(n ia n%4=0) leap=1;elseleap=0;if(num=1)g_56=g_56; g_34=0; g_12=0; delay();if(num=2)g_56=0; g_34=g_34; g_12=0;delay();if(num=3)g_56=0;g_34=0; g_i2=g_i2; delay(); if(num=O)g_56=0;g_34=0;g_i2=0;if(t=3582)t=0;miao+;if(miao=60)miao=0;fen+;if(fen=60)fen=0;shi
42、+;if(shi=24)shi=0;ri+;if(ri=(table1leapyue+1) ri=1;yue+;if(yue=13)yue=1;nian+;if(n ia n=100)nian=0;if(flag=O)display_sfm(shi,fe n, miao); elsedisplay_ nyr();display_sfm (nian,y ue,ri); keysca n();void delay()un sig ned char a,b;for(b=102;b0;b-) for(a=3;a0;a_);void delay5(void)误差 5msun sig ned char a
43、,b;for(b=15;b0;b-) for(a=152;a0;a-);void delayhalf (void)误差 0.5sun sig ned char a,b,c;for(c=23;c0;c-) for(b=152;b0;b-)for(a=70;a0;a-);TMOD=0x02;定时器控制寄存器 THO=O;TLO=O;/TH0=(65536-50000)/256; /TL0=(65536-50000)%256;ET0=1;开定时器T0中断EA=1;开总中断TR0=1;/置位,开定时器 T0t=0;flag=O;num=0;g_56=0;g_34=0;g_12=0;shi=0; fen=0;miao=0;nian=13;yue=7; ri=3;void time0() interrupt 1/ 中断服务函数/TH0=(65535-50000)/256;/TL0=(65535-50000)%256;t+;void display_sfm(uchar shi_,uchar fen _,uchar miao_)wela=1;P0=0xfe;wela=0;P
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 金融科技在消费领域资源配置中的角色
- 消费升级背景下的融资模式创新
- 文化体制改革中的地方政府角色探析
- 深化工业园区改革创新的面临的问题、机遇与挑战
- 2025年装配式建筑施工员职业技能认证模拟试卷(装配式建筑施工技术)-装配式建筑装配式构件质量与安全
- 抽水蓄能对电力安全保障的贡献分析
- 2025汽车销售合同范文
- 基于大数据的医学教育个性化发展
- 中秋节品牌营销策略
- 动物世界解析
- 山东省济南市商河县2025届九年级下学期中考二模语文试卷(含答案)
- 知识产权国际保护课件
- 2024年枣庄滕州市中小学招聘教师笔试真题
- 法律文化-形考作业1-国开(ZJ)-参考资料
- 描绘人间温情-怎样刻画人物 课件-2023-2024学年高中美术人美版(2019)选择性必修1 绘画
- 职业技术学校中医康复技术专业人才培养方案
- 辽宁省名校联盟2025年高考模拟卷押题卷数学(三)
- 《人口与资源关系》课件
- 期末测试卷(A卷) 2024-2025学年人教精通版英语五年级下册(含答案含听力原文无音频)
- 药品理化检验培训
- 腹部带蒂皮瓣护理
评论
0/150
提交评论