Hi All!
HÁÞÉÎÁÀ ÒÁÂÏÔÁÔØ Ó ÍÉËÒÏËÏÎÔÒÏÌÌÅÒÁÍÉ AVR. ÷ ËÁÞÅÓÔ×Å ÓÒÅÄÙ ÒÁÚÒÁÂÏÔËÉ ×ÙÂÒÁÌ WinAVR 20030913 É ÓÉÍÕÌÑÔÏÒ ÉÚ AVRStudio.
óÔÏÌËÎÕÌÓÑ ÓÏ ÓÔÒÁÎÎÙÍ "ÇÌÀËÏÍ" ËÏÍÐÉÌÑÔÏÒÁ. ëÔÏ ÎÉÂÕÄÄØ ÍÏÖÅÔ ÐÒÏËÏÍÍÅÎÔÉÒÏ×ÁÔØ:
ðÉÛÕ:
void delay1(){ unsigned int i; for(i=0xFF;i!=0;i--); }
void delay2(){ unsigned int i; for(i=0x8FFF;i!=0;i--); }
ðÏÌÕÞÁÀ:
20: for(i=0xFF;i!=0;i--);
+00000041: EF8F SER R24 Load immediate
+00000042: E090 LDI R25,0x00 Load immediate
+00000043: 970F SBIW R24,0x0F Subtract immediate from word
+00000044: F7F1 BRNE -0x02 Branch if status flag cleared
21: }
+00000045: 9508 RET Subroutine return @00000046: delay2
25: for(i=0x8FFF;i!=0;i--);
+00000046: EF8F SER R24 Load immediate
+00000047: E89F LDI R25,0x8F Load immediate
+00000048: 9701 SBIW R24,0x01 Subtract immediate from word
+00000049: F7F1 BRNE -0x02 Branch if status flag cleared
26: }
+0000004A: 9508 RET Subroutine return
÷ ÐÏÄÐÒÏÇÒÁÍÍÅ delay1 ÃÉËÌ ×ÙÐÏÌÎÑÅÔÓÑ ÔÏÌØËÏ 17 ÒÁÚ. delay2 - ×ÓÅ × ÐÏÒÑÄËÅ.
éÎÔÅÒÅÓÕÅÔ ÍÎÏÇÏ ÌÉ "ÇÌÀËÏ×" × ËÏÍÐÉÌÑÔÏÒÅ É ÍÏÖÎÏ ÌÉ ÉÍ ÐÏÌØÚÏ×ÁÔØÓÑ × ÐÒÁËÔÉÞÅÓËÏÊ ÒÁÂÏÔÅ?
óÅÒÇÅÊ á×ÄÀÛÉÎ.