Порты вводавывода A...
 
Уведомления
Очистить все

Порты вводавывода Atmega

1 Посты
1 Пользователи
0 Likes
4,126 Просмотры
ukr823f
(@ukr823f)
New Member
Присоединился: 12 лет назад
Сообщения: 1
Topic starter  

Ув. опытные коты, я уже начинаю потихоньку сума сходить с этими портами вводавывода.
Собрал в протеусе схемку с одной кнопкой и светодиодом Написал программку, но в ответ тишина. Нехочет МК понимать что я нажимаю кнопку. Хотя в протеусе даже видно что на ножке PINB0 - появляется 0.

пишу в десятичной системе, может тут ошибка?
для получения статуса кнопки может нужно использовать битовую операцию (которые я вообще немогу понять....) (REGISTR & (1<<N))

Мне в этом плане больше нравиться CodeVisionAVR.
Там понятно можно описывать. Но как я понял синтаксис как в AVR studio более правильный и именно его нужно использовать.
И вообще есть ли у CAVR недостатки перед AVR Studio?

вот код и файл протеуса. Подскажите где я ошибся, а то это уже тихий ужас...
Код:
#include <avr/io.h> // Хотим использовать порты ввода/вывода
#include <util/delay.h> // Хотим использовать функции задержек

int main()
{

DDRB = 0;
DDRD = 255;

PORTB = 255;
PORTD = 0;

while(1)
{
if (PINB0==1)
{
PORTD=(0<<0);
_delay_ms(1000);
PORTD=(1<<0);
_delay_ms(1000);

}
else
{
PORTD=0;
}

}

}


Цитата