Вот этим пользуюсь в ИАРе и отлично работает. Тоже с задворков (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено cout 08 апреля 2005 г. 10:31
В ответ на: ...и даже в этом году совсем короткий.... отправлено † 08 апреля 2005 г. 10:25


Задание константы в двоичном виде
Пример вызова:
BIN8(11110101)
BIN16(11110101,11001100)
BIN32(11110101,11001100,11001111,01010101)
/*---------------------------------------*/
#define LongToBin(n) \
(\
((n >> 21) & 0x80) | \
((n >> 18) & 0x40) | \
((n >> 15) & 0x20) | \
((n >> 12) & 0x10) | \
((n >> 9) & 0x08) | \
((n >> 6) & 0x04) | \
((n >> 3) & 0x02) | \
((n ) & 0x01) \
)
#define __BIN(n) LongToBin(0x##n##l)
#define BIN8(n) __BIN(n)
#define BIN16(b1,b2) ((__BIN(b1) << 8) + __BIN(b2))
#define BIN32(b1,b2,b3,b4) ((__BIN(b1) << 24) + (__BIN(b2) << 16) + (__BIN(b3) << 8) + __BIN(b4))


Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru