Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Ну не получается прочитать PORTA
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > MCS51, AVR, PIC, STM8, 8bit
Mad-man
Висит кнопка (переключатель) PA5, пытаюсь прочитать ее значение и что-то не получается (вычитывается ноль)
Подвожу на PA5 +3.7в (Питание +4в)


CODE

int main()
{

// LED
PORTB = 0b00010000; // PB4 - ONT
DDRB = 0b00010000; // PB4 - off (PS: active low)

// Button
PORTA = 0b00000000; // PA5 - IN
DDRA = 0b00000000; // PA5 - TriState


ACSR = 0b10000000; // Analog Comparator: Off
ADCSRA = 0b10000000; // Disable ADC 0x80;



while(1)
{
if (PORTA & 0x100000) PORTB &= ~0b00010000;

// для проверки
//PORTB &= ~0b00010000;

}




}
Qwertty
Читать то надо не PORTA, a PINA
aaarrr
И 0x100000 - явный перебор.
Mad-man
Не помогает(((( Может быть что-то еще?

Цитата(aaarrr @ Feb 28 2010, 19:43) *
И 0x100000 - явный перебор.


почему? 0x100000 = 5пин
defunct
Цитата(Mad-man @ Feb 28 2010, 18:58) *
Не помогает(((( Может быть что-то еще?

Еще проверьте, что AVCC подключен к VCC. Питание порта A происходит от AVCC.
aaarrr
Цитата(Mad-man @ Feb 28 2010, 19:58) *
почему? 0x100000 = 5пин

Нет, 0x100000 мог бы быть двадцатым.
MDD
Если АЦП висит на PORTA, то и для "цифровой работоспостобности" этого порта нужно подавать питание AVcc. Не забыли?
Пока писал, оказалось, что уже на это обратили Ваше внимание smile.gif
Mad-man
Цитата(MDD @ Feb 28 2010, 20:09) *
Если АЦП висит на PORTA, то и для "цифровой работоспостобности" этого порта нужно подавать питание AVcc. Не забыли?
Пока писал, оказалось, что уже на это обратили Ваше внимание smile.gif


АЦП я выключил
Код
ACSR = 0b10000000; // Analog Comparator: Off
ADCSRA = 0b10000000; // Disable ADC 0x80;



PS: попробовал переключить еще порт в режим PullUp (PORTA.5=1) - тоже нефига.
Но PullUp мне не нужен. Мне режим TriState нужен


Нет, 0x100000 мог бы быть двадцатым.

ПЛЯЯЯЯЯЯЯЯ!!! Точно!)))) Ураааа, все заработало)))))

(с) Буратино был тупой как бревно)))
DpInRock
Исправленный текст программы представьте.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.