微机接口技术课程设计--可预置电子时钟讲课教案.doc





《微机接口技术课程设计--可预置电子时钟讲课教案.doc》由会员分享,可在线阅读,更多相关《微机接口技术课程设计--可预置电子时钟讲课教案.doc(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Good is good, but better carries it.精益求精,善益求善。微机接口技术课程设计-可预置电子时钟-长安大学微机原理与接口技术课程设计报告设计名称:可预置电子时钟专业:计算机科学与技术班级:24020901/2姓名:指导教师:2012年6月7日一、课程设计目的和意义通过本次课程设计要掌握两种芯片使用的方法,灵活运用课本知识,加深所学的知识,对所学的相关芯片的原理、内部结构、使用方法等有更加深刻的了解,学会利用课本知识联系实际应用及编程。同时并了解综合问题的程序设计掌握实时处理程序的编制和调制方法,掌握一般的设计步骤和流程,使我们以后做设计时逻辑更加清晰。二、设计任
2、务:1.电子时钟,具有十分、分、十秒和秒的计时功能,并可以在数码管上显示。2.电子时钟具有启动键、停止键、复位键,而且可以随时通过键盘进行各位时间的设置。三、设计思想:本系统设计的电子时钟以8088微处理器作为CPU,用8254做定时计数器产生时钟频率,8255做可编程并行接口显示时钟和键盘电路。在此系统中,8254的功能是定时计数,接入8254的CLK信号为周期性时钟信号。8254采用计数器0,工作于方式3,使8254的OUT0端输出周期性的负脉冲信号;8254还采用计数器0,工作于方式2,产生18432分频信号。8255的功能是扫描键盘并使LED灯显示,工作于方式0,使A口B口输出,C口低
3、四位输入。四、设计内容:本程序的主要设计内容是用主程序完成键盘按键的扫描,实现计时结果的数码管显示,实现秒与分之间的转换。通过判断键盘按键调用相应功能程序段以实现相应功能,即实现了启动、暂停、复位功能,以及通过键盘进行十分、分、十秒、秒时间的手动设置功能。每百分之一秒对百分之一秒寄存器的内容加1,当加到100时,秒显示位加1,这样依次对个位秒、十位秒、个位分、十位分寄存器的内容加1,四个数码管动态显示分、秒的当前值。硬件连线图ABCDE键盘F及数G码管DP显示单元X1X2X3X4Y1Y2Y3Y4D7PB0D6PB1D5PB2D4PB3D3PB4D2PB5D1PB6D08255PB7单元A1PA
4、0A0PA1PA2WRPA3RDCSPC0PC1PC2PC3XD7XD6XD5XD4XD3XD2XD1XD0系XA3XA2XIOWXIORIOY0IOY1INTRCLK统D7D6D5D4D3D28254D1单元D0A1A2WRRDCSOUT0CLK0总线六、芯片介绍:1.8254的初始化字本设计中的8254的初始化为:MOVDX,MY8254_MODE;初始化8254工作方式MOVAL,36H;计数器0,方式3OUTDX,ALMOVDX,MY8254_COUNT0;装入计数初值MOVAL,00H;18432分频OUTDX,ALMOVAL,54HOUTDX,AL2.8255的初始化字本设计中的8
5、255的初始化为:MOVDX,MY8255_MODE;初始化8255工作方式MOVAL,81H;方式0,A口、B口输出,C口低4位输入OUTDX,AL七、设计方案1、系统框图如下:键盘读入的数显示缓冲的值秒脉冲显示模块主控模块计时模块定时模块小键盘模块四个LED小键盘8255A82548254系统框图2、主程序模块主控模块是核心模块,对8254、8255A进行初始化,设置中断向量,扫描键盘根据按键值作相应的处理,主要由软件实现。它的主要功能是调用其它模块对系统工作进行协调,它的主要功能是读小键盘输入键值并执行要做的工作,如果键值为0,则启动动态显示;如果键值为1,则暂停显示;如果键值为2,则将
6、显示初始值0000置入显示缓冲,并调用显示模块显示。3、小键盘模块小键盘模块送入主控模块的子功能模块。由软件和硬件实现,硬件上由小键盘和8255互连,将小键值由8255送入主控模块。软件上使用行扫描法获得键值并送回主控模块。4、显示模块显示模块是将显示缓冲区的数值送到LED显示的功能模块,显示缓冲区是由四个字节构成,分别保存分钟的高位和低位,秒钟的高位和低位。硬件上由四个LED构成,软件上由扫描显示的方法实现。5、定时模块定时模块由一片8254实现,选用定时器0,工作在方式3,产生10ms负脉冲,这样10*100=1000ms,即1s,以此计时。六、流程图(1)主程序流程图开始程序初始化判断小
7、键盘是否有键按下NY若按键值为7,则要转至时间设置处理程序若按键值为1,则要转至STOPKEYTAG处理程序若按键值为2,则要转至CLEARKEYTAG处理程序若按键值为0,则要转至STARTISRUNING处理程序PC机上面是不是有键按下调用子程序NY返回DOS结束(2)电子时钟处理流程图开始SEC秒加1SEC秒是否到10?NYSEC秒清零,TENSEC十秒加1TENSEC十秒是否到6?NYTENSEC十秒清零,MINT个位分加1MINT个位分是否到10?NYMINT个位分清零,TENMINT十位分加1TENMINT十位分到6?NYTENMINT十位秒分清零调用LED动态显示程序结束八、源程
8、序;*根据CHECK配置信息修改下列符号值*IOY0EQU0A000H;片选IOY0对应的端口始地址IOY1EQU0A040H;*MY8255_AEQUIOY0+00H*4;8255的A口地址MY8255_BEQUIOY0+01H*4;8255的B口地址MY8255_CEQUIOY0+02H*4;8255的C口地址MY8255_MODEEQUIOY0+03H*4;8255的控制寄存器地址MY8254_COUNT0EQUIOY1+00H*4;8254计数器0端口地址MY8254_COUNT1EQUIOY1+01H*4;8254计数器1端口地址MY8254_COUNT2EQUIOY1+02H*4;
9、8254计数器2端口地址MY8254_MODEEQUIOY1+03H*4;8254控制寄存器端口地址STACK1SEGMENTSTACKDW256DUP(?)STACK1ENDSDATASEGMENTDTABLEDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H;键值表,0F对应的7段数码管的段位值STATUSDB0;8254OUT端口状态键ISRUNINGDB0WSECDB0WMSECDB0TENMINTDB0MINTDB0TENSECDB0SECDB0DATAENDSCODESEGMENTASSUMECS:CO
10、DE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVSI,3000H;建立缓冲区,存放要显示的键值MOVAL,00H;先初始化键值为0MOVSI,ALMOVSI+1,ALMOVSI+2,ALMOVSI+3,ALMOVDX,MY8254_MODE;初始化8254工作方式MOVAL,36H;计数器0,方式3OUTDX,ALMOVDX,MY8254_COUNT0;装入计数初值MOVAL,00H;18432分频OUTDX,ALMOVAL,54HOUTDX,ALMOVDX,MY8255_MODE;初始化8255工作方式MOVAL,81H;方式0,A口、B口输出,C口低4位输入OUT
11、DX,ALBEGIN:CALLDIS;显示刷新CALLCLEAR;清屏CALLCCSCAN;扫描按键JZNOKEYDOWN;有键按下则跳置GETKEY1JMPGETKEY1NOKEYDOWN:MOVAH,1;判断PC键盘是否有按键按下INT16HJZKEYSCANEND;无按键则跳回继续循环,有则退出JMPQUITKEYSCANEND:CMPISRUNING,1JNEBEGINTIMESTART:MOVAL,11100010B;设置回读命令MOVDX,MY8254_MODEOUTDX,ALMOVDX,MY8254_COUNT0;读0端口状态控制字INAL,DXCMPSTATUS,1JNENOT
12、STATUSTESTAL,80HJZCHANGEWMSECJMPBEGINNOTSTATUS:TESTAL,80HJNZCHANGEWMSECJMPBEGINCHANGEWMSEC:TESTAL,80HJZCHANGESTATUSMOVSTATUS,1JMPHASCHANGECHANGESTATUS:MOVSTATUS,0HASCHANGE:INCWMSECCMPWMSEC,0AH;百分秒到10,十分秒加1JNECHANGESECMOVWMSEC,0INCWSECCMPWSEC,0AH;十分秒秒到10,个位秒加1JNECHANGESECMOVWSEC,0INCSECCMPSEC,0AH;个位秒
13、秒到10,十位秒加1JNECHANGESECMOVSEC,0INCTENSECCMPTENSEC,06H;十位秒到6,清零JNECHANGESECMOVTENSEC,0INCMINTCMPMINT,0AH;分钟个位到10,十位加1JNZCHANGESECMOVMINT,0INCTENMINTCMPTENMINT,06H;十位分到6,清零JNECHANGESECMOVTENMINT,0CHANGESEC:MOVSI,3000H;存储时间MOVAL,TENMINT;十位分MOVSI,ALINCSIMOVAL,MINT;个位分MOVSI,ALINCSIMOVAL,TENSEC;十位秒MOVSI,AL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 接口 技术 课程设计 预置 电子 时钟 讲课 教案

限制150内