Регистриран на: Съб Сеп 05, 2009 12:01 am Мнения: 39
MPLAB C32 въпроси
Здравейте, започнах да разучавам езика C за 32 - битови контролери на микорочип, но още в началото запънах. Въпроса ми е как на една променлива да кажем 32 битова мога да и манипулирам битовете да ги установявам в 0 или 1, да използвам старшите 16 или младшите 16 битове (битово и байтово ориентирани операции). На microC съм го правил, но тук нещо не мога да уцеля синтаксиса, а в ръководствата за C32 не открих нещо свързано с проблема.
Нед Юли 31, 2011 12:35 pm
michev
Ранг: Форумен бог
Регистриран на: Сря Юли 11, 2007 10:16 am Мнения: 1730
Какъв синтаксис бре..
установяване на определен бит (bit) в 1:
Код:
uint32_t promenliva = 55;
promenliva |= (1<<bit);
установяване на определен бит (bit) в 0:
Код:
uint32_t promenliva = 55;
promenliva &= ~(1<<bit);
взимане на младшата част (16 бит) :
Код:
uint32_t promenliva = 55; uint16_t low;
low = promenliva & 0xFFFF;
взимане на старшата част(16 бит)
Код:
uint32_t promenliva = 55; uint16_t hi;
hi = promenliva >> 16;
Нед Юли 31, 2011 6:37 pm
borisov
Ранг: Минаващ
Регистриран на: Съб Сеп 05, 2009 12:01 am Мнения: 39
Потребители разглеждащи този форум: 0 регистрирани и 3 госта
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл