对于MOV R6,#250共执行250次,DJNZ R6,D2执行62500次,DJNZ R7,D1执行250次,则每句消耗2个机器时间有:T=(250+62500+250)*2=126000us=126ms=0.126s 故延时越0.126秒 这是个延时子程序。DELAY:MOV R7,#250D1: MOV R6,#250D2: DJNZ R6,D2DJNZ R7,D1RET延时时间的计算方法可见:h...
1、延时假设fosc=12MHz,则一个机器周期为1us,若要求达到10ms延时。 MOV R6,#20 ; 1个机器周期 D2:MOV R7,#249 1个机器周期 DJNZ R7,$;2个机器周期 DJNZ R6,D2;2个机器周期t=1+20×(1+249×2+2)=10021μs≈10ms 2、闪烁灯在P1.0端口上接一个发光二极管L1,使L1不停一亮一灭,亮0.2S,灭0.2...
11、到 7 时,其汇编代码变换为10: void test(void)11: 12:func(0);C:0x0003E4CLRAC:0x0004FFMOVR7,AC:0x0005120015LCALLfunc(C:0015)13:func(0);C:0x0008E4CLRA* 垃圾代码C:0x0009120015LCALLfunc(C:0015)14:func(0);C:0x000CE4CLRA* 垃圾代码C:0x000D120015 LCALLfunc(C:0015)15: 16...
第一句:MOP7,#200在整个子序中只执行一次,且有期指会,所以时$$ j u $$第二可:MOv Rd,a125MQ看到④只要R71不为D,合运到这句,并执近了R7,C,共耗时20Ω第三句:D)N29,OHL2只要6-1不为0就反是执行此可(内值环R成次),又受外请环控制,所以成行$$ R _ { D } = R _ { D } R $$ 相...
1、假设fosc=12MHz,则一个机器周期为1us,若要求达到10ms延时, 则: MOV R6,#20 ; 1个机器周期 D2: MOV R7,#249; 1个机器周期 DJNZ R7,$ ; 2个机器周期 DJNZ R6,D2; 2个机器周期 t=1+20×(1+249×2+2)=10021μs≈10ms 2、闪烁灯 在P1.0端口上接一个发光二极管L1,使L1不停一亮一灭,亮...
D2 P3 MOVP0 0FFH SETB P1 MOVP0 0FFH MOV P1 0FFH 这一段和 同时p1口的AJMP START 注意 DELAY 延CLR P3 注MOVR7 255 NOP MOV R6 255 setb p3 DJNZR6 D2 clr p3 DJNZR7 D1 SETB RET END 综合应用2 小键盘控制的数字显示 设计任务 如果按2那么数码管显示0 如果按1 小键盘p3 小键盘p3 3那么...
DELAY: MOV R7,#250 ;(6)D1: MOV R6,#250 ;(7)D2: DJNZ R6,D2 ;(8)... 分享回复赞 51单片机吧 lin_coola 【跟豆子一起学单片机】6课:单片机并行口结构从硬件电路的连线能看出,有四个按钮被接入到P3口的P32,P33,P34,P35。第一条指令的用途我们能猜到:使P3口全部为高电平。第二条指令是MOV ...
D1MS MOV R7 200DJNZ R7 RET DELAY10MS MOV R6 0FFH D1MS1 LCALL D1MSDJNZ R6 D1MS1RET HELLO TAB0 DB 089H 086H 0C7H 0C7H 0C0H 079H TAB1DB 0BFH 089H ERROR TAB2 DB 086H 088H 088H 0C0H 088H 079H END 持续3秒这时所有指示灯均不亮 或者 按下CALL键 即门铃呼叫键 会有“叮咚”的...
比如当晶振频率是12MHz的时候,1个机器时间是t=12/12MHz=1us 然后看循环R7*R6=62500次,对于MOV R6,#250共执行250次,DJNZ R6,D2执行62500次,DJNZ R7,D1执行250次,则每句消耗2个机器时间有:T=(250+62500+250)*2=126000us=126ms=0.126s 故延时越0.126秒 ...