标题: 单片机汇编语言五 闪烁固定次数 使用跳转指令实现分支和循环 DJNZ等 [打印本页]
作者: cangyuan 时间: 2021-7-21 19:18
标题: 单片机汇编语言五 闪烁固定次数 使用跳转指令实现分支和循环 DJNZ等
本实验为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)
欢迎光临 (http://www.51hei.com/bbs/) |
Powered by Discuz! X3.1 |