ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
21 декабря
1322000 Топик полностью
vpv.vpv (20.06.2023 09:27, просмотров: 211) ответил vpv.vpv на IAR AVR, запись в EEPROM. Подскажите, в чем причина, толи лыжи не едут, толи я?
Кстати EWAVR 8.10 при высокой оптимизации генерит худший код, чем старый 7.30 
315 WriteTimer (1000); // зарядить обратный таймер на 1000 мс

       8.10
\ 00000000 94F8   CLI
\ 00000002 EE08   LDI R16, 232
\ 00000004 2E40   MOV R4, R16
\ 00000006 E003   LDI R16, 3
\ 00000008 2E50   MOV R5, R16
\ 0000000A 9478   SEI

7.30

\ 00000000 94F8 CLI

\ 00000002 EE08 LDI R16, 232

\ 00000004 E013 LDI R17, 3

\ 00000006 0128 MOVW R5:R4, R17:R16

\ 00000008 9478 SEI



319 eeTestTime = (unsigned int) 1000 - uiReadTimer();

       8.10
\ 0000000C 94F8 CLI
\ 0000000E 0192 MOVW R19:R18, R5:R4
\ 00000010 9478 SEI
\ 00000012 E000 LDI R16, 0
\ 00000014 2711 CLR R17
\ 00000016 E141 LDI R20, 17
\ 00000018 .... RCALL __eeput16_8

7.30

\ 00000010 94F8 CLI

\ 00000012 9478 SEI

\ 00000014 2700 CLR R16

\ 00000016 2711 CLR R17

\ 00000018 .... LDI R20, eeTestTime

\ 0000001A .... RCALL __eeput16_8



Старый даже об чтение счётчика мараться не стал - все повыкидывал к херам! :))))