Набор "Смарт"

Old student
Offline
Зарегистрирован: 24.10.2021

Здравствуйте!

Пытаясь понять основы программирования микропроцессорных плат приобрёл набор "Смарт" с платой Smart Uno на базе микроконтроллера Atmega - полный аналог контроллера Arduino uno.

Вроде всё чётко, понятно, просто. 

На 3 уроке споткнулся.

При проверке элементарного скетча управление трёхцветного светодиода Arduino ide выдаёт ошибку 

Вообщем это весь коротенький скетч и место ошибки указано.

 
========================================
 
 
 
Подскажите пожалуйста, что тут не так?
sadman41
Offline
Зарегистрирован: 19.10.2016

Что компилятор пишет?

Old student
Offline
Зарегистрирован: 24.10.2021

expected','or';'before 'setup'

Old student
Offline
Зарегистрирован: 24.10.2021
const int RED =   12;
const int GREEN = 11;
const int BLUE =  10;
int COLORS[] = 	{	       0b000,
			            0b001,
			            0b010,
			            0b011,
			            0b100,
			            0b101,
			            0b110,
			            0b111,
		            };
void setup() {            // тут разобрался
  pinMode(RED,    OUTPUT); 
  pinMode(GREEN,  OUTPUT);
  pinMode(BLUE,   OUTPUT);
}
void showColor(int color)	{
	digitalWrite(RED,	bitRead(color, 0));	
	digitalWrite(GREEN,	bitRead(color, 1));	
	digitalWrite(BLUE,	bitRead(color, 2));
}
void loop()	{
	for (int = 0; i<= 7; ++i)	{	//почему 7 я не понял, и опять ошибка expected ungualifled-id before '='token
		showColor(COLORS[i]);
		delay (1500);}
}

извините, дошло - кавычки после закрытия int COLORS[] не поставил. Думал что не надо.

4, 5 урок закончил а с этим далее затор. 

ошибка в 24 строке expected ungualifled-id before '='token
Old student
Offline
Зарегистрирован: 24.10.2021

Я переписал и оно пошло. Но что?, я так и не понял. 

И что даёт цифра 7?

b707
Offline
Зарегистрирован: 26.05.2017

Old student пишет:

Я переписал и оно пошло. Но что?, я так и не понял. 

И что даёт цифра 7?

ошибка не там, где цифра 7, а раньше.

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

В лоб из Книги примеры вставлять не равно научиться. Хотя бы просто прочти и постарайся осознать книгу по Си.
Например: http://cppstudio.com/post/3189/

Old student
Offline
Зарегистрирован: 24.10.2021

Спасибо!

Old student
Offline
Зарегистрирован: 24.10.2021

Не, ошибки я нашёл. Я не понял, какую функцию в проге несёт на себе 7

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Old student пишет:

Не, ошибки я нашёл. Я не понял, какую функцию в проге несёт на себе 7

каждый охотник желает знать где сидит фазан )))

b707
Offline
Зарегистрирован: 26.05.2017

Old student пишет:

Я не понял, какую функцию в проге несёт на себе 7

вы в этом коде ни буквы не понимаете, что ли? насколько я вижу, цикл от 0 до 7 нужен, чтобы продемонстрировать все варианты из массива COLOR

Old student
Offline
Зарегистрирован: 24.10.2021

я считал 8, т.е. 8-ой считается как последний...

Когда то я без книг и учителей осваивал программирование МК61, и проги, и игры довольно серьёзные программировал. Надеюсь и тут справлюсь. Моя основная специальность - энергетика. Сейчас уже много оборудования на контроллерах. Поэтому мне надо чёткое представление как это работает изнутри.

Я так понял, что все контроллеры на проге С++ или нет?

Old student
Offline
Зарегистрирован: 24.10.2021

ua6em пишет:

Old student пишет:

Не, ошибки я нашёл. Я не понял, какую функцию в проге несёт на себе 7

каждый охотник желает знать где сидит фазан )))

тонкая подсказка, Спасибо! 

Rumata
Rumata аватар
Offline
Зарегистрирован: 29.03.2019

Old student пишет:

Я так понял, что все контроллеры на проге С++ или нет?

