




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程设计报告课程设计名称: 专业课程设计 课程设计题目: 电子表设计 专业班级: 测控技术与仪器0801班 姓 名: 申玉冰 学 号: 080401023 指导教师: 杨理践 成 绩: 2012年1月12日目录前 言2一.课设要求2二.电路设计31. 整体设计32. 分块设计32.1 输入部分32.2 输出部分42.3 晶振与复位电路53.总体显示设计54.总体闹钟显示6三.程序设计61.程序62.程序总的流程图14四.心得体会15五.参考文献15前 言 1957年,Ventura发明了世界上第一个电子表,从而奠定了电子时钟的基础,电子时钟开始迅速发展起来。20世纪末,电子技术获得了飞速的发展
2、,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 数字钟已成为人们日常生活中必不可少的必需品,广泛用于个人家庭以及办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。尽管目前市场上已有现成的数字钟集成电路芯片出售,价格便宜、使用也方便,但鉴于数字钟电路的基本组成包含了数字电路的主要组成部分,因此进行数字钟的设计是必要的,研
3、究数字钟及扩大其应用,有着非常现实的意义。单片机数字时钟就是其中的一款设计。它具有编程灵活,便于电子钟功能的扩充,即可用该电子钟发出各种控制信号,精确度高等特点,同时可以用该电子钟发出各种控制信号。单片机数字钟是单片机为核心。时钟,本设计是以单片机AT89C51配备LED数码显示管,数字钟采用24小时制方式显示时间。使人不仅仅是通过视觉来感受单片机数字钟带来的方便。一课设要求 1.显示时分秒,24小时格式 2.可自行设定初始时间,闹钟时间 3.具有闹钟报警功能 4.设计LED数据显示电路 5.以单片机为控制运算核心二.电路设计1. 整体设计 此次设计主要是应用单片机来设计电子时钟,硬件部分主要
4、分以下电路模块:显示电路用8个共阴数码管分别显示,小时、分钟和秒,通过动态扫描进行显示,从而避免了译码器的使用,同时节约了I/0端口,使电路更加简单。单片机采用AT89C51系列,这种单片机应用简单,适合电子钟设计。电路的总体设计框架如下:单片机晶振和复位输入部分输出部分2. 分块设计 模块电路主要分为:输入部分、输出部分、复位和晶振电路。2.1 输入部分 输入信号主要是各种模式选择和调整信号,由按键开关提供。在本实验中主要用用P1口输入按键信号,具体如下图所示: 图2.1 输入部分2.2 输出部分 本电路的输出信号为7段数码管的位选和段选信号,闹铃脉冲信号,提示灯信号。本实验的数码管是共阴的
5、,为了防止段选信号不能驱动数码管,故在P0口接上拉阻后,再送段选信号,以提高驱动,位选信号直接从P2口接入,如下图: 图2.2 输出部分2.3 晶振与复位电路本实验单片机时钟用内部时钟,模块如下: 图2.3 晶振电路复位电路为手动复位构成,模块如下: 图2.3 复位电路3.总体显示设计各模块拼接组合,电路总体设计图如下: 图3 总体显示设计4.总体闹钟显示闹钟显示如下图: 图4 总体闹钟显示三程序设计1.程序如下: ORG 0000H LJMP START ORG 000BH LJMP TIME;*初始化*START: MOV SP, #50H ;定义堆栈地址 MOV 20H,#00H ;定义
6、秒 MOV 21H,#00H ;定义分 MOV 22H,#0CH ;定义时 MOV 23H,#00H ;定义闹钟分钟 MOV 24H,#0AH ;定义闹钟小时 MOV 25H,#00H MOV 41H,#00H ;BCD秒 MOV 42H,#00H MOV 43H,#00H ;'-'字形码 MOV 44H,#00H ;BCD分 MOV 45H,#00H MOV 46H,#00H ;'-'字形码 MOV 47H,#02H ;BCD时 MOV 48H,#01H MOV 30H,#00H ;闹钟BCD分 MOV 31H,#00H MOV 32H,#00H ;'
7、-'字形码 MOV 33H,#00H ;闹钟BCD时 MOV 34H,#01H MOV 60H,#00H ;按键次数 MOV TMOD,#01H ;16位计数器 MOV TH0,#03CH ;赋初值 MOV TL0,#0B0H MOV IE,#82H ;中断允许 SETB TR0 ;启动T0 MOV R2,#14H MOV P2,#0FFH;*主程序*MAIN: JB P1.4,GB LCALL TIMEPRO ;调用闹钟判断GB: LCALL DISPLAY1 ;调用时间显示 JB P1.3,M1 ;P1.3=1时转移 S4没有按下 LCALL SETTIME ;调用SETTIME调
8、时子程序 LJMP MAINM1: JB P1.2,M2 ;P1.2=1时转移S3没有按下 LCALL SETATIME ;调用SETATIME子程序 LJMP MAINM2: JB P1.0,M4 ;P1.01时转移 S1没有按下 LCALL LOOKATIME ;调用LOOKATIME显示闹钟子程序M4: LJMP MAIN;*延时子程序*DELAY: MOV R4,#030HDL00: MOV R5,#0FFHDL11: MOV R6,#9HDL12: DJNZ R6,DL12 DJNZ R5,DL11 DJNZ R4,DL00 RET;*时间调整*SETTIME: ;设置时间 L0:
9、LCALL DISPLAY1 MM1: JB P1.3,L1 ;P1.3=1时转移 MOV C,P1.3 JC MM1 LCALL DELAY1 ;延时 JC MM1 MSTOP1: MOV C,P1.3 JNC MSTOP1 LCALL DELAY1 ;延时 MOV A,60H INC 60H CJNE A,#00H,HJ1 LJMP L0 HJ1: INC 22H ;小时自加一 MOV A,22H CJNE A,#18H,GO12 ;小时计数循环 MOV 22H,#00H ;复位 MOV 47H,#00H MOV 48H,#00H LJMP L0 L1: JB P1.1,L2 MOV C,
10、P1.1 JC L1 LCALL DELAY1 ;延时 JC L1 MSTOP2: MOV C,P1.1 JNC MSTOP2 LCALL DELAY1 ;延时 MOV C,P1.1 JNC MSTOP2 INC 21H ;分钟加一 MOV A,21H CJNE A,#3CH,GO11 ;分钟计数循环 MOV 21H,#00H ; 复位 MOV 44H,#00H MOV 45H,#00H LJMP L0 GO11: MOV B,#0AH DIV AB MOV 44H,B ; 将A的低4位存入44单元 MOV 45H,A ; 将A的高4位存入45单元 LJMP L0 GO12: MOV B,#0
11、AH DIV AB MOV 47H,B ;将A的低4位存入47单元 MOV 48H,A ;将A的高4位存入48单元 LJMP L0 L2: JB P1.0,L0 MOV C,P1.0 JC L2 LCALL DELAY1 ;延时 MOV C,P1.0 JC L2 STOP1: MOV C,P1.0 JNC STOP1 LCALL DELAY1 ;延时 MOV C,P1.0 JNC STOP1 MOV 60H,#00H LJMP MAIN;*设置闹钟*SETATIME: N0: LCALL DISPLAY2 MM2: JB P1.2,N1 MOV C,P1.2 JC MM2 LCALL DELA
12、Y1 ;延时 JC MM2 MSTOP3: MOV C,P1.2 JNC MSTOP3 LCALL DELAY1 ;延时 MOV A,60H INC 60H CJNE A,#00H,HJ2 LJMP N0 HJ2: INC 24H ;小时加一 MOV A,24H CJNE A,#24,GO22 ;小时计数循环 MOV 24H,#00H ;复位 MOV 33H,#00H MOV 34H,#00H LJMP N0 N1: JB P1.1,N2 MOV C,P1.1 JC N1 LCALL DELAY1 ;延时 JC N1 MSTOP4: MOV C,P1.1 JNC MSTOP4 LCALL DE
13、LAY1 ;延时 MOV C,P1.1 JNC MSTOP4 INC 23H ;分钟加一 MOV A,23H CJNE A,#60,GO21 ;分钟计数循环 MOV 23H,#00H ;复位 MOV 30H,#00H MOV 31H,#00H LJMP N0 GO21: MOV B,#0AH DIV AB MOV 30H,B ;将A的低4位存入30单元 MOV 31H,A ;将A的高4位存入31单元 LJMP N0 GO22: MOV B,#0AH DIV AB MOV 33H,B ;将A的低4位存入33单元 MOV 34H,A ;将A的高4位存入34单元 LJMP N0 N2: JB P1.
14、0 ,N0 MOV C,P1.0 JC N2 LCALL DELAY1 ;延时 MOV C,P1.0 JC N2 STOP2: MOV C,P1.0 JNC STOP2 LCALL DELAY1 MOV C,P1.0 JNC STOP2 MOV 60H,#00H LJMP MAIN;*闹钟判断*TIMEPRO: MOV A,21H MOV B,23H CJNE A,B,BK ;判断定时闹钟的分钟 MOV A,22H MOV B,24H CJNE A,B,BK ;判断定时闹钟的小时 LCALL TIMEOUT ;调用TIMEOUT BK:RET;*喇叭报警*TIMEOUT: X1: LCALL
15、BZ ;调用喇叭响应程序 LCALL DELAY ;延时 LJMP DISPLAY1 BZ: MOV C,25H.1 MOV P1.6,C CLR P1.7 MOV R7,#0FFH ;喇叭响应时间 T2: MOV R6,#0FFH T3: DJNZ R6,T3 DJNZ R7,T2 SETB P1.7 RET;*显示闹钟时间*LOOKATIME:LCALL DISPLAY2 MM: JNB P1.0,LOOKATIME LCALL DELAY1 LJMP MAIN DELAY1: MOV R4,#14H ;时间延时 DL001: MOV R5,#0FFH DL111: DJNZ R5,DL1
16、11 DJNZ R4,DL001 RET;*定时*TIME: PUSH ACC ;保护现场 PUSH PSW MOV TH0,#03CH ;初值 MOV TL0,#0B0H DJNZ R2,RET0 MOV R2,#14H MOV A,20H CPL 25H.1 CLR C INC A ;秒自加一 CJNE A,#3CH,GO1 ;秒计数循环 MOV 20H,#0 ;复位 MOV 41H,#0 MOV 42H,#0 MOV A,21H INC A ;分钟自加一 CJNE A,#3CH,GO2 ;分钟计数循环 MOV 21H,#0H ;复位 MOV 44H,#0 MOV 45H,#0 MOV A
17、,22H INC A ;小时自加一 CJNE A,#18H,GO3 ;小时计数循环 MOV 22H,#00H ;复位 MOV 47H,#0 MOV 48H,#0 AJMP RET0 GO1: MOV 20H,A MOV B,#0AH DIV AB MOV 42H,A ;将A的低4位存入42单元 MOV 41H,B ;将A的高4位存入41单元 AJMP RET0 GO2: MOV 21H,A MOV B,#0AH DIV AB MOV 45H,A ;将A的低4位存入45单元 MOV 44H,B ;将A的高4位存入44单元 AJMP RET0 GO3: MOV 22H,A MOV B,#0AH D
18、IV AB MOV 48H,A ;将A的低4位存入48单元 MOV 47H,B ;将A的高4位存入47单元 AJMP RET0 RET0: POP PSW ;恢复现场 POP ACC RETI;*显示子程序*DISPLAY1: MOV R0,#41H MOV R3,#0FEH MOV A,R3 PLAY1:MOV P2,A MOV A,R0 ;取要显示的数据 MOV DPTR,#DSEG1 ;指向字形段码首地址 CJNE R0,#43H,PAA ADD A,#0AH PAA:CJNE R0,#46H,PBB ADD A,#0AH PBB:MOVC A,A+DPTR ;查表取字形段码 MOV P
19、0,A ;指向P0口 LCALL DL1 MOV P2,#0FFH MOV A,R3 ;判断是否显示到最低位 RL A ;左移一位 CJNE A,#0FEH,LD1 RET LD1:INC R0 ;缓冲器地址加一 MOV R3,A LJMP PLAY1 DISPLAY2: PUSH ACC ;保护现场 PUSH PSW MOV R0,#30H MOV R3,#0F7H MOV A,R3 PLAY2: MOV P2,A MOV A,R0 ;取要显示的数据 MOV DPTR,#DSEG1 ;指向字形段码首地址 CJNE R0,#32H,PP ADD A,#0AH PP:MOVC A,A+DPTR
20、;查表取字形段码 MOV P0,A ;指向P0口 LCALL DL1 ;调用DL1 MOV P2,#0FFH MOV A,R3 ;判断是否显示到最低位 RL A ;左移一位 CJNE A,#0FEH,LD2 POP PSW POP ACC RET LD2:INC R0 ;缓冲器地址加一 MOV R3,A LJMP PLAY2 ;调用PLAY2 ;*DELAY*DL1: MOV R7,#20H DL: MOV R6,#20HDL6: DJNZ R6,$ DJNZ R7,DL RETDSEG1: DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H,090H,0BFH ;七段码表 END2.程序总的流程图闹钟调整时间调整 响铃响铃判断 显示闹钟S1按下?S3按下?S4按下? 显示时间S0闭合? 主程序 初始化 开 始NN YN
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广西桂林市本年度(2025)小学一年级数学统编版期末考试(上学期)试卷及答案
- 2025-2030年中国数码显微镜市场营运走势及投资前景展望研究报告
- 临床检验基础模考试题与答案
- 教科版2025年高三(最后冲刺)英语试卷含答案
- 广西柳州铁一中、南宁三中2025届高三下学期第六次检测英语试卷含解析
- 糖果与巧克力行业市场竞争态势与竞争策略分析案例案例考核试卷
- 石油批发市场供应链风险管理考核试卷
- 职业中介服务的行业质量管理与提升考核试卷
- 乐器用纺织品考核试卷
- 纤维板生产能耗分析与节能措施考核试卷
- 低钙血症的病情观察和护理
- 学校保安、宿管服务投标方案技术标
- (中职)ZZ017数字产品检测与维护赛项规程(师生同赛)(5月10日更新)
- 南京彭宇案完
- 2023年华中科技大学辅导员招聘考试真题
- 安全生产与ISO管理体系
- 锅炉设备培训课件
- 肌肉注射并发症的预防及处理
- 某小学学生心理健康档案一生一案全套
- 工业财务预算表格(全套)
- 《销售管理实务》(李宁)011-5 教案 第9课 编制销售预算
评论
0/150
提交评论