看看这个程序

2019-07-18 13:57发布

ORG 0000H       ;Start address of the program
LJMP START  
START:  MOV R5,#0FEH
        MOV R4,#0AH
MOV R0,#00H
MOV A,R5
MOV P2,A
MOV A,#00H
MOV DPTR,#TAB
PLAY1:  MOVC A,@A+DPTR
MOV P0,A
LCALL DL1S
; LCALL DL1S
INC R0
MOV A,R0
DJNZ R4,PLAY1
AJMP REINPUT
;;;;;;;;;;;;;;Delay Function;;;;;;;;;;;;;

DL1S:   LCALL DL05S
LCALL DL05S
RET
DL05S:  MOV R3,#60H
DL05S1: DJNZ R3,DL05S1
RET

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
REINPUT: MOV A,#00H
  MOV R4,#0AH
  MOV R0,#00H
  LJMP PLAY1
TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH
END
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
jiahy
1楼-- · 2019-07-19 06:32
R4的作用是控制循环的啊
刚看了下,发现时DL1S延迟不对。
lizye
2楼-- · 2019-07-19 07:48
不到1s而是很短的延迟人眼看到的就是8
jiahy
3楼-- · 2019-07-19 09:23
怎么改啊?
zhenykun
4楼-- · 2019-07-19 12:08
 精彩回答 2  元偷偷看……
jiaxw
5楼-- · 2019-07-19 15:16
"
DL05S:  MOV R3,#60H
DL05S1: DJNZ R3,DL05S1
RET
"这个子程序不对,单片机指令周期1微秒,循环六十次,不到0.5毫秒...
P0口数值一直跳变,但太快(小于0.05秒),人眼无法识别...
spark周
6楼-- · 2019-07-19 16:42
你的延时还不到1ms
延时时间长点

一周热门 更多>