реклама на сайте
подробности

 
 
> Побитовый сдвиг данных в структуре, Как реализовать
kt368
сообщение Oct 25 2011, 07:15
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 454
Регистрация: 13-10-10
Из: Киев
Пользователь №: 60 135



Здравствуйте! Имеется юнион, содержащий структуру в которой находятся данные, которые необходимо предать по SPI. Можно ли в цикле сдвигать структуру влево и передавать на ножку МК старший бит структуры?
Вот код юниона и структуры:
Код
struct SPI_TX_str {
    unsigned dch2        :1;
    unsigned ch2        :1;
    unsigned dch1        :1;
    unsigned ch1        :1;
    unsigned ch2_disp    :8;
    unsigned ch1_disp    :8;
};

struct all {
    unsigned sw                :4;
    unsigned ch2_disp        :8;
    unsigned ch1_disp        :8;
};

union SPI_union {
    struct all             all;
    struct SPI_TX_str     bits;
};
union SPI_union TXdata

И можно ли мне сделать для данного случая такой юнион, к которому я смогу обращаться типа такого:
Код
TXdata=0bxxxxxxxxxxxxxxxxxxxx;
?
Т.е чтобы записывать во все переменные, которые входят в состав структуры (которая в юнионе) при помощи одной команды на Си, как написано выше. Если б был тип данных, который занимал настраиваемое количество бит, то сделав юнион с таким типом данных я б смог его сдвигать. Может я что-то не так говорю?
Заранее спасибо.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th June 2025 - 21:59
Рейтинг@Mail.ru


Страница сгенерированна за 0.01358 секунд с 7
ELECTRONIX ©2004-2016