Из каких предпосылок это стало понятно? Лично у меня этот вопрос даже не скомпилировался в голове - куча критических ошибок вывалилась:) 

b707
Offline
Зарегистрирован: 26.05.2017

Old student пишет:

я считал 8, т.е. 8-ой считается как последний...

от 0 до 7ми включительно = 8

В Си все массивы нумеруются с нуля

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Old student пишет:

Когда то я без книг и учителей осваивал программирование МК61, и проги, и игры довольно серьёзные программировал. Надеюсь и тут справлюсь.

Здесь не разделяют Вашего оптимизма.

И вообще, если можете справиться сами, зачем задаете вопросы на форуме?

Но, в любом случае, форум не может заменить учебник.

Цитата:

Моя основная специальность - энергетика. Сейчас уже много оборудования на контроллерах. Поэтому мне надо чёткое представление как это работает изнутри.

Тогда Вам в первую очередь нужно читать дэйташит на конкретный контроллер.

Цитата:

Я так понял, что все контроллеры на проге С++ или нет?

Нет.

Все неверно: и "С++" - не прога, и контроллеры ничего о С++ не знают.

AndreyD
AndreyD аватар
Offline
Зарегистрирован: 07.10.2018

Old student пишет:

Моя основная специальность - энергетика. Сейчас уже много оборудования на контроллерах. Поэтому мне надо чёткое представление как это работает изнутри.

Надеюсь не на АЭС или ГЭС работаете, хотя на других тоже может неплохо рвануть.

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

b707 пишет:

Old student пишет:

я считал 8, т.е. 8-ой считается как последний...

от 0 до 7ми включительно = 8

В Си все массивы нумеруются с нуля

Если книгу, что я выше предложил, хотя бы просто прочтёт - поймёт. Она не столь большая, за месяц перед сном. И это если всю, а нужно то по факту основы - дней за 5 осилить можно. Ни к чему ООП сейчас, к примеру. 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

BOOM пишет:

b707 пишет:

Old student пишет:

я считал 8, т.е. 8-ой считается как последний...

от 0 до 7ми включительно = 8

В Си все массивы нумеруются с нуля

Если книгу, что я выше предложил, хотя бы просто прочтёт - поймёт. Она не столь большая, за месяц перед сном. И это если всю, а нужно то по факту основы - дней за 5 осилить можно. Ни к чему ООП сейчас, к примеру. 

чуть что сразу книжку читай, книжку читай, с книжкой и дурак сможет, а вот интуитивно СААВСЕМ другое дело )))

Old student
Offline
Зарегистрирован: 24.10.2021

В принципе с кодами, языком ознакомился.

Пишу скетчи (код программы) сам по условию задачи. Практически не подглядывая в книжку.

Теперь выскочила проблема с библиотекой LiguidCrystal. Скачана, установлены была совместно с остальными, но он именно её не видит. Что может быть? 

sadman41
Offline
Зарегистрирован: 19.10.2016

Кто - он?

Old student
Offline
Зарегистрирован: 24.10.2021

sadman41 пишет:
Кто - он?

Интегрированная среда разработки Arduino - или программное обеспечение Arduino (IDE) - содержит текстовый редактор для написания кода.

Пишет: LiguidCrystal.h: No such file or directory

Old student
Offline
Зарегистрирован: 24.10.2021

всё, извините, перезагрузка библиотеки помогла

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

sadman41 пишет:
Кто - он?

Прям классика..."Кузьменок где он, кто он товарищ прапорщик... я спрашиваю где он?  ... да кто он товарищ прапорщик?...ДРЭЛ..."

Old student
Offline
Зарегистрирован: 24.10.2021

18 урок ввёл в замешательство.

Для урока используем 

1. Контроллер;

2. ИК-приёмник с ПУ

3. Провода.

и где же тут монитор, с которого мы код снимаем?

sadman41
Offline
Зарегистрирован: 19.10.2016

Arduino IDE Serial Monitor

Old student
Offline
Зарегистрирован: 24.10.2021

sadman41 пишет:
Arduino IDE Serial Monitor

да нет никакого физического монитора ни в схеме, ни в перечне оборудования.

