《单片机电子时钟毕业论文设计.docx》由会员分享,可在线阅读,更多相关《单片机电子时钟毕业论文设计.docx(22页珍藏版)》请在三一办公上搜索。
1、单片机电子时钟的设计摘要单片机自 20 世纪 70 年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用 很广、发展很快。单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性 高、灵活性好、开发较为容易。由于具有上述优点,在我国,单片机已广泛地应用在工业自动化 控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而 51 单 片机是各单片机中最为典型和最有代表性的一种。这次毕业设计通过对它的学习、应用,以 AT89S51 芯片为核心,辅以必要的电路,设计了一个简易的电子时钟,它由 4.5V 直流电源供 电,通过数码管能够准确显示时间,调整时间,从
2、而到达学习、设计、开发软、硬件的能力。关键词: 单片机 AT89S 摘 要 IAbstract 错 误!未定义书签。第一章前言 0第二章方案论证与比较 12.1 数字时钟方案 12.2 数码管显示方案 1第三章 系统设计 23.1 总体设计 23.1.1 系统说明 23.1.2 系统框图 23.2 模块设计 33.2.1 电源部分 33.2.2 复位电路 33.2.3 程序下载接口 43.2.4 位选部分 43.2.5 数码管的连接电路 53.2.6 控制部分 5第四章原理图与PCB图7第五章软件设计 85.1 程序流程图 95.2 源程序 11第六章总结 186.1 物品清单与元件特性 18
3、6.2 设计总结 19参考文献( References): 19致 谢 错误!未定义书签。第一章、, 、-前言时钟,自从它发明的那天起,就成为人类的朋友,但随着时间的推移,科学技术的不断发 展,人们对时间计量的精度要求越来越高,应用越来越广。怎样让时钟更好的为人民服务,怎样 让我们的老朋友焕发青春呢?这就要求人们不断设计出新型时钟。现今,高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都 采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调校,数字式电子钟用集 成电路计时时,译码代替机械式传动,用LED显示器代替显示器代替指针显示进而显示时间,减小了计时误差
4、,这种表具有时,分,秒显示时间的功能,还可以进行时和分的校对,片选的灵活 性好。时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机 应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶 振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时 钟,即定时时间,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现, 在对时间精度要求很高的情况下,通常采用这种方法,典型的时钟芯片有: DS1302 , DS1288
5、7 , X1203 等都可以满足高精度的要求。本文主要介绍用单片机内部的定时 /计数器来实现电子时钟的方法,本设计由单片机AT89S51芯片和 LED 数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。第二章 方案论证与比较2.1 数字时钟方案数字时钟是本设计的最主要的部分。根据需要,可利用两种方案实现。方案一:本方案采用 Dallas公司的专用时钟芯片 DS12887A该芯片内部采用石英晶体振荡 器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工 作,芯片内部包含锂
6、电池。当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系 统。而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确 的时间。方案二:本方案完全用软件实现数字时钟。原理为:在单片机内部存储器设三个字节分别存 放时钟的时、分、秒信息。利用定时器与软件结合实现 1 秒定时中断,每产生一次中断,存储器 内相应的秒值加 1;若秒值达到 60,则将其清零,并将相应的分字节值加1;若分值达到 60,则清零分字节,并将时字节值加1;若时值达到 24,则将十字节清零。该方案具有硬件电路简单的特点。但由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。而且,由于是软
7、件实现,当单片机不上电,程序不执行时,时钟将不工作。基于硬件电路的考虑,本设计采用方案二完成数字时钟的功能。2.2 数码管显示方案方案一:静态显示。所谓静态显示,就是当显示器显示某一字符时,相应的发光二极管恒定 的导通或截止。该方式每一位都需要一个 8 位输出口控制。静态显示时较小的电流能获得较高 的亮度,且字符不闪烁。但当所显示的位数较多时,静态显示所需的I/O 口太多,造成了资源的浪费。方案二:动态显示。所谓动态显示就是一位一位的轮流点亮各个位,对于显示器的每一位来 说,每隔一段时间点亮一次。利用人的视觉暂留功能可以看到整个显示,但必须保证扫描速度足 够快,字符才不闪烁。显示器的亮度既与导
8、通电流有关,也于点亮时间与间隔时间的比例有关。 调整参数可以实现较高稳定度的显示。动态显示节省了 I/O 口,降低了能耗。从节省 I/O 口和降低能耗出发,本设计采用方案二。AVV*第二早系统设计3.1总体设计3.1.1系统说明利用单片机(AT89S51)制作简易电子时钟,由六个 LED数码管分别显示小时十位、小时个 位、分钟十位、分钟个位、秒钟十位、秒钟个位。6个PNP管(9012)分别控制六个数码管的亮灭,一个按键用于时间调整。3.1.2系统框图图3-13.2模块设计3.2.1电源部分J2p30J31丄nVCCp31vcc图3-2如图3-2所示,从外部引入 4.5V的直流电,为单片机、复位
9、电路提供电源。3.2.2复位电路S1RESET图3-3如图3-3所示,复位电路主要由型号为 1N4148的二极管,型号为 10UF/16V的电解电容,型 号为104的瓷片电容,10K的电阻以及按键 S1构成,S1接芯片的相应引脚 RST,当开关按下时 引脚RST为高电平1,断开时引脚为低电平3.2.3程序下载接口7P1P16RSTP15I23456789100 000 0AT89S ISP图3-4如图3-4所示,由AT89S ISP构成的两排十针下载口,板图上有一个小方框,为1号引角;下载线的凸口为正方向,凸口的右侧边的第一个插孔为1号引角。3.2.4位选部分123456图3-5图3-5为位选
10、电路,三极管的集电极接数码管的公共端,当P2 口对应的引脚输出高电平时三极管导通,对应的数码管显示数据。这样,在同一时刻,6位LED中只有选通的那1位显示出字符,而其他5位则是熄灭的。同样,在下一时刻,只让下一位的位选线处于选通状态,而其他个 位的位选线处于关闭状态,在段码线上输出将要显示字符的段码,则同一时刻,只有选通位显示 出相应的字符,而其他各位则是熄灭的。如此循环下去,就可以使各位显示出将要显示的字符。 虽然这些字符是在不同时刻出现的,而在同一时刻,只有一位显示,其他各位熄灭,但由于 LED的余辉和人眼的视觉暂留作用,只要每位显示间隔足够短,则可以造成多位同时亮的假 象,达到同时显示的
11、效果。3.2.5数码管的连接电路SE&1弧血SE&3SEtHSE图3-6SEG6图3-6为数码管的引脚图,每位的段码线(a,b,c,d,e,f,g,dp)分别与1个8位的锁存器输出相连,由 AT89S51控制组合0 9十个数据,如令其显示1则b,c引脚(即2, 3引脚)送高电平,此时数码管显示1。由于各位的段码线并联,8位I/O 口输出段码对各个显示位来说都是相同 的。3.2.6控制部分C3C430pFIZZI Y1 刘pF 丁P10 1P11 2P1: 3P13 3pFj5pis eP16 7PIT 8踊丁 9P30 10KfTTP37応P33 13P34 14 pin?P3ri 16lS_
12、卫20U1ATB9S510 12_1 _1 11 ppp14151617血3031323334353637 PPPPRPPPPPP-PPXTAL1 XTAL2 VSSDorr02030405022eapEN2726252423222 120 sppppppppVCC40 T 39 POO38 PD13TPD23TFD434 PDF33 PH632 WIT3029VCC芻P2T 茁P2 & 笳P2525 P24函P2H22 P212】P20图 3-7AT89S51是美国ATMEL公司生产的低功耗,高性能 CMOS 8位单片机,片内含 4K bytes的 可系统编程的 Flash 只读程序存储器,
13、器件采用 ATMEL 公司的高密度,非易失性存储技术生 产,兼容标准 8051 指令系统及引脚。 AT89S51 提供以下标准功能: 4K 字节 Flash 闪速存储器, 128 字节内部 RAM , 32I/O 口线,看门狗( WDT ),两个数据指针,两个 16 位定时 /计数器,一 个 5 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。如图3-7所示,AT89S51有40引脚,双列直插(DIP )封装,所用引脚功能如下:1. VCC 运行时加 4.5V2. GND 接地3. XTAL1 振荡器反相放大器及内部时钟发生器的输入端4. XTAL2 振荡器反相放大器的输出端5.
14、 RST 复位输入,高电平有效,在晶振工作时,在RST引脚上作用2个机器周期以上的高电平,将使单片机复位。 WDT 溢出将使该引脚输出高电平,设置 SFT AUXR 的DISRTO位(地址8EH)可打开或关闭该功能。DISRTO位缺省为 RESET输出高电平打开状态。6. EA/VPP 片外程序存储器访问允许信号。欲使CPU仅访问外部程序存储器(地址为 0000H-FFFFH ), EA 端必须保持低电平(接地),如果 EA 端为高电平(接 Vcc 端), CPU 则执行内部程序存储器中的指令。7. P1 口 ,P2 口 P1,P2是一组带内部上拉电阻的 8位双向I/O 口。运行时通过 P1
15、口控制 驱动电路的工作,将数据送到数码管,显示相应的段码,为了达到减少功耗或满足端口对最大电流的限制,应加上一限流电阻。P2.0 P2.5 口控制数码管的位选,使六个数码管轮流显示数据,等于 1 时位选三极管导通,等于 0 时位选三极管截止。8. 无自锁开关一一(S2- P3.7)开关接相应引脚 P3.7,当开关按下时,相应引脚为低电平 0,断开时引脚为高电平 1。第四章原理图与PCB图加In!CCFC图4-1*XHHT图 4-2第五章 软件设计5.1程序流程图图z5.2源程序显示数 字P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.016 进制代码dp|gfedcba00011
16、11113FH10000011006H2010110115BH3010011114FH40110011066H501101101:6DH6011111017DH70000011107H8011111117FH9011011116FH表5-1 P1 口对应段码及数值:OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO。中断入口程序。OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOORG 0000H LJMP STARTORG 0003HRETIORG 000BHLJMP INTT0。程序执行开始地址。跳到标号START执行。外中断0中断程
17、序入口。外中断0中断返回。定时器T0中断程序入口。跳至INTTO执行ORG 0013H。外中断1中断程序入口RETI。外中断1中断返回ORG 001BHLJMP INTT1ORG 0023H。定时器T1中断程序入口。跳至INTT1执行。串行中断程序入口地址RETI。串行中断程序返回主程序。START: MOV R0,#70H。清 70H-7AH 共 11 个内存单元MOV R7,#0BH。clr P3.7。CLEARDISP: MOV R0,#00H。INC R0。DJNZ R7,CLEARDISP 。MOV20H,#00H。清 20H (标志用)MOV7AH,#0AH。放入 熄灭符 数据MO
18、VTMOD,#11H。设 T0、T1 为 16 位定时器MOVTL0,#0B0H。 50MS 定时初值( T0 计时用)MOVTH0,#3CH。 50MS 定时初值MOVTL1,#0B0H。 50MS 定时初值( T1 闪烁定时用)MOVTH1,#3CH。 50MS 定时初值SETBEA。总中断开放SETBET0。允许 T0 中断SETBTR0。开启 T0 定时器MOVR4,#14H。1秒定时用初值(50MS X 20)START1: LCALL DISPLAY 。调用显示子程序JNB P3.7,SETMM1。 P3.7 口为 0 时转时间调整程序SJMP START1。 P3.7 口为 1
19、时跳回 START1SETMM1: LJMP SETMM 。转到时间调整程序 SETMMooooooooooooooooooooooooooooooooooooooooo。 1 秒计时程序。ooooooooooooooooooooooooooooooooooooooooo。 T0 中断服务程序INTT0: PUSH ACC 。累加器入栈保护PUSHPSW。状态字入栈保护CLRET0 。关 T0 中断允许CLRTR0 。关闭定时器 T0MOVA,#0B7H。中断响应时间同步修正ADDA,TL0。低 8 位初值修正MOVTL0,A。重装初值(低 8 位修正值)MOVA,#3CH。高 8 位初值修正
20、ADDCA,TH0。MOVTH0,A。重装初值(高 8 位修正值)SETBTR0。开启定时器 T0DJNZR4, OUTT0。 20 次中断未到中断退出ADDSS: MOV R4,#14H。 20次中断到( 1 秒)重赋初值MOVR0,#71H。指向秒计时单元( 71H-72H )ACALL ADD1。调用加 1 程序(加 1 秒操作)MOVA,R3。秒数据放入 A ( R3为2位十进制数组合)CLRC。清进位标志CJNE A,#60H,ADDMMADDMM: JC OUTT0 ACALL CLR0 MOV R0,#77H ACALL ADD1 MOV A,R3 CLR C。小于 60 秒时中
21、断退出。大于或等于 60 秒时对秒计时单元清 0。指向分计时单元( 76H-77H )。分计时单元加 1 分钟。分数据放入 A清进位标志CJNE A,#60H,ADDHHADDHH: JCOUTT0。小于 60 分时中断退出ACALL CLR0。大于或等于 60 分时分计时单元清 0MOVR0,#79H。指向小时计时单( 78H-79H )ACALL ADD1。小时计时单元加 1 小时MOVA,R3。时数据放入 ACLRC。清进位标志CJNEA,#24H,HOUR 。HOUR: JCOUTT0。小于 24小时中断退出ACALL CLR0。大于或等于 24 小时小时计时单元清 0OUTT0: M
22、OV 72H,76H。中断退出时将分、时计时单元数据移MOV73H,77H。入对应显示单元MOV74H,78H。MOV75H,79H。POPPSW。恢复状态字(出栈)POPACC。恢复累加器SETBET0。开放 T0 中断RETI。中断返回ooooooooooooooooooooooooooooooooooooooooo 。 闪动调时 程 序 。T1中断服务程序,用作时间调整时调整单元闪烁指示INTT1:PUSH ACC。中断现场保护PUSHMOVPSWTL1, #0B0H。装定时器 T1 定时初值MOVTH1, #3CH。DJNZR2,INTT1OUT。 0.3 秒未到退出中断( 50MS
23、中断 6 次)MOVR2,#06H。重装 0.3 秒定时用初值CPL02H。 0.3 秒定时到对闪烁标志取反JB02H,FLASH1。 02H 位为 1 时显示单元 熄灭 MOV72H,76H。 02H 位为 0 时正常显示MOV73H,77H。MOV74H,78H。MOV75H,79H。INTT1OUT:POP PSW。恢复现场POPACC。RETI。中断退出FLASH1: JB01H,FLASH2。 01H 位为 1 时,转小时熄灭控制MOV72H,7AH。 01H 位为 0 时, 熄灭符 数据放入分MOV73H,7AH。显示单元( 72H-73H ),将不显示分数据MOV74H,78H。
24、MOV75H,79H。AJMPINTT1OUT。转中断退出FLASH2: MOV 72H,76H。01H位为1时,”熄灭符数据放入小时MOV73H,77H。显示单元( 74H-75H ),小时数据将不显示MOV74H,7AH。MOV75H,7AH。AJMPINTT1OUT。转中断退出。取当前计时单元数据到 A加 1 子 程 序 。 清零程序 。 。对计时单元复零用CLR0: CLR AMOV R0,ADEC R0MOV R0,A RET。清累加器。清当前地址单元。指向前一地址。前一地址单元清 0。子程序返回DECR0 。指向前一地址SWAP A。 A 中数据高四位与低四位交换ORLA,R0。前
25、一地址中数据放入 A 中ADDA,#01H。 A 加 1 操作DAA。十进制调整MOVR3,A。移入 R3 寄存器ANLA,#0FH。高四位变 0MOVR0,A。放回前一地址单元MOVA,R3。取回R3中暂存数据INCR0。指向当前地址单元SWAP A。 A 中数据高四位与低四位交换ANLA,#0FH。高四位变 0MOV R0,A。数据放入当削地址单元中RET。子程序返回ADD1: MOV A,R0ooooooooooooooooooooooooooooooooooooooooo。 时钟调整程序。当调时按键按下时进入此程序SETMM: cLR ET0 。关定时器 T0 中断CLR TR0 。关
26、闭定时器 T0LCALL DL1S 。调用 1 秒延时程序JB P3.7,CLOSEDIS 。键按下时间小于 1 秒,关闭显示(省电)MOVR2,#06H。进入调时状态,赋闪烁定时初值SETBET1。允许 T1 中断SETBTR1。开启定时器 T1SET2: JNBP3.7,SET1。 P3.7 口为 0(键未释放),等待SETB00H 。键释放,分调整闪烁标志置 1SET4: JBP3.7,SET3。等待键按下LCALLDL05S。有键按下,延时 0.5 秒JNBP3.7,SETHH。按下时间大于 0.5 秒转调小时状态MOVR0,#77H。按下时间小于 0.5 秒加 1 分钟操作LCALL
27、ADD1。调用加 1 子程序MOVA,R3 。取调整单元数据CLRC 。清进位标志CJNEA,#60H,HHH。调整单元数据与 60 比较HHH: JCSET4。调整单元数据小于 60转 SET4 循环LCALLCLR0。调整单元数据大于或等于 60 时清 0CLRC 。清进位标志AJMPSET4。跳转到 SET4 循环CLOSEDIS: SETB ET0。省电( LED 不显示)状态。开 T0SETBTR0 。开启 T0 定时器(开时钟)CLOSE: JBP3.7,CLOSE 。无按键按下,等待。LCALLDISPLAY。有键按下,调显示子程序延时削抖JB P3.7,CLOSE。是干扰返回
28、CLOSE 等待WAITH: JNB P3.7,W AITH 。等待键释放LJMPSTART1。返回主程序( LED 数据显示亮)SETHH: CLR 00H。分闪烁标志清除(进入调小时状态)SETHH1: JNB P3.7,SET5。等待键释放SETB01H 。小时调整标志置 1SET6: JBP3.7,SET7。等待按键按下LCALLDL05S。有键按下延时 0.5 秒JNBP3.7,SETOUT。按下时间大于 0.5 秒退出时间调整MOVR0,#79H。按下时间小于 0.5 秒加 1 小时操作LCALLADD1。调加 1 子程序MOVA,R3 。CLRC 。CJNEA,#24H,HOUU
29、 。计时单元数据与 24 比较HOUU: JCSET6。小于 24 转 SET6 循环LCALLCLR0。大于或等于 24时清 0 操作AJMPSET6。跳转到 SET6 循环SETOUT: JNB P3.7,SETOUT1 。调时退出程序。等待键释放LCALLDISPLAY 。延时削抖JNBP3.7,SETOUT。是抖动,返回 SETOUT 再等待CLR01H。清调小时标志CLR00H。清调分标志CLR02H。清闪烁标志中断CLRTR1。关闭定时器 T1CLRET1。关定时器 T1 中断SETBTR0。开启定时器 T0SETBET0。开定时器 T0 中断(计时开始)LJMPSTART1。跳回
30、主程序SET1: LCALL DISPLAY 。键释放等待时调用显示程序(调分)AJMP SET2 。防止键按下时无时钟显示SET3: LCALL DISPLAYAJMP SET4SET5: LCALL DISPLAYAJMP SETHH1。等待调分按键时时钟显示用。键释放等待时调用显示程序(调小时)SET7: LCALL DISPLAY。等待调小时按键时时钟显示用。防止键按下时无时钟显示SETOUT1: LCALL DISPLAYAJMP SETOUTAJMP SET6。退出时钟调整时键释放等待P3 口作。防止键按下时无时钟显示显示程序 。显示数据在 70H-75H 单元内,用六位 LED
31、共阳数码管显示, P0 口输出段码数据,扫描控制,每个LED 数码管亮1MS 时间再逐位循环。DISPLAY: MOV R1,#70H。指向显示数据首址MOVR5,#0FEH。扫描控制字初值PLAY: MOV A,R5。扫描字放入 AMOVP2,A。从P2 口输出MOVA,R1。取显示数据到 AMOVDPTR,#TAB。取段码表地址MOVCA,A+DPTR。查显示数据对应段码MOVP1,A。段码放入 P0 口LCALLDL1MS。显示 1MSINCR1 。指向下一地址MOVA,R5。扫描控制字放入 AJNBACC.5,ENDOUT 。 ACC.5=0 时一次显示结束RLA。 A 中数据循环左移
32、MOVR5,A 。放回 R5 内AJMPPLAY。跳回 PLAY 循环ENDOUT: SETB P2.5。一次显示结束,P2 口复位MOVP1,#0FFH。P0 口复位RET。子程序返回TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH。 1MS 延时程序, LED 显示程序用DL1MS: MOV R6,#14HDL1: MOV R7,#19HDL2: DJNZ R7,DL2DJNZ R6,DL1RET。20MS延时程序,采用调用显示子程序以改善LED的显示闪烁现象DS20MS: ACALLDISPLAYACALLDISPLAYACALLDISPLA
33、YRET。延时程序,用作按键时间的长短判断DL1S: LCALLDL05SLCALLRETDL05SDL05S: MOVR3,#20H 。 8 毫秒*32=0.196 秒DL05S1: LCALLDISPLAYDJNZRETR3,DL05S1END。程序结束第六章 总结6.1物品清单与元件特性表6-1物品清单:元件名称规格型号单位数量瓷片电容:104只1瓷片电容30P只2电解电容:47UF/16V :只1电解电容10UF/16V只2电阻10k:只1电阻4.7k只6-H- LJU 心片AT89S51:片1芯片座DIP40只1无源晶振12M只17段数码管0.5寸/共阴只6三极管9012个6二极管:
34、1N4148只1按键无自锁只2单排插针 1条1双排插针条1电池盒 :个1电路板9.55*5.664CM21表6-2 AT89S51功能特性:兼容MCS-51指令系统4k 可反复擦写(1000 次)ISP Flash ROM32个可编程I/O 口4.0-5.5V工作电压范围2个16位可编程定时/计数器全静态工作模式:时钟频率 0-33MHZ全双工UART串行中断口线128x8bit 内部 RAM6个中断源低功耗空闲和掉电模式中断唤醒省电模式3级程序加密锁看门狗(WDT)电路掉电标识和快速编程特性6.2 设计总结本设计能够很准确的走时,并能够通过硬件对时钟进行时间调整。功能介绍:1. 显示 XX
35、: XX : XX 时间2. 时间可调:调整键(S2)按下时间小于 1秒(t0.5s)分钟位闪亮,此时按下 S2键(t0.5s)时 钟位闪亮,此时按下 S2键(t0.5s),返回到正常显示状态。3. 下载线和电源线插接说明: 1.下载线插接说明:两排十针下载口,板图上都有一个小方框,为 1 号引角;下载线的凸口为正方向,凸口的右侧边的第一个插孔为1 号引角,这一点一定要切记,不然的话程序下载不进去。 2. 电源线插接说明:电池盒的红线为正, 黑线为负。板子所留出来的电源插口用VCC(表示电源正)和GND(表示电源负)标明。i. 调试要点:首先确保各器件的完好性,其次检测各芯片的电源线和地线是否
36、接 触良好,然后焊接器件,接好电源用万用表检测各电源端、地端的状态是否正 常。检查无误后插上 AT89S51 并烧写一简易的程序,观察电路是否能协同工 作。最后烧写工作程序,根据显示现象调试程序直至成功。上电运行时,数码 管开始显示 00: 00: 00,时钟开始走时。ii. 制作心得:在这次课程设计的调试过程中,我遇到很多问题,如:由于跳转指 令出错,导致整个程序在运行时进入死循环,修改时没有根据流程盲目查找原 因浪费许多时间,又由于考虑不周,时钟显示 29: 89。该电路缺少整点报时及 闹钟功能,由于能力和时间问题只能到此为止,很是遗憾,但在查找资料的过 程中学到了许多,同时在协作过程中增进同学间的友谊。参考文献( References):1 于海生微型计算机控制技术M 清华大学出版社 1999-62 孙涵芳.MCS-51系列单片机原理及应用M.北京航空航天大学出版社.1996-43 黄正谨综合电子设计与实践M 东南大学出版社 2002-34 杨欣等.电子设计从零开始 M .清华大学出版社. 2005-105 谢嘉奎.电子线路 M .高等教育出版社. 2003-2北京希望电子出版6 夏路易,石宗义电路原理图与电路设计教程Protel 99SE M社 20027 王毓银数字电路逻辑设计 M 高等教育出版社 2004-28 邱关源电路 M 高等教育出版社