Экземпляр не называет тип в цикле функции void (матрица 8x8)
Привет, ребята, я делаю матрицу 8x8 для начинающих, и при компиляции возникают некоторые ошибки
Ошибки;
- MyBlink:0: ошибка: «Экземпляр» не называет тип
- MyBlink.cpp: в функции «voidloop()»:
-MyBlink:40: ошибка: «строка1» не была объявлена в этой области
Instance code:
//контакт для управления строкой
const int row1 = 2; // номер вывода строки 9
const int row2 = 3; // номер вывода строки 14
const int row3 = 4; // номер вывода строки 8
const int row4 = 5; // номер вывода строки 12
const int row5 = 17; // номер вывода строки 1
const int row6 = 16; // номер вывода строки 7
const int row7 = 15; // номер вывода строки 2
const int row8 = 14; // номер вывода строки 5
//контакт для управления COl
const int col1 = 6; // номер контакта col 13
const int col2 = 7; // номер контакта col 3
const int col3 = 8; // номер контакта col 4
const int col4 = 9; // номер контакта col 10
const int col5 = 10; // номер контакта 6
const int col6 = 11; // номер контакта col 11
const int col7 = 12; // номер контакта col 15
const int col8 = 13; // номер контакта col 16
void setup(){
int i = 0 ;
for(i=2;i<18;i++)
{
pinMode(i, OUTPUT);
}
pinMode(row5, OUTPUT);
pinMode(row6, OUTPUT);
pinMode(row7, OUTPUT);
pinMode(row8, OUTPUT);
for(i=2;i<18;i++) {
digitalWrite(i, LOW);
}
digitalWrite(row5, LOW);
digitalWrite(row6, LOW);
digitalWrite(row7, LOW);
digitalWrite(row8, LOW);
}
void loop(){
int i;
//строка №1 и столбец №1 светодиодов загораются
digitalWrite(row1, HIGH);
digitalWrite(row2, LOW);
digitalWrite(row3, LOW);
digitalWrite(row4, LOW);
digitalWrite(row5, LOW);
digitalWrite(row6, LOW);
digitalWrite(row7, LOW);
digitalWrite(row8, LOW);
digitalWrite(col1, LOW);
digitalWrite(col2, HIGH);
digitalWrite(col3, HIGH);
digitalWrite(col4, HIGH);
digitalWrite(col5, HIGH);
digitalWrite(col6, HIGH);
digitalWrite(col7, HIGH);
digitalWrite(col8, HIGH);
delay(1000);
//выключаем все
for(i=2;i<18;i++) {
digitalWrite(i, LOW);
}
delay(1000);
}
@Daniel Mooney, 👍0
3 ответа
MyBlink:0: ошибка: «Экземпляр» не называет тип
Как только я удалил строку Код экземпляра:
в первой строке, обе ошибки исчезли.
Привет
В вашей программе опечатка. Именно вам следует закомментировать первую строку вашего кода. Добавляем две косые черты в начале первых строк.
Instance code:
Поскольку это недопустимый синтаксис для вашего кода. Компилятор не распознает, что вы пытаетесь сделать. Таким образом, генерируется вторая ошибка, потому что все, что происходит после, может вызвать неизвестную ошибку. В следующий раз попытайтесь решить подобные проблемы, прочитав журнал консоли, поскольку он точно описывает, в каких строках компилятор обнаружил ошибку. Вы можете видеть, что в строке 0 выдается ошибка:
Myblink:0:ошибка....
В этой программе есть несколько ошибок, потому что, как я уже говорил ранее, иногда они генерируются как следствие вашей предыдущей ошибки. Поэтому вам также следует попытаться исправить свои ошибки сверху вниз.
Двоеточие немного вводит в заблуждение: в C++ оно используется для обозначения наследования следующим образом:
Например
class Form
{
int _area;
public Form(area)
{
_area = area;
}
}
class Circle : class Form
...
Однако, вероятно, это не входит в ваши намерения.
Кроме того, двоеточие используется для вызова базовых конструкторов и для меток перехода (goto, никогда не используйте это).
- Как использовать SPI на Arduino?
- Как решить проблему «avrdude: stk500_recv(): programmer is not responding»?
- Как создать несколько запущенных потоков?
- Как подключиться к Arduino с помощью WiFi?
- avrdude ser_open() can't set com-state
- Как узнать частоту дискретизации?
- Что такое Serial.begin(9600)?
- Я закирпичил свой Arduino Uno? Проблемы с загрузкой скетчей на плату