標(biāo)題:
計(jì)算器單片機(jī)課設(shè)匯編語(yǔ)言程序+仿真 超過(guò)255清零
[打印本頁(yè)]
作者:
yangyanru
時(shí)間:
2017-9-24 17:12
標(biāo)題:
計(jì)算器單片機(jī)課設(shè)匯編語(yǔ)言程序+仿真 超過(guò)255清零
計(jì)算器單片機(jī)課設(shè)仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png
(14.63 KB, 下載次數(shù): 49)
下載附件
2017-9-25 01:38 上傳
0.png
(42.47 KB, 下載次數(shù): 56)
下載附件
2017-9-25 01:38 上傳
單片機(jī)匯編語(yǔ)言源程序如下:
YJ EQU 50H ;結(jié)果存放
YJ1 EQU 51H ;中間結(jié)果存放
GONG EQU 52H ;功能鍵存放
ORG 00H
START: MOV R3,#0 ;初始化顯示為空
MOV GONG,#0
MOV 38H,#00H
MOV 37H,#00H
MOV 36H,#00H
MOV 35H,#00H
MOV 34H,#00H
MOV 33H,#00H
MOV 32H,#00H
MOV 31H,#00H
MLOOP: CALL DISP ;調(diào)顯示子程序
WAIT: CALL TESTKEY ;判斷有無(wú)按鍵
JZ WAIT
CALL GETKEY ;讀鍵
INC R3 ;按鍵個(gè)數(shù)
CJNE A,#0,NEXT1 ;判斷是否數(shù)字鍵
LJMP E1 ;轉(zhuǎn)數(shù)字鍵處理
NEXT1: CJNE A,#1,NEXT2
LJMP E1
NEXT2: CJNE A,#2,NEXT3
LJMP E1
NEXT3: CJNE A,#3,NEXT4
LJMP E1
NEXT4: CJNE A,#4,NEXT5
LJMP E1
NEXT5: CJNE A,#5,NEXT6
LJMP E1
NEXT6: CJNE A,#6,NEXT7
LJMP E1
NEXT7: CJNE A,#7,NEXT8
LJMP E1
NEXT8: CJNE A,#8,NEXT9
LJMP E1
NEXT9: CJNE A,#9,NEXT10
LJMP E1
NEXT10: CJNE A,#10,NEXT11 ;判斷是否功能鍵
LJMP E2 ;轉(zhuǎn)功能鍵處理
NEXT11: CJNE A,#11,NEXT12
LJMP E2
NEXT12: CJNE A,#12, NEXT13
LJMP E2
NEXT13: CJNE A,#13,NEXT14
LJMP E2
NEXT14: CJNE A,#14,NEXT15
LJMP E2
NEXT15: LJMP E3 ;判斷是否清除鍵
E1: CJNE R3,#1,N1 ;判斷第幾次按鍵
LJMP E11 ;為第一個(gè)數(shù)字
N1: CJNE R3,#2,N2
LJMP E12 ;為第二個(gè)數(shù)字
N2: CJNE R3,#3,N3
LJMP E13 ;為第三個(gè)數(shù)字
N3: LJMP E3 ;第四個(gè)數(shù)字轉(zhuǎn)溢出
E11: MOV R4,A ;輸入值暫存R4
MOV 38H,A ;輸入值送顯示緩存
MOV 37H,#00H
MOV 36H,#00H
MOV 35H,#00H
MOV 34H,#00H
MOV 33H,#00H
MOV 32H,#00H
MOV 31H,#00H
LJMP MLOOP ;等待再次輸入
E12: MOV R7,A ;個(gè)位數(shù)暫存R7
MOV B,#10
MOV A,R4
MUL AB ;十位數(shù)
ADD A,R7
MOV R4,A ;輸入值存R4
MOV 31H,#00H
MOV 32H,#00H
MOV 33H,#00H
MOV 34H,#00H
MOV 35H,#00H
MOV 36H,#00H ;輸入值送顯示緩存
MOV 37H,38H
MOV 38H,R7
LJMP MLOOP
E13: MOV R7,A
MOV B,#10
MOV A,R4
MUL AB
JB OV,E3 ;輸入溢出
ADD A,R7
JB CY,E3 ;輸入溢出
MOV R4,A
MOV 36H,37H ;輸入值送顯示緩存
MOV 37H,38H
MOV 38H,R7
LJMP MLOOP
E3: MOV R3,#0 ;按鍵次數(shù)清零
MOV R4,#0 ;輸入值清零
MOV YJ,#0 ;計(jì)算結(jié)果清零
MOV GONG,#0 ;功能鍵設(shè)為零
MOV 31H,#00H
MOV 32H,#00H
MOV 33H,#00H
MOV 34H,#00H
MOV 35H,#00H
MOV 36H,#00H ;輸入值送顯示緩存
…………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
計(jì)算器--單片機(jī)課設(shè).rar
(16.79 KB, 下載次數(shù): 44)
2017-9-24 17:12 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1