Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

такое есть (не мое) [+]

Отправлено MegaJohn (81.222.85.88) 26 ноября 2010, г. 14:53
В ответ на: Вася, пишешь о ерунде, а просил помочь не ответил. Спрошу еще раз, может не увидел? отправлено NZotov 26 ноября 2010, г. 14:24

u8 get_bit( volatile u8 *ptr, u8 number)
{ // âåðíóòü çíà÷åíèå áèòà
return !!( ptr[ number >> 3 ] & ( 1 << ( number & 0x07 ) ) );
}


void set_bit( volatile u8 *ptr, u8 number )
{ // óñòàíîâèòü áèò â 1
ptr[ number >> 3 ] |= ( 1 << ( number & 0x07 ) );
}


void clr_bit( volatile u8 *ptr, u8 number )
{ // ñáðîñèòü áèò â 0
ptr[ number >> 3 ] &= ~( 1 << ( number & 0x07 ) );
}

то есть в вашем случае будет
u8 my_bits[ (100 / 8) + 1 ];

clr_bit( my_bits, 45 ); // сбросить бит 45


Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 97:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru