本實驗為LED1閃爍固定次數后LED2亮。目的是為了1、掌握使用跳轉指令實現分支和循環。 1、條件轉移指令(8條)
JC是判斷C進位標志是否為1,為1則跳轉到指定位置。JC指令判斷有借位則轉移,也就是說兩數相減為負轉移。JBC指令判斷該位為1則轉移,同時將該位置0。 條件轉移指令只能轉移到離本指令-128~+127字節范圍內,是一種相對轉移形式,當要往較遠單元地址條件轉移時,可以在本指令-128~+127字節范圍內安排一條無條件轉移指令作為中轉指令即可。在使用簡單條件跳轉指令時,必須明確相應標志位的變化
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
單片機源程序如下:
- 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
復制代碼
仿真代碼51hei附件下載:
實驗五工程.7z
(56.5 KB, 下載次數: 3)
2021-7-22 04:10 上傳
點擊文件名下載附件
|