英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流
标题:
[求助]求教各位高手两个延时程序的算法
[打印本页]
作者:
min
时间:
2012-8-18 18:09
标题:
[求助]求教各位高手两个延时程序的算法
有两个延时程序不是很懂,望各位高手指教下,最好能给出每一步的具体算法过程:
第一个:
JSQ EQU 20H
MOVLW 100
MOVWF JSQ
LOOP DECFSZ JSQ, 1
GOTO LOOP
RETURN
第二个:
JSQ EQU 20H
JSQ1 EQU 21H
MOVLW 100
MOVWF JSQ
LOOP MOVLW 16
MOVWF JSQ1
LOOP1 DECFSZ JSQ1,1
GOTO LOOP1
DECFSZ JSQ,1
GOTO LOOP
RETURN
各位高手麻烦下了,谢了,记得给出具体计算方法哦~~
作者:
star
时间:
2012-8-20 09:58
应该是这样的
JSQ EQU 20H
MOVLW 100
MOVWF JSQ
LOOP DECFSZ JSQ, 1
GOTO LOOP
RETURN
先假设你的机器周期为 1US
movlw 是 1个机器周期
decfsz 是 1-2个机器周期
goto 是 2个机器周期
时间为 1+2 +(1+2)*99 +2 =302 US
第二个:
JSQ EQU 20H
JSQ1 EQU 21H
MOVLW 100
MOVWF JSQ
LOOP MOVLW 16
MOVWF JSQ1
LOOP1 DECFSZ JSQ1,1
GOTO LOOP1
DECFSZ JSQ,1
GOTO LOOP
RETURN
同样的道理
先计算 LOOP1的时间
((1+2)*15+3+3)*99+3+1 = 5052
欢迎光临 英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流 (http://enroobbs.com/)
Powered by Discuz! X3.2