Кто-то из вас может помочь мне с проблемой кода? Я получил общую ошибку компиляции: ошибка: ожидаемое первичное выражение перед '{' токеном
с этой частью кода:
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 находится внутри прерывания таймера
спасибо для справки
analogRead(PotPin[i]);
анализируется как:
analogRead({A0, A1}[i]);
Это синтаксическая ошибка. В C или C++ нет литералов массива.
Вам следует избегать препроцессора. Используйте это вместо #define
:
static const int PotPin[] = {A0, A1};
(при необходимости измените тип int
).