微机原理课程设计(电子时钟)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

电子时钟课程设计一:设计背景电子数字钟的应用十分广泛,通过计时精度很高的石英晶振(也可采用卫星传递的时钟标准信号),采用相应进制的计数器,转化为二进制数,经过译码和显示电路准确地将时间“时”“分”“秒”用数字的方式显示出来。与传统的机械钟相比,它具有走时准确,显示直观,无机械传动,无需人的经常调整等优点。它广泛用于电子表、车站、码头、广场等公共场所的大型远距离时间显示电子钟。二:数字钟电路设计思路1.选用8253计数器2进行1s的定时,其输出OUT1与8259的IRQ0相连,当定时到1s时产生一个中断服务程序进行时、分、秒的计数,并送入相应的存储单元;8255的A口接七段数码管的位选信号,B口接数码管的段选信号。时、分、秒的数值通过对8255的编程可送到七段数码管上显示。2.此程序主要由四部分组成:第一部分为最主要的部分定义显示界面;第二部分为利用延时程序,并将调用的二进制表示的时间数转换成ASCII码,并将时间数存入内存区;第三部分将存在系统内存区的时间数用七段数码管显示出来;第四部分利用循环程序分别对秒个位、秒十位、分个位、分十位与相应的规定值进行比较,结合延时程序来实现电子钟数字的跳变,从而形成走时准确的电子钟。该程序实现了准确显示秒和分,读数准确,走时精准。此电子钟能准确的从0时0分0秒走时到23时59分59秒,然后能自动回复到0时0分0秒循环走时。3.基本工作原理:系统设计的电子时钟主要由显示模块、时钟控制模块和时钟运算模块三大部分组成。以8086微处理器作CPU,用8253做定时器产生时钟频率提供一个频率为10kHz的时钟信号,要求每隔10ms完成一次扫描键盘的工作。在写入控制字与计数初值后,每到10ms定时器就启动工作,即当计数器减到1时,输出端OUT0输出一个CLK周期的低电平,向CPU申请中断,当达到100次时,则输出端OUT1输出1s,向CPU申请中断,由8255控制一个数码管显示,当计数到60s时,则输出端OUT2向CPU申请中断,由另一数码管显示1min,同理由数码管显示1h.CPU处理,使数码管的显示发生变化。8255芯片8253芯片电子时钟的显示格式HH:MM:SS由左到右分别为时、分、秒,并依次对秒、分、小时寄存器的内容加一,六个数码管动态显示时、分、秒的当前值。最大记时23:59:59超过这个时间时分秒位都清零从00:00:00重新开始。8253芯片介绍8253是NMOS工艺制成的可编程计数器/定时器,有几种芯片型号,外形引脚及功能都是兼容的,只是工作的最高计数速率有所差异,例如8253(2.6MHz),8253-5(5MHz)8253内部有三个计数器,分别成为计数器0、计数器1和计数器2,他们的机构完全相同。每个计数器的输入和输出都决定于设置在控制寄存器中的控制字,互相之间工作完全独立。每个计数器通过三个引脚和外部联系,一个为时钟输入端CLK,一个为门控信号输入端GATE,另一个为输出端OUT。每个计数器内部有一个8位的控制寄存器,还有一个16位的计数初值寄存器CR、一个计数执行部件CE和一个输出锁存器OL。8255芯片介绍8255特性:①一个并行输入/输出的LSI芯片,多功能的I/O器件,可作为CPU总线与外围的接口.②具有24个可编程设置的I/O口,即使3组8位的I/O口为PA口,PB口和PC口.它们又可分为两组12位的I/O口,A组包括A口及C口(高4位,PC4~PC7),B组包括B口及C口(低4位,PC0~PC3).A组可设置为基本的I/O口,闪控(STROBE)的I/O闪控式,双向I/O3种模式;B组只能设置为基本I/O或闪控式I/O两种模式,而这些操作模式完全由控制寄存器的控制字决定.8255引脚功能:RESET:复位输入线,CS:芯片选择信号线,RD:读信号线,WR:写入信号,D0~D7:三态双向数据总线,PA0~PA7:端口A输入输出线,PB0~PB7:端口B输入输出线,PC0~PC7:端口C输入输出线,A0,A1:地址选择线三:程序流程图三、电子表原理图:四:程序代码D8279equ200HC8279equ202HC8253equ20bHD82530equ208HD82531equ209HC82590equ210HC82591equ211HdatasegmentHOURdb00MINUTEdb00SECONDdb008STATdb00LEDdb31H,06H,5bH,4fH,66H,6dH,7dH,27H,7fH,6fH,00H,00HDISBUFdb8dup(0)dataendsstacksegmentstackdw100dup(?)stackendscodesegmentassumecs:code,ds:dataSTART:MOVAX,DATAMOVDS,AXCLIMOVAL,13HMOVDX,C82590OUTDX,ALMOVAL,8MOVDX,C82591OUTDX,ALMOVAL,1OUTDX,ALMOVAX,0MOVES,AXLEAAX,INT0MOVAX,CSMOVES:[4*8+2],AXMOVDX,C8253MOVAL,36HOUTDX,ALMOVDX,D82530MOVAX,10000OUTDX,ALMOVAL,AHOUTDX,ALMOVDX,C8253MOVAL,36HOUTDX,ALMOVDX,D82531MOVAX,100OUTDX,ALMOVAL,AHOUTDX,ALMOVDX,C8279MOVAL,00HOUTDX,ALMOVAL,34HOUTDX,ALMOVAL,0D2HOUTDX,ALMOVSTAT,0MOVDX,C82591MOVAL,0FEHOUTDX,ALWAIT1:MOVDX,C8279INAL,DXMOVAH,ALANDAL,80HJNEWAIT1MOVAL,AHANDAL,0FHCMPAL,00HJEWAIT1MOVAL,40HOUTDX,ALCHK:MOVDX,D8279INAL,DXCMPAL,33HJNEBBBMOVDX,C82591MOVAL,0FFHOUTDX,ALMOVAL,STATINCALMOVSTAT,ALCMPAL,1JNZAA1MOVSI,OFFSETDISPBUFMOVCX,4MOVAL,00BB0:MOV[SI],ALINCSILOOPBB0CALLDISPJMPCHKAA1:CMPAL,2JNZAA2MOVSI,OFFSETDISPBUFMOVAL,00MOV[SI],ALINCSIMOV[SI],ALADDSI,2MOV[SI],ALINCSIMOV[SI],ALCALLDISPJMPCHKAA2:CMPAL,3JNZAA3MOVSI,OFFSETDISPBUF+2MOVCX,4MOVAL,00BB1:MOV[SI],ALINCSILOOPBB1CALLDISPJMPCHKAA3:MOVSTAT,00MOVAL,0FEHMOVDX,C82591OUTDX,ALCALLFULLSFMCALLDISPJMPCHKBBB:CMPAL,3BHJEBBB0JMPCCCBB0:MOVAL,STATCMPAL,1JNZBBB1MOVAL,HOURADDAL,1DAAMOVHOUR,ALCALLFULLSH1CALLDISPJMPBBBBBB1:MOVAL,STATCMPAL,2JNZBBB3MOVAL,MINUTEADDAL,1DAAMOVMINUTE,ALCALLFULLFENCALLDISPJMPBBBBBB3:MOVAL,STATCMPAL,3JZBBB4JMPDDDBBB4:MOVAL,SECONDADDAL,1DAAMOVSECOND,ALCALLFULLMIAOCALLDISPJMPBBBCCC:CMPAL,3AHJECC0JMPDDDCC0:MOVAL,STATCMPAL,1JNZCCC1MOVAL,HOURSUBAL,1DASMOVAL,HOURSUBAL,1ADDAL,1DAAMOVSECOND,ALCMPAL,60HJNZFANHUIMOVSECOND,0MOVAL,MINUTEADDAL,1DAAMOVMINUTE,ALCMPAL,60HJNZFANHUIMOVMINUTE,0MOVAL,HOURADDAL,1DAAMOVHOUR,ALCMPAL,24HJNZFANHUIMOVHOUR,0CALLFULLSFMCALLDISPPOPSIPOPDIPOPBXPOPAXIRETFULLSFMPROCNEARLEADI,DISBUFLEABX,LEDLEASI,SECONDMOVCX,3AA4:MOVAL,[SI]ANDAL,0FHXLATMOV[DI],ALINCDIMOVAL,[SI]PUSHCXMOVCL,4SHRAL,CLANDAL,0FHXLATMOV[DI],ALINCDIPOPCXINCSILOOPAA4RETFULLSFMENDPFULLSHIPROCNEARLEASI,DISBUFMOVAL,0MOVCX,4CCC0:MOV[SI],ALINCSILOOPCCC0LEABX,LEDMOVAL,HOURANDAL,0FHXLATMOV[SI],ALXLATMOV[SI],ALMOVAL,HOURMOVCL,4SHRAL,CLANDAL,0FHXLATINCSIMOV[SI],ALRETFULLSHIENDPFULLFENPROCNEARLEASI,DISBUFMOVAL,0MOV[SI],ALINCSIMOV[SI],ALINCSILEABX,LEDMOVAL,MINUTEANDAL,0FHXLATMOV[SI],ALMOVAL,MINUTEMOVCL,4SHRAL,CLANDAL,0FHXLATINCSIMOV[SI],ALRETFULLFENENDPFULLMIAOPROCNEARLEASI,DISBUFLEABX,LEDMOVAL,SECONDANDAL,0FHXLATMOV[SI],ALMOVAL,SECONDMOVCL,4SHRAL,CLANDAL,0FHXLATINCSIMOV[SI],ALMOVAL,0INCSIMOV[SI],ALINCSIMOV[SI],ALINCSIMOV[SI],ALINCSIMOV[SI],ALRETFULLMIAOENDPDISPPROCNEARMOVCX,8MOVDX,D8279LEASI,DISBUFDISIMOVAL,[SI]OUTDX,ALINCSILOOPDISIRETCODEENDSENDSTART

1 / 17
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功