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

 
 
> Работа с битами регистров
rekcuf
сообщение Jul 28 2009, 17:43
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 5-10-08
Пользователь №: 40 704



Впервые делаю проект на атмеге8, компилятор IAR.

Что надо сделать, чтобы работать с битами похожим образом:

Код
PORTB.PB1 = 1;
PORTB_PB1 = 0;
PC1 = 0;

if(PORTA.PA0)
...

?

Сейчас работает только один способ:
Код
PORTB |= (1 << PB2);

if((PORTB & (1 << PB2)))
...

Но после компиляторов для микрочипа PICC18 и MCC18 такой способ кажется дикостью и жутко неудобен.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Rst7
сообщение Jul 29 2009, 10:25
Сообщение #2


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
я так понял, это заголовочник кривой, т.к. в iousb1287.h все нормально прописано:


Да, кривой. Но PORTx_BitN будет работать.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
igneous
сообщение Feb 26 2010, 12:44
Сообщение #3





Группа: Участник
Сообщений: 8
Регистрация: 17-10-07
Из: Чебоксары
Пользователь №: 31 432



Помогите, пожалуйста, с аналогичной проблемой но при работе с ATxmega32A4.
Галка Enable_bit_definitions установлена. Хочется, чтобы банально была возможность работы с PORTX_BitN, SREG_BitN и GPION_BitN.

В самом хедере ATxmega32A4.h имеем:
Код
sfrb GPIO0 = 0x0000        // General Purpose IO Register 0
sfrb SREG = 0x003F        // Status Register
sfrb PORTA_OUT = 0x0604        // I/O Port Output

Как раскрывется sfbr я не нашел...
В mega32 например периферия описывается как:
Код
SFR_B (SREG,0x003F)

ну и в iomacro.h есть определение:
Код
#define SFR_B(_NAME, _ADDR) SFR_B_BITS(_NAME, _ADDR, \
                                    Bit0,Bit1,Bit2,Bit3,Bit4,Bit5,Bit6,Bit7)


Подскажите, пожалуйста, как бы это все согласовать, чтобы работало?
Go to the top of the page
 
+Quote Post



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

 


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


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