算时间问题
一个延时函数:
void delay_8us(unsigned int us)
{
while(--us);
}
生成汇编
C:0x0023 7FF4 MOV R7,#0xF4
C:0x0025 7E01 MOV R6,#0x01
C:0x0027 12003F LCALL delay_8us(C:003F)
C:0x003F EF MOV A,R7
C:0x0040 1F DEC R7
C:0x0041 7001 JNZ C:0044
C:0x0043 1E DEC R6
C:0x0044 14 DEC A
C:0x0045 4E ORL A,R6
C:0x0046 70F7 JNZ delay_8us(C:003F)
我算的是 9us*R6*R7+R6+6us 但如果我要延时1ms 我该怎么赋值给us啊
[解决办法]
应该没贴全反汇编,再找找...