Compilation error: base operand of '->' is not a pointer

TIM4_BASE → CCR1 = channel_3;
Почему базовый оператор → не указатель???
Arduino 1.8.19
Ядро STM32 последнее: 2.8.0
Третий день (с перерывами). Удалил все папки (arduino15 в APPData), переустановил - без результата
Ядро от 2.0.0 до 2.8.0 менял без результата
Где еще покопать?

А почему ты решил, что это должно быть указателем?

Простите, Вы читать не умеете? Там не “оператор”, а “операнд”. Или Вы не понимаете разницы? Там написано, что базовый операнд операции → не является указателем, хотя должен.

А почему? Да, кто ж знает, наверное, потому что Вы так написали.

В любом учебнике по языку С++.

Это если хотите знать и понимать. Если же хотите просто как-то исправить до следующего раза, то хотя бы опубликуйте свой код, чтобы кто-нибудь мог подсказать Вам что и как исправить.

код нормально можете показать?

Прошу пардону, конечно операнд, описка
Когда в Кейле пишешь такую строчку, компилятор понимает, что в регистр CCR1 таймера TIM4 нужно записать значение после знака равества channel_3.
Здесь что не так?

if (!disable_throttle) {				
TIM4_BASE -> CCR1 = channel_3
    TIM4_BASE->CCR2 = channel_3;
    TIM4_BASE->CCR3 = channel_3;
    TIM4_BASE->CCR4 = channel_3; 
  }

Так понятнее?

Что значит “компилятор понимает”?

мне - нет. но я туповат с рождения.

Извиняйте за беспокойство

Видимо нужно пару уроков разницы доступа через «.» и «->» накорябать в вики. Но я не писатель))

Задал этот вопрос на англоязычном фокуме.
Вместо
TIM4_BASE->CCR2
нужно
TIM4->CCR2
Ответили быстро и по существу.
Видно на их форуме не водятся любители поиспражнятся над ТС за нубский вопрос.

а это единственная ошибка в коде?
Судя по синтаксису, вы взяли код от аддона Кларка и пытаетесь его компилить в аддоне СТМ. Ошибок должно быть больше.

Видимо, когда Вы задавали вопрос, Вы уже учли моё замечание

потому что по Вашему первому сообщению Вам не смогли бы помочь даже на марсианско-язычном форуме.

А вообще, если там Вам помогают, не понимаю, что Вы ещё делаете здесь.

А дай-ка ссылку на англоязычный форум.

1 лайк