1. контроллер

2. Модуль ИК-приёмника с ПУ,

3. Провода.

b707
Offline
Зарегистрирован: 26.05.2017

Студент, ты правда такой темный? СериалМонитор - это не устройство, это программа на компе

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

Даже не программа, а «опция» программы Arduino IDE))

А вообще, где тот самый код из примера?

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

Old student пишет:

sadman41 пишет:
Arduino IDE Serial Monitor

да нет никакого физического монитора ни в схеме, ни в перечне оборудования.

1. контроллер

2. Модуль ИК-приёмника с ПУ,

3. Провода.

Фаллически определим через IDE

Old student
Offline
Зарегистрирован: 24.10.2021

b707 пишет:
Студент, ты правда такой темный? СериалМонитор - это не устройство, это программа на компе

да, тёмный. т.е. на мониторе ПК высветится код? Я подключаю питание на эти устройства без ПК.

v258
v258 аватар
Offline
Зарегистрирован: 25.05.2020

Old student пишет:

Я подключаю питание на эти устройства без ПК.

Ну значит ничего нигде и не высветится

v258
v258 аватар
Offline
Зарегистрирован: 25.05.2020

Old student пишет:

и где же тут монитор, с которого мы код снимаем?

Вот здесь

Old student
Offline
Зарегистрирован: 24.10.2021

BOOM пишет:

Даже не программа, а «опция» программы Arduino IDE))

А вообще, где тот самый код из примера?

#include <IRremote.h> //Подключение библиотеки для работы с ИК-приемником.

IRrecv irrecv(8); //Создание объекта приемника с указанием вывода.
decode_results results; //Переменная для хранения принятых данных.
void setup() {
  Serial.begin(9600);   //Инициализация монитора serial-порта.
  irrecv.enableIRIn();  //Включение ИК-приемника.
}

void loop() {
  if (irrecv.decode(&results)) {   //Если получена информация,
    Serial.println(results.value); //вывести значение на монитор порта.
    irrecv.resume();               //Возобновить работу приемника.
  }
}

 

Old student
Offline
Зарегистрирован: 24.10.2021

v258]</p> <p>[quote=Old student пишет:

и где же тут монитор, с которого мы код снимаем?

Вот здесь

Спасибо!

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Old student пишет:

BOOM пишет:

Даже не программа, а «опция» программы Arduino IDE))

А вообще, где тот самый код из примера?

#include <IRremote.h> //Подключение библиотеки для работы с ИК-приемником.

IRrecv irrecv(8); //Создание объекта приемника с указанием вывода.
decode_results results; //Переменная для хранения принятых данных.
void setup() {
  Serial.begin(9600);   //Инициализация монитора serial-порта.
  irrecv.enableIRIn();  //Включение ИК-приемника.
}

void loop() {
  if (irrecv.decode(&results)) {   //Если получена информация,
    Serial.println(results.value); //вывести значение на монитор порта.
    irrecv.resume();               //Возобновить работу приемника.
  }
}

 

Что Вы делаете в 6-й и 12-й строках примера?

Old student
Offline
Зарегистрирован: 24.10.2021

andriano пишет:

Old student пишет:

BOOM пишет:

Даже не программа, а «опция» программы Arduino IDE))

А вообще, где тот самый код из примера?

#include <IRremote.h> //Подключение библиотеки для работы с ИК-приемником.

IRrecv irrecv(8); //Создание объекта приемника с указанием вывода.
decode_results results; //Переменная для хранения принятых данных.
void setup() {
  Serial.begin(9600);   //Инициализация монитора serial-порта.
  irrecv.enableIRIn();  //Включение ИК-приемника.
}

void loop() {
  if (irrecv.decode(&results)) {   //Если получена информация,
    Serial.println(results.value); //вывести значение на монитор порта.
    irrecv.resume();               //Возобновить работу приемника.
  }
}

 

Что Вы делаете в 6-й и 12-й строках примера?

Для чего это нужно мне понятно, мне БЫЛО непонятно о каком мониторе идёт речь.

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

https://translate.google.com/?sl=en&tl=ru&text=monitor&op=translate

Обрати внимание на глагол.