Size: a a a

🎄Embedded Group

2021 January 22

SK

Stas Koynov in 🎄Embedded Group
ну ведь хорошо сидели. опять вы грязь в чат несете....
источник

l

lbh in 🎄Embedded Group
Василий Ярошенко
ооо прикольно
тоже в планах - даже матрицу купил
расказывай уже...зачем завтра ждать
напишет навальный - наш президент :D
источник

AK

Anton Kirilenko in 🎄Embedded Group
Ну Ёрк?
источник

ВЯ

Василий Ярошенко... in 🎄Embedded Group
lbh
напишет навальный - наш президент :D
сильно сомневаюсь - что это поможет ))
источник

OA

Ostrizhniy Alexey in 🎄Embedded Group
На сдвиговых регистрах?
источник

LZ

Leonid Zaliubovskii in 🎄Embedded Group
Andrew K
Ребята подскажите как обьеденить байт и битовое описание переменной?
так - что то не получилось
typedef struct    
{
 union {
  U8  OUTPUT_ALL;
  struct OUTPUT_ALL
   {
     U8  OUTPUT_1:1;
     U8  OUTPUT_2:1;
     U8  OUTPUT_3:1;
     U8  OUTPUT_4:1;
     U8  OUTPUT_5:1;
     U8  OUTPUT_6:1;
     U8  OUTPUT_7:1;
     U8  OUTPUT_8:1;
   };
  } my_union;
} __TVALUE;
Во первых нужно помнить что это платформо-зависимый код и важно не упустить порядок байт, если многобайтное значение.

В общем случае правило следующее:

1. Создаём тип


typedef union _united_t
{
   uint8_t raw_data;
   
   struct {
          uint8_t bit0 : 1;
          ...
          uint8_t bit7 : 1;
   } bits;
} united_t;

united_t united var;


2. Использование

united_var.bits.b0 = 1;

united_var.raw_data = 0x77;
источник

AK

Andrew K in 🎄Embedded Group
так а что завтра будет?
источник

PS

Pavel Shilin in 🎄Embedded Group
Ostrizhniy Alexey
На сдвиговых регистрах?
не, это же esp32 + матрица на ws2812b
источник

PS

Pavel Shilin in 🎄Embedded Group
Я делал, чтобы гифки могли проигрывать и по wifi/bluetooth управлять
источник

Г

Гоша in 🎄Embedded Group
Вы тут это, своими матрицами делитесь, я тоже поделюсь)
источник

PS

Pavel Shilin in 🎄Embedded Group
Ля, тоже такая лежит
источник

OA

Ostrizhniy Alexey in 🎄Embedded Group
Pavel Shilin
не, это же esp32 + матрица на ws2812b
Неплохо жарит, впору светильник делать )))
источник

SK

Stas Koynov in 🎄Embedded Group
Leonid Zaliubovskii
Во первых нужно помнить что это платформо-зависимый код и важно не упустить порядок байт, если многобайтное значение.

В общем случае правило следующее:

1. Создаём тип


typedef union _united_t
{
   uint8_t raw_data;
   
   struct {
          uint8_t bit0 : 1;
          ...
          uint8_t bit7 : 1;
   } bits;
} united_t;

united_t united var;


2. Использование

united_var.bits.b0 = 1;

united_var.raw_data = 0x77;
хз мне не нравиться что биты через .bits. лучше сделать ее анонимной тогда просто данные.bitX
источник

ВЯ

Василий Ярошенко... in 🎄Embedded Group
Leonid Zaliubovskii
Во первых нужно помнить что это платформо-зависимый код и важно не упустить порядок байт, если многобайтное значение.

В общем случае правило следующее:

1. Создаём тип


typedef union _united_t
{
   uint8_t raw_data;
   
   struct {
          uint8_t bit0 : 1;
          ...
          uint8_t bit7 : 1;
   } bits;
} united_t;

united_t united var;


2. Использование

united_var.bits.b0 = 1;

united_var.raw_data = 0x77;
Спасибо, надеюсь - буду помнить
источник

PS

Pavel Shilin in 🎄Embedded Group
Ostrizhniy Alexey
Неплохо жарит, впору светильник делать )))
да норм жарит, это яркость в половину, повербанк на 2,5А тухнет)
источник

LZ

Leonid Zaliubovskii in 🎄Embedded Group
Василий Ярошенко
Спасибо - помогло
хотя в отладчике - хотел изменить бит - оно жутко меня обругало
[syntax error, unexpected INTCONSTANT, expecting IDENTIFIER or TYPE_NAME or COLON2] column 3
Ну и ты можешь менять значение соразмерно длиннее битового поля. т.е. при длинне 1 - допустимые значения 0 или 1, пр идлинне 3 - допустимо 0..7
источник

ВЯ

Василий Ярошенко... in 🎄Embedded Group
Pavel Shilin
да норм жарит, это яркость в половину, повербанк на 2,5А тухнет)
интересно - как на солнце будет видно
источник

PS

Pavel Shilin in 🎄Embedded Group
Ostrizhniy Alexey
Неплохо жарит, впору светильник делать )))
может потухнуть.
источник

LZ

Leonid Zaliubovskii in 🎄Embedded Group
Stas Koynov
хз мне не нравиться что биты через .bits. лучше сделать ее анонимной тогда просто данные.bitX
Ну каждому своё. Так нагляднее и не забываешь с чем имеешь дело
источник

PS

Pavel Shilin in 🎄Embedded Group
Василий Ярошенко
интересно - как на солнце будет видно
норм видно
источник