欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
關(guān)于單片機(jī)匯編語言實(shí)現(xiàn)進(jìn)制轉(zhuǎn)換
[打印本頁]
作者:
WBSY
時間:
2021-4-29 21:21
標(biāo)題:
關(guān)于單片機(jī)匯編語言實(shí)現(xiàn)進(jìn)制轉(zhuǎn)換
今天學(xué)習(xí)了
中斷
,任務(wù)是利用中斷進(jìn)行數(shù)制轉(zhuǎn)換,
并利用數(shù)碼管顯示轉(zhuǎn)換前后數(shù)字、
原理圖放下面
PS:本次進(jìn)制轉(zhuǎn)換為16進(jìn)制轉(zhuǎn)換為10進(jìn)制,只是例子
照例先說我的思路:
1. 我在主程序先對
P1
置零(為了讓十六進(jìn)制數(shù)從0開始)
2. 然后對
P1
進(jìn)行加1的操作,并循環(huán)以及延時(為了容易看清是否轉(zhuǎn)換)
3. 配置中斷,開啟外部
中斷0
,設(shè)置觸發(fā)方式為
電平觸發(fā)
,開啟
中斷總控制
(這里的配置務(wù)必跟著自己的電路圖來,這里是我電路圖對對應(yīng)的配置)
4. 編寫中斷子程序,里面對
P1
做除法,除以
0x64H
即
0x100D
配(由于是兩位十六進(jìn)制最多百位數(shù),所以除以100)為了得到百位數(shù),并將
商
移到
P2
(這里剛 好高位為0,不影響)作百位數(shù),并對剩下來的
余數(shù)
進(jìn)行除10得到
新的商
,字節(jié)內(nèi)交換后,將交換后
新商
加上
新的余數(shù)
移入
P0
,得到十位數(shù)和個位數(shù)。
5. 退出中斷返回
DIV AB 結(jié)果:A/B的商放入A,余數(shù)放入B
原理圖:
11.png
(42.55 KB, 下載次數(shù): 41)
下載附件
2021-4-29 22:40 上傳
代碼如下:
ORG 00H
LJMP 30H ;turn to main
ORG 03H
LJMP 0200H
ORG 30H
MAIN: MOV P1, #00H ;hex
MOV P0, #00H ;low2_dec
MOV P2, #00H ;high1_dec
SETB EX0 ;open it
SETB IT0
SETB EA ;open total switch
HERE: INC P1
MOV R7, #0FFH
DJNZ R7, $
SJMP HERE
ORG 0200H
EXCHANGE:
MOV B, #64H ;div with 100 for P2-high1_dec
MOV A, P1
DIV AB
MOV P2, A
MOV A, B ;save remainder;
MOV B, #0AH ;div with 10 for P0-low2_dec
DIV AB
SWAP A
ADD A, B
MOV P0, A
RETI
END
復(fù)制代碼
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1