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

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

Ответ: Можно в лоб

Отправлено AndyNaza 05 февраля 2008 г. 10:37
В ответ на: Сравнение с 1/0 бита элемента массива как лучше сделать в С++ отправлено <font color=gray>-</font> 04 февраля 2008 г. 21:11

//Имена сигналов поста , биты 0, .......... 7
const AnsiString NamesSerPost[]={"Пуск","Стоп","МАН","","ПРМ","ПРД","Порог",""};

//фрагмент кода
unsigned int Signal=pCurEvent->Data[1];//извлекаем данные
for (int n=0;n<8;n++)
{
AnsiString TempStr=NamesSerPost[n];
if (TempStr!="")
ClientDataSet1->FieldValues[TempStr]=Signal&0x01;
Signal>>=1;
};

это пример с билдера, мод МК можно оптимизировать - цикл фор пменять на чтото тира count_bits=8; do { ... } while (--count_bits);


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

Ответы


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

Сообщение:

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

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

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

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