Пробовал я так, тоже не получается. 2.88 соответствует 589 с ацп
- Код: Выделить всё • Развернуть
if(adc_data < 589)
PORTB.0=1;
результат такой же...
P/s город казань. Мне он очень не нравиться. Не хочу что бы его название мне глаза мазолило. Если без этого никак, то конечно заполню..
Добавлено спустя 20 минут 58 секунд:А индикатор какой?
Через UАRT выводить значения adc_data?
Я в протеус симулирую, как там эти переменные посмотреть не знаю. Покапаюсь, может чего найду.
Сделал так:
- Код: Выделить всё • Развернуть
interrupt [ADC_INT] void adc_isr(void)
{
PORTВ.1^=1; // добавил
adc_data=ADCH;
}
светодиод моргает, значит АЦП работает.
Добавлено спустя 26 минут 6 секунд:Посмотрел в протеусе АDCL = 785 при 12 вольтах и 589 при 9в и 523 при 8в
Все измеряется все правильно, а при 8 вольтах светодиод все равно горит. Может все же нельзя из прерывания выносить? Пробовал и задержку делать между запусками ацп, чтоб время обработать было, все равно не помогает.
Добавлено спустя 9 минут 31 секунду:Ой описался при 12 вольтах светодиод все равно горит.