ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
3 июля
1042580 Топик полностью
arhiv6 (07.10.2020 11:53, просмотров: 362) ответил POV_ на stm32... я где-то накосячил, не пойму где...
1) Может быть проблема при MAX_SWITCH < 3. Если на платформе NULL==0 то делать так: 
static i2c_device_t * client[MAX_SWITCH] = { NULL }; // первый==NULL, остальные элементы будут равны 0.
static i2c_device_t * client[MAX_SWITCH] = { }; // все элементы будут равны 0.

Если на платформе вдруг NULL!=0, то так:


static i2c_device_t * client[MAX_SWITCH]; memset (client, NULL, sizeof(client));


2) что происходит в i2c_SelectBus ?


3) к теме не относится, но можно сразу писать


typedef struct {
..... } i2c_device_t; // сразу объявляем тип из безымянной структуры