Команда mega8.h
Добрый день.
Я так понимаю, если в программе поставить такую ссылку #include <mega8.h>, то можно обращаться к портам так: PORTA.4 = 1;. Сейчас я это делаю так: PORTA |= (1<<4);. Поставил Атмель студию 6, но в ней нет такой библиотеки, копнул в сети, что то поставил, но не работает пока. Буду копать дальше, но может быть здесь меня наставят на путь истинный быстрее. Заранее спасибо. |
Указанная библиотека используется в CodeVisionAVR. Способ написания (PORTA.4 = 1;) специфичный для данной среды разработки. Вот этот способ написания PORTA |= (1<<4);. более универсален.
|
Спасибо, уже понял.
PORTA |= (1<<4); конечно универсальный способ, но мне немного неуютно читать такой код, да и набирать каждый раз так, раздражает. Буду пробовать через макросы. Пока не прощаюсь. |
#define A(b,d) (d) > 0 ? (PORTA |= (1<<b)) : (PORTA &=~ (1<<b))
A(3,1); Как то так. Может есть лучше варианты? |
Если честно, мне пока не приходилось пользоваться для этого макросами. Для читабельности все таки использование написания PORTA |= (1<<4); более удобно, особенно если код читает/изменяет другой человек.
|
DDRA &=~ (1<<4) ;
PORTA |= (1<<4); заменил на DA(4,0); PA(4,1); все это лежит в библиотеке io.h tehnosleep, для 3их лиц вставлю комментарий, если что; два дня пробую на вкус, пока только положительные эмоции |
Часовой пояс GMT +4, время: 09:56. |
Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.