реклама на сайте
подробности

 
 
> Простейший вопрос по портам мк
ps1x
сообщение Mar 15 2006, 22:44
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 300
Регистрация: 15-03-06
Из: Москва
Пользователь №: 15 284



Недавно начал изучение МК АВР и неожидано возник (я думаю простейший) вопрос: как в cvAVR обращаться не к целому порту, а к какой нибудт определенной ножке, например:
не
PORTB=0x7F;
а чтонибудь вроде:
PORTB.PIN0=0 или 1
это возможно?
заранее спасибо.

Прошу прощения и извиняюсь, тему закрыть и удалить. blush.gif
Просто надо почитать исходники и подсмотреть.
Итак правильный ответ:
PORTB.0=1;
т.е. на выходе 0 порта B будет лог 1
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Laptop
сообщение Mar 19 2006, 16:45
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 142
Регистрация: 19-11-05
Пользователь №: 11 103



#define SETB(port,bit) port|=(1<<(bit))
#define CLRB(port,bit) port&=~(1<<(bit))
#define BIT(addr,bit) (addr & (1<<(bit)))
#define CPLB(addr,bit) (addr=addr^(1<<(bit)))

Соответственно установить, очистить, проверить в if, инвертировать.
Само собой все имена битов и адреса подключаются из файла определений к контроллеру и могут быть переопределены с новыми функциональными именами позднее.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 05:08
Рейтинг@Mail.ru


Страница сгенерированна за 0.01372 секунд с 7
ELECTRONIX ©2004-2016