收藏 分享(赏)

单片机课程设计简易计算器.doc

上传人:j35w19 文档编号:4016087 上传时间:2018-12-05 格式:DOC 页数:6 大小:48KB
下载 相关 举报
单片机课程设计简易计算器.doc_第1页
第1页 / 共6页
单片机课程设计简易计算器.doc_第2页
第2页 / 共6页
单片机课程设计简易计算器.doc_第3页
第3页 / 共6页
单片机课程设计简易计算器.doc_第4页
第4页 / 共6页
单片机课程设计简易计算器.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、1CSEG AT 0000HLJMP STARTCSEG AT 4100HSTART: MOV DPTR,#00CFE9H ;8279 命令字MOV A,#0D1H ;清显示MOVX DPTR,ALOOP1: MOVX A,DPTR ;输入第一个数的十位ANL A,#0FHJZ LOOP1 ;有键按下?没有则循环等待MOV A,#0A0H ;显示消隐命令MOVX DPTR,AMOV A,#40H ;读 FIFO 命令MOVX DPTR,AMOV DPTR,#0CFE8H ;读键值MOVX A,DPTRMOV R1,A ;保存键值MOV DPTR,#0CFE9H ;写显示 RAM 命令MOV A

2、,#80H ;选中 LED1MOVX DPTR,A MOV A,R1ANL A,#0FH ;取后半字节MOV DPTR,#TABMOVC A,A+DPTR ;取段显码MOV DPTR,#0CFE8H ;写显示 RAMMOVX DPTR,AMOV DPTR,#0CFE9H ;写显示 RAM 命令LOOP2: MOVX A,DPTR ;输入第一个数的个位ANL A,#0FHJZ LOOP2 ;有键按下?没有则循环等待MOV A,#0A0H ;显示消隐命令MOVX DPTR,AMOV A,#40H ;读 FIFO 命令 MOVX DPTR,AMOV DPTR,#0CFE8H ;读键值MOVX A,D

3、PTRMOV R2,A ;保存键值MOV DPTR,#0CFE9H ;写显示 RAM 命令MOV A,#81H ;选中 LED2MOVX DPTR,A MOV A,R2ANL A,#0FH ;取后半字节MOV DPTR,#TABMOVC A,A+DPTR ;取段显码MOV DPTR,#0CFE8H ;写显示 RAM2MOVX DPTR,AMOV DPTR,#0CFE9H ;写显示 RAM 命令LOOP3: MOVX A,DPTR ;输入运算符ANL A,#0FHJZ LOOP3 ;有键按下?没有则循环等待MOV A,#0A0H ;显示消隐命令MOVX DPTR,AMOV A,#40H ;读 F

4、IFO 命令 MOVX DPTR,AMOV DPTR,#0CFE8H ;读键值MOVX A,DPTRMOV R3,A ;保存键值MOV DPTR,#0CFE9H ;写显示 RAM 命令MOV A,#82H ;选中 LED3MOVX DPTR,A MOV A,R3ANL A,#0FH ;取后半字节MOV DPTR,#TABMOVC A,A+DPTR ;取段显码MOV DPTR,#0CFE8H ;写显示 RAMMOVX DPTR,AMOV DPTR,#0CFE9H ;写显示 RAM 命令LOOP4: MOVX A,DPTR ;输入第二个数的十位ANL A,#0FHJZ LOOP4 ;有键按下?没有

5、则循环等待MOV A,#0A0H ;显示消隐命令MOVX DPTR,AMOV A,#40H ;读 FIFO 命令 MOVX DPTR,AMOV DPTR,#0CFE8H ;读键值MOVX A,DPTRMOV R4,A ;保存键值MOV DPTR,#0CFE9H ;写显示 RAM 命令MOV A,#83H ;选中 LED4MOVX DPTR,A MOV A,R4ANL A,#0FH ;取后半字节MOV DPTR,#TABMOVC A,A+DPTR ;取段显码MOV DPTR,#0CFE8H ;写显示 RAMMOVX DPTR,AMOV DPTR,#0CFE9H ;写显示 RAM 命令LOOP5:

6、 MOVX A,DPTR ;输入第二个数的个位ANL A,#0FH3JZ LOOP5 ;有键按下?没有则循环等待MOV A,#0A0H ;显示消隐命令MOVX DPTR,AMOV A,#40H ;读 FIFO 命令 MOVX DPTR,AMOV DPTR,#0CFE8H ;读键值MOVX A,DPTRMOV R5,A ;保存键值MOV DPTR,#0CFE9H ;写显示 RAM 命令MOV A,#84H ;选中 LED5MOVX DPTR,A MOV A,R5ANL A,#0FH ;取后半字节MOV DPTR,#TABMOVC A,A+DPTR ;取段显码MOV DPTR,#0CFE8H ;写

