电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

单片机简易计算器设计(汇编语言)

单片机简易计算器设计(汇编语言)_第1页
1/7
单片机简易计算器设计(汇编语言)_第2页
2/7
单片机简易计算器设计(汇编语言)_第3页
3/7
KEYBUF EQU 40H ;键号存放单元 ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV KEYBUF,#0 ;初始键号设位0,也可以为任意值 MOV R0,#30H ;显示首地址 MOV R2,#0CH ;计算数据存放单元个数 CLR A QING: MOV @R0,A ;将数据存放单元清零 INC R0 DJNZ R2,QING MOV P0,#8FH ;关闭显示 MOV R1,#30H ;将显示首地址存放R1 里 ;=============================================== ;五位无符号显示子程序 DIS1: MOV R0,#30H ;把显示数据第一位放在 R0 里 MOV R2,#04H ;把显示的位码放在 R2 里 MOV R3,#05H ;把显示的长度放在 R3 里 DIS2: MOV A,@R0 ANL A,#0FH ;屏蔽显示数据的高四位 MOV B,A MOV A,R2 ANL A,#0FH ;屏蔽位码的高四位 SWAP A ORL A,B MOV P0,A ;送总显示数据到 P0 显示 LCALL DELY4ms ;调用延时 4ms INC R0 ;取下一个显示数据 DEC R2 DJNZ R3,DIS2 ;四位显示晚后重新开始显示 ;=================================================== ;键盘扫描子程序 WAIT: MOV P1,#0FFH ;P1 口送高电平 CLR P1.0 ;第一行清零 MOV A,P1 ;读 P1 口 ANL A,#0F0H ;低位屏蔽 XRL A,#0F0H ;判断低位是否有低电平 ,即判断是否有按键按下 JZ NOKEY1 ;地位有低电平继续扫描,否者跳到第而行去扫描 LCALL DELY10ms ;延时 10ms去抖在进行判断是否有按键按下 MOV A,P1 ;继续读 P1 口 ANL A,#0F0H ;判断低位是否有低电平 CJNE A,#0E0H,NK1 ;如果扫描数据不为0E0H 就转到 NK1 MOV KEYBUF,#0 ;否者判断为0 号键 AJMP DK ;转 DK1 查表程序 NK1: CJNE A,#0D0H,NK2 ;如果扫描数据不为0D0H 就转到NK2 MOV KEYBUF,#1 ;否者判断为1 号键 AJMP DK ;转DK2 查表程序 NK2: CJNE A,#0B0H,NK3 ;如果扫描数据不为0B0H 就转到NK3 MOV KEYBUF,#2 ;否者判断为2 号键 AJMP DK ;转DK3 查表程序 NK3: CJNE A,#70H,NK4 ;如果扫描数据不为70H 就转到NK4 LJMP SAN_CHU NK4: NOP NOKEY1: MOV P1,#0FFH ;和上面相同 CLR P1.1 MOV A,P1 ANL A,#0F0H XRL A,#0F0H JZ NOKEY2 LCALL DELY10MS MOV A,p1 ANL A,#0F0H XRL A,#0F0H JZ NOKEY2 MOV A,P1 ANL A,#0F0H CJNE A,#0E0H,NK5 MOV KEYBUF,#3 AJMP DK NK5: CJNE A,#0D0H,NK6 MOV KEYBUF,#4 AJMP DK NK6: CJNE A,#0B0H,NK7 MOV ...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

单片机简易计算器设计(汇编语言)

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部