ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
22 ноября
4095 Топик полностью
Max_Fly (12.01.2004 18:01, просмотров: 1) ответил =mse= на а ассемблерный текст посмотреть?
смотрим (+) 21: DDRB=0xFF; +00000082: EFEF SER R30 Load immediate +00000083: BBE7 OUT 0x17,R30 Out to I/O location 34: TCCR1A=0x00; +00000084: 27EE CLR R30 Exclusive OR +00000085: BDEF OUT 0x2F,R30 Out to I/O location 35: TCCR1B=0x05; +00000086: E0E5 LDI R30,0x05 Load immediate +00000087: BDEE OUT 0x2E,R30 Out to I/O location 36: TCNT1H=0xFF; +00000088: D017 RCALL +0x0017 Relative call subroutine 38: OCR1AH=0x00; +00000089: 27EE CLR R30 Exclusive OR +0000008A: BDEB OUT 0x2B,R30 Out to I/O location 39: OCR1AL=0x00; +0000008B: BDEA OUT 0x2A,R30 Out to I/O location 40: OCR1BH=0x00; +0000008C: BDE9 OUT 0x29,R30 Out to I/O location 41: OCR1BL=0x00; +0000008D: BDE8 OUT 0x28,R30 Out to I/O location 42: OCR1CH=0x00; +0000008E: 93E00079 STS 0x0079,R30 Store direct to data space 43: OCR1CL=0x00; +00000090: 93E00078 STS 0x0078,R30 Store direct to data space 55: EICRA=0x00; +00000092: 93E0006A STS 0x006A,R30 Store direct to data space 56: EICRB=0x00; +00000094: BFEA OUT 0x3A,R30 Out to I/O location 57: EIMSK=0x00; +00000095: BFE9 OUT 0x39,R30 Out to I/O location 60: TIMSK=0x04; +00000096: E0E4 LDI R30,0x04 Load immediate +00000097: BFE7 OUT 0x37,R30 Out to I/O location 61: ETIMSK=0x00; +00000098: 27EE CLR R30 Exclusive OR +00000099: 93E0007D STS 0x007D,R30 Store direct to data space 64: #asm("sei") +0000009B: 9478 SEI Flag set не пугайтесь что загрузка 0xFF в регистр вызывается RCALL оно не раз вызывается (перезагрузка регистров таймера) - вот оно типа соптимизить попыталось по размеру. 36: TCNT1H=0xFF; +00000088: D017 RCALL +0x0017 Relative call subroutine 4: interrupt [TIM1_OVF] void timer1_ovf_isr(void) 5: { +0000007A: 940E00A5 CALL 0x000000A5 Call subroutine 7: PORTB=0x10; +0000007C: E1E0 LDI R30,0x10 Load immediate +0000007D: BBE8 OUT 0x18,R30 Out to I/O location 8: TCNT1H=0xFF; +0000007E: D021 RCALL +0x0021 Relative call subroutine 10: } +0000007F: 940E00B3 CALL 0x000000B3 Call subroutine тут вот аналогично - паразагружается таймер... 8: TCNT1H=0xFF; +0000007E: D021 RCALL +0x0021 Relative call subroutine беда вообщем в том что оно пошагово по этому коду работает. оно в железяке не работает. буквально сдаюсь.