7、显示 RAMMOVX DPTR,AMOV DPTR,#0CFE9H ;写显示 RAM 命令LOOP6: MOVX A,DPTR ;输入等于号ANL A,#0FHJZ LOOP6 ;有键按下?没有则循环等待MOV A,#0A0H ;显示消隐命令MOVX DPTR,AMOV A,#40H ;读 FIFO 命令 MOVX DPTR,AMOV DPTR,#0CFE8H ;读键值MOVX A,DPTRMOV R6,A ;保存键值MOV DPTR,#0CFE9H ;写显示 RAM 命令MOV A,#85H ;选中 LED6MOVX DPTR,A MOV A,R6ANL A,#0FH ;取后半字节MOV D

8、PTR,#TABMOVC A,A+DPTR ;取段显码MOV DPTR,#0CFE8H ;写显示 RAMMOVX DPTR,AMOV DPTR,#0CFE9H ;写显示 RAM 命令MOV A,R1 ;数据处理ANL A,#0FHMOV R1,AMOV A,R2ANL A,#0FHMOV R2,A4MOV A,R3ANL A,#0FHMOV R3,AMOV A,R4ANL A,#0FHMOV R4,AMOV A,R5ANL A,#0FHMOV R5,AMOV A,R1 ;个位与十位数字合并MOV B,#00AHMUL ABADD A,R2MOV R1,AMOV A,R4 ;个位与十位数字合并M

9、OV B,#00AHMUL ABADD A,R5MOV R4,Ajia: CJNE R3,#00AH,jianMOV A,R1ADD A,R4LJMP JIEGUOjian: CJNE R3,#00BH,chengMOV A,R1SUBB A,R4LJMP JIEGUOcheng: CJNE R3,#00CH,CHUMOV A,R1MOV B,R4MUL ABLJMP JIEGUOCHU: MOV A,R1MOV B,R4DIV ABJIEGUO: MOV B,#064H ;对结果的百位、十位、个位的数字进行处理以便单独输出DIV ABMOV R1,AMOV A,BMOV B,#00AHDIV

10、 ABMOV R2,AMOV A,BMOV R3,A 5MOV DPTR,#0CFE9H ;写显示 RAM 命令,输出百位MOV A,#83H ;选中 LED4MOVX DPTR,A MOV A,R1ANL A,#0FH ;取后半字节MOV DPTR,#TABMOVC A,A+DPTR ;取段显码MOV DPTR,#0CFE8H ;写显示 RAMMOVX DPTR,AMOV DPTR,#0CFE9H ;写显示 RAM 命令MOV DPTR,#0CFE9H ;写显示 RAM 命令,输出十位MOV A,#84H ;选中 LED5MOVX DPTR,A MOV A,R2ANL A,#0FH ;取后半

11、字节MOV DPTR,#TABMOVC A,A+DPTR ;取段显码MOV DPTR,#0CFE8H ;写显示 RAMMOVX DPTR,AMOV DPTR,#0CFE9H ;写显示 RAM 命令MOV DPTR,#0CFE9H ;写显示 RAM 命令,输出个位MOV A,#85H ;选中 LED6MOVX DPTR,A MOV A,R3ANL A,#0FH ;取后半字节MOV DPTR,#TABMOVC A,A+DPTR ;取段显码MOV DPTR,#0CFE8H ;写显示 RAMMOVX DPTR,AMOV DPTR,#0CFE9H ;写显示 RAM 命令MOV R7,#000HMOV D

12、PTR,#0CFE9H ;写显示 RAM 命令,输出个位MOV A,#80H ;选中 LED1MOVX DPTR,A MOV A,R7ANL A,#0FH ;取后半字节MOV DPTR,#TABMOVC A,A+DPTR ;取段显码MOV DPTR,#0CFE8H ;写显示 RAMMOVX DPTR,AMOV DPTR,#0CFE9H ;写显示 RAM 命令MOV DPTR,#0CFE9H ;写显示 RAM 命令,输出个位MOV A,#81H ;选中 LED2MOVX DPTR,A 6MOV A,R7ANL A,#0FH ;取后半字节MOV DPTR,#TABMOVC A,A+DPTR ;取段

13、显码MOV DPTR,#0CFE8H ;写显示 RAMMOVX DPTR,AMOV DPTR,#0CFE9H ;写显示 RAM 命令MOV DPTR,#0CFE9H ;写显示 RAM 命令,输出个位MOV A,#82H ;选中 LED3MOVX DPTR,A MOV A,R7ANL A,#0FH ;取后半字节MOV DPTR,#TABMOVC A,A+DPTR ;取段显码MOV DPTR,#0CFE8H ;写显示 RAMMOVX DPTR,AMOV DPTR,#0CFE9H ;写显示 RAM 命令LJMP LOOP1TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H ;段显码表db 7fh,6fh,77h,7ch,39h,5eh,79h,71hEND

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 实用文档 > 课程设计

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报