ошибка: ожидаемое первичное выражение до токена '{'

0

Кто-то из вас может помочь мне с проблемой кода? Я получил общую ошибку компиляции: ошибка: ожидаемое первичное выражение перед '{' токеном

с этой частью кода:

for (int i=0; i<2; i++) { 

   PotValue[i] = analogRead(PotPin[i]);   //This is the error line

   MappedPotValue[i]=(PotValue[i]+1)/103;

 //SomeCode Here
}

Так. Моя цель - написать в PotValue Array все значения всех Pots в Arduino Board

PotValue и MappedPotValue - это int массивы длиной 2

И PotPin объявлен как:

#define PotPin {A0, A1} // These are two analog pins on arduino board

цикл for находится внутри прерывания таймера

спасибо для справки

Теги:
arrays
arduino
for-loop

2 ответа

2
analogRead(PotPin[i]);

анализируется как:

analogRead({A0, A1}[i]);

Это синтаксическая ошибка. В C или C++ нет литералов массива.

1

Вам следует избегать препроцессора. Используйте это вместо #define:

static const int PotPin[] = {A0, A1};

(при необходимости измените тип int).

Ещё вопросы

Сообщество Overcoder
Наверх
Меню