2928.E基于单片机设计的数字钟 电子设计(代码请联系本人 ) 项目开发总结报告( ).doc
《2928.E基于单片机设计的数字钟 电子设计(代码请联系本人 ) 项目开发总结报告( ).doc》由会员分享,可在线阅读,更多相关《2928.E基于单片机设计的数字钟 电子设计(代码请联系本人 ) 项目开发总结报告( ).doc(11页珍藏版)》请在三一办公上搜索。
1、项目设计总结报告 引言用单片机来设计数字钟, 软件实现各种功能比较方便. 但因软件的执行需要一定的时间, 所以就会出现误差. 对比实际的时钟, 查找出误差的来源, 并作出调整误差的方法, 使得误差尽可能地小, 使得系统可以达到实际数字钟的允许误差范围内。.1编写目的基于单片机设计的数字钟精确度较高, 因为在程序的执行过程中, 任何指令都不影响定时器的正常计数。从而, 使数字钟的精度仅仅取决于单片机的产生机器周期电路和定时器硬件电路的精确度另外, 程序较为简洁, 具有可靠性和较好的可读性。如果我们想将它应用于实时控制之中, 只要对上述程序和硬件电路稍加修改, 便可以得到实时控制的实用系统, 从而
2、应用到实际工作与生产中去。1.2背景说明:数字电子钟的设计方法有多种, 例如, 可用中小规模集成电路组成电子钟, 也可以利用专用的电子钟芯片配以显示电路及其所需要的外围电路组成电子钟还可以利用单片机来实现电子钟等等。这些方法都各有特点, 其中, 利用单片机实现的电子钟具有编程灵活, 便于电子钟功能的扩充, 精确度高等特点。1.3定义单片机:将微处理器(CPU)、存储器、I/O接口电路和相应实时控制器件集成在一块芯片上,称其为单片微型计算机,简称单片机。 片内程序存储器普遍采用了Flash技术,使得在线编程ISP和在应用中编程技术IAP得以实现。 这两项技术是通过计算机的并口或串口对单片机进行程
3、序下载编程的,使单片机系统远程调试、升级成为现实。IAP还可以实现单片机在应用中的再编程,为仪器仪表的智能化升级提供了重要的技术手段。1.4参考资料1,胡汉才 单片机原理及其接口技术 北京 清华大学出版社,2,单片机仿真微机接口使用手册 无锡达爱思科教仪器厂结论系统的功能完全符合设计任务的要求, 经过大量的测试数据显示, 系统的可靠性已经完全达到了实际电子钟的设计要求. 同时系统具有很强的扩展性: 添加A D 转换器可更改成数值仪表,而添加D转换器则可以设计成波形发生器, 同时扩充串口的功能可以道到很好的计算机控制系统. 系统扩展图如图4.图4系统功能扩展原理图 通过焊接电路模拟板,使单片机的
4、功能实现,数字钟的定时,调时和闹钟。现将程序付下:功能说明:在上节介绍的简单单片机时钟基础上,硬件不变,而是通过软件扩展了时钟功能,使之成为带定时闹铃的时钟。程序清单0;-1 ;文件名称:SZ02.ASM2 ;程序功能:带定时闹铃时钟3 ;-4 ;* 时 钟(含插入闹铃)程序部分 *5 6; 程序初始化 7 ; 定义存放计时单元地址8 ;.9 ALB EQU 20H.0 ;闹铃设置标志10 ;. 11 BUF EQU 30H ;3033H 连续4字节存放显示器数据12 HOUR EQU 34H ;存放小时变量13 MIN EQU 35H ;存放分钟变量14 SEC EQU 36H ;存放秒钟变
5、量15 DEDA EQU 37H ;存放5 ms 计数值16 ;.17 HH EQU 38H ;闹铃设置小时变量18 MM EQU 39H ;闹铃设置分钟变量19 ;.20 ;按键输入引脚定义21 K1 EQU P2.4 ;按键1引脚定义22 K2 EQU P2.5 ;按键2引脚定义23 K3 EQU P2.6 ;按键3引脚定义24 K4 EQU P2.7 ;按键4引脚定义25 26 ;压电喇叭和指示灯引脚定义 27 SPK EQU P3.4 ;压电喇叭控制信号28 WLED EQU P1.0 ;工作指示灯引脚定义29 30 ;程序开始执行地址 31 ORG 0H ;程序代码由地址0开始执行3
6、2 JMP MAIN33 ORG 0BH ;定时器 0 中断地址设置34 JMP TO_SRV3536 ; 主 程 序 37 38 ;主程序 39 MAIN: ;开始40 ;.41 CLR ALB ;清除闹铃标志 42 ;.43 ACALL BZ ;压电喇叭连续两次鸣响一声44 ACALL BZ 45 ACALL LED_BL ;LED 闪动,表示程序开始执行46 ACALL INIT ;初始变化量47 ACALL INIT_TIMER ;设置定时器48 49 ;加载显示器初值数据50 MOV A, #0C0H 51 MOV P0, A 52 53 ;无穷循环54 LOOP: ;无穷循环55
7、ACALL CONV ;转换 时时 分分 数据56 ;.57 ACALL TIME_PRO ;检查闹铃时间 58 ;.59 ACALL DISP ;扫描显示 60 61 JB K1, M1 ;未按下K1键则继续扫描62 ACALL LED_BL ;LED闪动63 ACALL SET_TIME ;设置目前时间64 JMP LOOP ;继续循环执行65 66 ;设置闹铃时间 67 M1:JB K2,M2 ;未按下K2键则继续扫描68 ;.69 ACALL LED_BL 70 ACALL SET_ATIME ;设置闹铃时间71 ;.72 JMP LOOP ;继续循环执行73 74 M2:JB K3,
8、 M3 ;未按下K3键则继续扫描 75 JMP LOOP ;继续循环执行76 77 M3:JB K4, M4 ;未按下K4键则继续扫描78 ;.79 CPL ALB 80 JNB ALB,M3181 82 ;闹铃启动连续3次发出响声83 ACALL BZ84 ACALL BZ85 ACALL BZ86 ;.87 JMP LOOP ;继续循环执行88 ;.89 M31:90 ACALL BZ ;闹铃停止,发出一声响91 JMP LOOP ;继续循环执行92 ;.93 M4:94 JMP LOOP ;继续循环执行9596; 实现走时功能的子程序 9798 ;使用定时器0模式0计时99 INIT_T
9、IMER: ;初始化定时器,使用定时器0模式1计时100 MOV TMOD,#00000000B ;设置定时器0工作模式为0101 MOV IE, #10000010B ;启用定时器0中断产生102 MOV TL0, #(8192-4900)MOD 32 ;加载低字节103 MOV TH0, #(8192-4900)/32 ;加载高字节104 SETB TR0 ;启动定时器0开始计时105 RET106 ;107 ;中断服务程序108 TO_SRV: ;定时器0计时中断程序每隔5ms中断一次109 PUSH ACC ;将累加器放入堆栈110 MOV TL0, #(8192-4900)MOD 3
10、2 ;加载低字节111 MOV TH0, #(8192-4900)/32 ;加载高字节112 INC DEDA ;5ms计数值加1 113 ;秒输出114 MOV A, DEDA115 CJNE A,#200,TT1 ;是否1s到了116 MOV DEDA, #0 ;计数值清除为0117 CPL WLED ;LED灯亮灭变换118 INC SEC ;秒计数加1119 MOV A, SEC120 CJNE A, #60, TT1 ;是否1min到了121 ;分输出122 INC MIN ;分计数加1123 MOV SEC, #0 ;秒计数清除为0124 MOV A, MIN125 CJNE A,
11、 #60, TT1 ;是否1h到了126 ;时输出127 INC HOUR ;小时计数加1128 MOV MIN, #0 ;分计数清除为0129 MOV A, HOUR130 CJNE A,#24, TT1 ;是否24h到了131 MOV SEC, #0 ;秒钟变量清除为0132 MOV MIN, #0 ;分钟变量清除为0133 MOV HOUR, #0 ;小时变量清除为0134 TT1:135 POP ACC ;将累加器由堆栈取出136 RETI137138 ; 实现显示功能的子程序 139140 ;转换 时时:分分 数据141 CONV:142 ;转换小时数据143 MOV A, HOUR
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2928.E基于单片机设计的数字钟 电子设计代码请联系本人 项目开发总结报告 2928. 基于 单片机 设计 数字 电子设计 代码 联系 本人 项目 开发 总结报告
链接地址:https://www.31ppt.com/p-4146124.html