NewSistems Опубликовано 21 апреля, 2018 Жалоба Поделиться Опубликовано 21 апреля, 2018 Пытаюсь скомпелировать несложный код с опросом бита ADIF (бит запроса прерывания от АЦП) в регистре ADCSRA и вот что получается в коде: if((ADCSRA & (1< 628: 0a e7 ldi r16, 0x7A ; 122 62a: 10 e0 ldi r17, 0x00 ; 0 ADCSRA |= 1< if((ADMUX&0b00001111) == ADCH_OUT){ 62c: 0f 2e mov r0, r31 62e: fc e7 ldi r31, 0x7C ; 124 630: ef 2e mov r14, r31 632: f1 2c mov r15, r1 634: f0 2d mov r31, r0 temp1 = ((ADCH<<8) + ADCL)*100/205; Как видно, никаким ветвлением и не пахнет Пробовал разные варианты оптимизации - никаких принципиальных изменений (кроме O0, но там код вылезает из памяти). Соответственно, код не работает. Что я сделал не так? Читать дальше Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.