简易计算器系统设计_第1页
简易计算器系统设计_第2页
简易计算器系统设计_第3页
简易计算器系统设计_第4页
简易计算器系统设计_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

);键盘(Keyboard)是常用的输入设备,它是由一组开关矩阵组成,结构相对复杂器BDCLKRAMC和DRLRAMVCC),间、可自动进行键盘扫描、与计算机接口方便、编程容易、系统灵活等特点。所谓左入口,即显示位置从最左一位(最高位)开始,以后逐次输入000001010011100101110111在键盘工作方式中,由于读出操作严格按照先入先出顺序,因此,不需其中一个四位显示器输入数据而又不影响另一个四位显示器,因此必须对另BL/A、BL/B(D1、D0)为消隐设置位。用于对两组显示输出消隐。若BL=1,对应组的显示输出被消隐。当BL=0,则恢复显示。D7D6D5D4D3D2D1D0①作为结束中断命令。在传感器工作方式中使用。每当传感器状态出现此时,若传感器RAM读出地址的自动递增特性没有置位(AI=0则中控制键CNTL状态 GLLHYHLZALHX 048C159D26AE37BF字符A二进制输入Dabc字型码fgBC000001111001000101100020010110010300111110104010001111050101101110601100011107011111100081000111110910011111101010111110101100111011001001001101011010111010011011111001103)七段LED显示器的技术参数A0Aabcdefg2468924689753AY0876521C /PC I975349FEDCA98234567234567765432064597开始调用地址转化DI取数据首地址CALLSCAN_KEYAL与KEYCOUNT换AL++AL=6AL与KEYCONT换CALLKEY_NUMAL中是否为+AL是否为-AL是否为*AL是否为/AL中大于10AL<->KEYOUNT,INCALAL=5KEYCOUN,0CALLINT18279CALLINIT8279_1转加法转减法转乘法转除法转ZHUAN加法入口加法入口NUM首地址DIDI-ALAL乘以10AL+DI中的第二个数AL-BL将第三个数给ALAL+BL-ALLED_TAB-LEAAL除CL:余数-AH显示AL减法入口NUM首地址DIDI-ALAL乘以10AL+DI中的第二个数AL-BL将第三个数给ALAL-BL-ALLED_TAB-LEAAL除CL:余数-AH显示AL乘法入口NUM首地址DIDI-ALAL乘以10AL+DI中的第二个数AL-BL将第三个数给ALAL乘BL-ALLED_TAB-LEAAL除CL:余数-AH显示ALNUM首地址DIDI-ALAL乘以10AL+DI中的第二个数AL-BL将第三个数给ALAL除以BL-ALLED_TAB-LEAAL除CL:余数-AH显示AL.MODELTINY间基地址(它就是实验仪的基地址,也为DMA&32BITRAM板卡上的8237提供基地址)msg0DB'BIOS不支持访问PCIKEYCOUNTDB?LED_TABDBDBMOVDS,AXCALLInitPCIPCI提供的基地址,将偏移地址转化为实地址化子程序MOV码块上显示的个数,有键按下加1CONTROL:XCHGAL,KEYCOUNT;有按键,将键值个数赋给AL,而AL用来保存键值个数INCAL判断数码块是否写满MOVKEYCOUNT置零数码块全有字符显示后,再按键,清除显示AL,KEYCOUNT;取出键值CALLKEY_NUM;键值转换为键号CMPAL,0AH;+判断按下的键的值是否大于10JBZHUANAL,KEYCOUNT;将键值个数赋给AL,而AL用来保存键值个数;INCALAL,5;判断数码块是否写满MOVKEYCOUNT,0ADD1:MOVAL,[DI]MOVDL,10MULDLADDAL,[DI+1]MOVBL,ALMOVAL,[DI+2]MULDLADDAL,[DI+3]ADDAL,BLLEABX,LED_TABMOVAH,0MOVCL,10DIVCLMOVCH,AHMOVAH,0DIVCLXLATOUTDX,ALMOVAL,AHXLATOUTDX,ALMOVAL,CHXLATOUTDX,ALMOVAX,[DI+2]MOVDL,10MULDLADDAL,[DI+3]MOVBL,ALMOVAX,[DI]MULDLADDAL,[DI+1]SUBAL,BLLEABX,LED_TABMOVAH,0MOVCL,10DIVCLMOVDL,AHMOVAH,0DIVCLXLATDX,ALMOVAL,AHXLATDX,ALMOVAL,BLXLATDX,ALMUL1:MOVMOVAL,[DI+2]MOVMULDLADDAL,[DI+3]MOVBL,ALMOVAL,[DI]MULDLADDAL,[DI+1]MULBLLEABX,LED_TABMOVMOVDIVCLMOVMOVDIVCLXLATDX,ALMOVAL,AHXLATDX,ALMOVAL,CHXLATDX,ALDIV1:MOVMOVAL,[DI+2]MOVMULDLADDAL,[DI+3]MOVBL,ALMOVAL,[DI]MULDLADDAL,[DI+1]DIVBLLEABX,LED_TABMOVMOVMOVDIVCLXLATDX,ALMOVAL,AHXLATDX,AL;显示按下的键所对应的值LEABX,LED_TAB;获得字型码表基地址XLATMOV[DI],ALINCDI命令/状态口地址MOVAL,34H;可编程时钟设置,设置OUTDX,ALMOVAL,0;键盘/显示方式设置8*8字符显示,左边输入,外部译码键扫描方式DX,ALDX,ALCALLINIT8279_1;8个数码块全有字符显示后,再按键,清除显示;8个数码块全有字符显示后,再按键,清除显示MOVAL,90H;写显示RAM命令,从第一个数码管开始移位显示(从零单元起地址自动加1)OUTDX,ALMOVDX,CMD_8279;命令/状态口地址MOVAL,0DEH;清除空)命令字到命令字寄存器WAIT1:INAL,DX测试显示RAM是否清除完毕(D7=1?)MOVMOV命令/状态口地址INAL,DXIN读取状态字READ_FIFO:ANDAL,7MOVAL,40HOUTDX,ALINAL,DX键值由行列号确定ANDAL,3FH;键值转KEY_NUMENDPDXMOVDX,ALDXMOVMOVAL,03HMOVAH,0B1HMOVAL,01HINT1AH;软中断LEADX,msg0InitPCI1:MOVAH,09H;字符串输出INT21HInitPCI2:MOVAH,0B1HMOVAL,02HINT1AHrInitPCI3:MOVDI,PCIBAR3MOVAH,0B1HMOVAL,09HINT1AH

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论