本實(shí)驗(yàn)為LED1閃爍固定次數(shù)后LED2亮。目的是為了1、掌握使用跳轉(zhuǎn)指令實(shí)現(xiàn)分支和循環(huán)。 1、條件轉(zhuǎn)移指令(8條)
JC是判斷C進(jìn)位標(biāo)志是否為1,為1則跳轉(zhuǎn)到指定位置。JC指令判斷有借位則轉(zhuǎn)移,也就是說兩數(shù)相減為負(fù)轉(zhuǎn)移。JBC指令判斷該位為1則轉(zhuǎn)移,同時(shí)將該位置0。 條件轉(zhuǎn)移指令只能轉(zhuǎn)移到離本指令-128~+127字節(jié)范圍內(nèi),是一種相對(duì)轉(zhuǎn)移形式,當(dāng)要往較遠(yuǎn)單元地址條件轉(zhuǎn)移時(shí),可以在本指令-128~+127字節(jié)范圍內(nèi)安排一條無條件轉(zhuǎn)移指令作為中轉(zhuǎn)指令即可。在使用簡單條件跳轉(zhuǎn)指令時(shí),必須明確相應(yīng)標(biāo)志位的變化
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
單片機(jī)源程序如下:
- ORG 0000H
- LJMP MAIN
-
- ORG 0100H
- MAIN:
- MOV P0,#0FFH
- MOV A,P3
- CJNE A,#30H,LOOP
- SJMP Hold
- LOOP:JC Heat
- SJMP Cool
-
- Cool:CLR P0.0
- LCALL DELAY
- LJMP MAIN
-
- Heat:CLR P0.1
- LCALL DELAY
- LJMP MAIN
-
- Hold:CLR P0.2
- LCALL DELAY
- LJMP MAIN
-
- DELAY:
- MOV R2,#255
- D1:MOV R3,#250
- D2:DJNZ R3,D2
- DJNZ R2,D1
- RET
- END
復(fù)制代碼
仿真代碼51hei附件下載:
實(shí)驗(yàn)五工程.7z
(56.5 KB, 下載次數(shù): 3)
2021-7-22 04:10 上傳
點(diǎn)擊文件名下載附件
|