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

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

Подскажите как 8-bit MCU обрабатывать длинные последовательности и выбирать определённые данные по маске?

Отправлено ZoltriX (72.167.183.33) 12 января 2011, г. 23:42


Из микросхемы в последовательном интерфейсе поступает информация, всего 256 бит.
Примем условную нумерацию принятых битов от 1 до 256 - это их последовательный адрес = А.
Нужно в памяти объявить массив где хранить эту информацию и выбирать её по маске.
Раз у контроллера организация памяти 8-битная, то объявим массив
unsigned char DATA_Buffer[32];
Получим занятые 32 Байта в которые последовательно записаны эти 256 бит. Как последовательно записать этот массив - это не сложно и очевидно.

Но основная задача, как выбрать из него определённое количество бит (N), начинающиеся с определённого адреса (А) и передать их в 8-битную величину OUT??

Например хочу в OUT выбрать N = 4 бита с номерами A = 15,16,17,18 или
N = 6 битов с номерами А = 7, 8, 9, 10, 11, 12.
Видно что номер адреса может быть любой и не кратен 8, то есть часть битов может быть с одной восьмиразрадной ячейки памяти, часть с другой.

Как работать с таким длинным масивом???
Или есть смысл обьявить массив unsigned bit DATA_Buffer[256]; ??

Натолкните на умную мысль, какие есть воображения??


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

Ответы


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

Сообщение:

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

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

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

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