单片机时钟电路的设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机时钟电路的设计

单片机时钟电路的设计 1.时钟结构与原理 单片机时钟的结构部分主要分为硬件和软件两部分。其中硬件部分比较简单,主要89c51单片机,LED,数码管和按键开关组成,如下图所示。 单片机p0端口接有4为共阳极LED数码管显示器。数码管的8个引脚依照a,b,c,d,e,f,g,dp顺序依次与p0端口的8个引脚相连,,R是电阻。限流电阻p0端口上。 使用方法:P1.1为暂停键,按下后开始进行设置时间,p1.4设置秒,p1.3设置分,p1.2设置时,p1.5为运行键。 基本原理:时钟一般由走时显示和调整时间3项基本功能组成,这些功能在单片机时钟主要由软件设计体现出来。其中,走时部分利用单片机离得定时/计数器产生的中断。例如,设置定时器在T0工作模式0状态下,设置每隔5ms中断一次,中断200次正好是一秒。中断服务程序里记载着中断的次数,中断200次为1秒,60秒为1分,60分为一小时,24小时为一天。 时钟的显示是使用4为LED数码管,其软件设计原理是:由中断产生的秒,分,小时,经转换子程序转换为适应LED数码管显示的数据,并通过单片机的输出功能输入到数码管显示器,再经过显示器扫描程序,显示出时钟的走时时间。调整时间是利用了单片机的输入功能,把按键开关作为单片机的输入信号,通过检测被按下的开关,从而执行赋予该开关调整时间。 因此,在设计程序时把单片机时钟功能分解为走时,显示和调整时间3个主要部分,每一部分的功能通过编写相应的程序来完成,然后再通过主程序调用子程序,使这3部分有机的连在一起,完成单机片的时钟设计 调整时间的设置: M1: JB K2,M2 ;未按下k1建,则继续扫描 JMP LOOP M2: JB K3,M3 ; 未按下k2建,则继续扫描 JMP LOOP M3: JB K4,M4 JMP LOOP M4: JB K5,M5 JMP LOOP M5: JMP LOOP 走时功能的设计:T0_SRV: PUSH ACC MOV TL0,#(8192-4900)MOD 32 MOV TH0,#(8192-4900)/32 INC DEDA MOV A,DEDA CJNE A,#200,TT1 MOV DEDA,#0 INC SEC MOV A,SEC CJNE A,#60,TT1 INC MIN MOV SEC,#0 MOV A,MIN CJNE A,#60,TT1 INC HOUR MOV MIN,#0 MOV A,HOUR CJNE A,#24,TT1 MOV SEC,#0 MOV MIN,#0 MOV HOUR,#0 TT1: POP ACC RETI 显示功能的设计:CONV: ;转换小时数据 MOV A,HOUR MOV B,#10 DIV AB MOV DPTR,#TABLE MOVC A,@A+DPTR MOV BUF,A MOV A,B MOVC A,@A+DPTR MOV BUF+1,A ;转换分数据 MOV A,MIN MOV B,#10 DIV AB MOV DPTR,#TABLE MOVC A,@A+DPTR MOV BUF+2,A MOV A,B MOVC A,@A+DPTR MOV BUF+3,A ;转换秒数据 MOV A,SEC MOV B,#10 DIV AB MOV DPTR,#TABLE MOVC A,@A+DPTR MOV BUF+4,A MOV A,B MOVC A,@A+DPTR MOV BUF+5,A RET TABLE: DB 3FH,06H,5BH,4FH DB 66H,6DH,7DH,07H DB 7FH,6FH DISP: MOV R0,#BUF ;指向显示器显示缓冲区起始地址 MOV R2,#6 MOV ACC, S1: PUSH ACC MOV A,@R0 MOV P0,A POP ACC ACALL DELAY1 MOV P2,ACC RL A ;向右移动一位 INC R0 DJNZ R2,S1 RET SET_TIME: CLR TR0 MOV SEC,#0 L0: ACALL DISP J

文档评论(0)

liudao + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档