|
还是看汇编实在。
程序的写法也很重要 功能差不多的程序,写法不一样。汇编就不一样。
// 1303 //============================================================================= // 1304 // 10毫秒延迟 // 1305 //利用 TIM3 10 MS 的中断计算myclock.temp // 1306 //=============================================================================
RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock30 Using cfiCommon0 CFI Function delay_10ms THUMB // 1307 void delay_10ms(int nb) // 1308 { // 1309 myclock.temp=0; delay_10ms: LDR.N R1,??delay_10ms_0 ;; myclock + 16 MOVS R2,#+0 STR R2,[R1, #+0] // 1310 while( myclock.temp<nb); ??delay_10ms_1: LDR.N R1,??delay_10ms_0 ;; myclock + 16 LDR R1,[R1, #+0] CMP R1,R0 BCC.N ??delay_10ms_1 // 1311 // 1312 }//END SUB BX LR ;; return DATA ??delay_10ms_0: DC32 myclock + 16 CFI EndBlock cfiBlock30 |
|