ARDUINO Arduino. Проблемы с компиляцией скетча

vladimir vm

✩✩✩✩✩✩✩
2 Ноя 2019
2
0
Да, микро библиотеки установлены, но к сожалению ошибка. Ошибка не в том, что их нет, а в том что повторное определение классе. Или я чего-то не понимаю
 

олег8881

✩✩✩✩✩✩✩
6 Окт 2019
12
0
может кто знает что это,
C:\Lightrings\Lightrings.ino:42:0: warning: "HIGH" redefined

#define HIGH 3



In file included from sketch\Lightrings.ino.cpp:1:0:

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:40:0: note: this is the location of the previous definition

#define HIGH 0x1



C:\Lightrings\Lightrings.ino:1366:0: warning: "FRAMES_PER_SECOND" redefined

#define FRAMES_PER_SECOND 40



C:\Lightrings\Lightrings.ino:216:0: note: this is the location of the previous definition

#define FRAMES_PER_SECOND 60



In file included from C:\Lightrings\Lightrings.ino:1:0:

C:\Users\����8881\Documents\Arduino\libraries\FastLED/FastLED.h:14:21: note: #pragma message: FastLED version 3.003.002

# pragma message "FastLED version 3.003.002"

^~~~~~~~~~~~~~~~~~~~~~~~~~~

C:\Lightrings\Lightrings.ino: In function 'Twinkle()':

C:\Lightrings\Lightrings.ino:1780:22: warning: iteration 124 invokes undefined behavior [-Waggressive-loop-optimizations]

if (redStates[l] > 1 || greenStates[l] > 1 || blueStates[l] > 1) {

~~~~~~~~~~~^

C:\Lightrings\Lightrings.ino:1779:28: note: within this loop

for(uint16_t l = 0; l < N_PIXELS_2; l++) {

Скетч использует 20218 байт (7%) памяти устройства. Всего доступно 253952 байт.
Глобальные переменные используют 1962 байт (23%) динамической памяти, оставляя 6230 байт для локальных переменных. Максимум: 8192 байт.
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,253
1,297
Москва
#define HIGH 3 вот это кто писал ?
HIGH уже описано как высокий уровень сигнала для выводов, на ряду с LOW
переопределение его может отразиться на работе проектов
 

олег8881

✩✩✩✩✩✩✩
6 Окт 2019
12
0
#define HIGH 3 вот это кто писал ?
HIGH уже описано как высокий уровень сигнала для выводов, на ряду с LOW
переопределение его может отразиться на работе проектов
,взял с ютуба ,люстру делаю замаялся уже,светодиоды просто горят иногда чет помаргивает,
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,253
1,297
Москва
код у меня скомпилировался без предупреждений. для ардуион нано.

Но делать так крайне плохо.. даже в самом коде есть сторока
//digitalWrite(13, HIGH);
которая будет конфликтовать с определением

Исправить не сложно
#define HIGH 3
меняем на
#define M_HIGH 3

в тексте ищем "songmode" и в строках где есть HIGH меняем на M_HIGH
(строки 365, 1013)
 

олег8881

✩✩✩✩✩✩✩
6 Окт 2019
12
0
код у меня скомпилировался без предупреждений. для ардуион нано.

Но делать так крайне плохо.. даже в самом коде есть сторока
//digitalWrite(13, HIGH);
которая будет конфликтовать с определением

Исправить не сложно
#define HIGH 3
меняем на
#define M_HIGH 3

в тексте ищем "songmode" и в строках где есть HIGH меняем на M_HIGH
(строки 365, 1013)
хорошо,пробую
 

олег8881

✩✩✩✩✩✩✩
6 Окт 2019
12
0
исправил,сейчас вот что пишет,


C:\Lightrings\Lightrings.ino:1366:0: warning: "FRAMES_PER_SECOND" redefined

#define FRAMES_PER_SECOND 40



C:\Lightrings\Lightrings.ino:216:0: note: this is the location of the previous definition

#define FRAMES_PER_SECOND 60



In file included from C:\Lightrings\Lightrings.ino:1:0:

C:\Users\����8881\Documents\Arduino\libraries\FastLED/FastLED.h:14:21: note: #pragma message: FastLED version 3.003.002

# pragma message "FastLED version 3.003.002"

^~~~~~~~~~~~~~~~~~~~~~~~~~~

C:\Lightrings\Lightrings.ino: In function 'Twinkle()':

C:\Lightrings\Lightrings.ino:1780:22: warning: iteration 124 invokes undefined behavior [-Waggressive-loop-optimizations]

if (redStates[l] > 1 || greenStates[l] > 1 || blueStates[l] > 1) {

~~~~~~~~~~~^

C:\Lightrings\Lightrings.ino:1779:28: note: within this loop

for(uint16_t l = 0; l < N_PIXELS_2; l++) {
 

олег8881

✩✩✩✩✩✩✩
6 Окт 2019
12
0
код у меня скомпилировался без предупреждений. для ардуион нано.

Но делать так крайне плохо.. даже в самом коде есть сторока
//digitalWrite(13, HIGH);
которая будет конфликтовать с определением

Исправить не сложно
#define HIGH 3
меняем на
#define M_HIGH 3

в тексте ищем "songmode" и в строках где есть HIGH меняем на M_HIGH
(строки 365, 1013)
исправил,сейчас вот что пишет,


C:\Lightrings\Lightrings.ino:1366:0: warning: "FRAMES_PER_SECOND" redefined

#define FRAMES_PER_SECOND 40



C:\Lightrings\Lightrings.ino:216:0: note: this is the location of the previous definition

#define FRAMES_PER_SECOND 60



In file included from C:\Lightrings\Lightrings.ino:1:0:

C:\Users\����8881\Documents\Arduino\libraries\FastLED/FastLED.h:14:21: note: #pragma message: FastLED version 3.003.002

# pragma message "FastLED version 3.003.002"

^~~~~~~~~~~~~~~~~~~~~~~~~~~

C:\Lightrings\Lightrings.ino: In function 'Twinkle()':

C:\Lightrings\Lightrings.ino:1780:22: warning: iteration 124 invokes undefined behavior [-Waggressive-loop-optimizations]

if (redStates[l] > 1 || greenStates[l] > 1 || blueStates[l] > 1) {

~~~~~~~~~~~^

C:\Lightrings\Lightrings.ino:1779:28: note: within this loop

for(uint16_t l = 0; l < N_PIXELS_2; l++) {
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,253
1,297
Москва
У тебя стоит в настройках видимо стоит вывод сообщений компилятора по умолчанию. Но при этом скетч должен компилироваться и загружаться. Это все предупреждения... даже с просто HIGH бед M_HIGH должно загружаться.


Электрику проверить не могу, схему собирать не буду, не интересно, да и нет у меня лед нужных.
 

олег8881

✩✩✩✩✩✩✩
6 Окт 2019
12
0
У тебя стоит в настройках видимо стоит вывод сообщений компилятора по умолчанию. Но при этом скетч должен компилироваться и загружаться. Это все предупреждения... даже с просто HIGH бед M_HIGH должно загружаться.


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

Старик Похабыч

★★★★★★★
14 Авг 2019
4,253
1,297
Москва
ну на видео тоже не фонтан как бы... я не в восторге был, Гуверовская лента намотанная на обруч будет приятнее имхо
 

PrettyBoy

✩✩✩✩✩✩✩
9 Ноя 2019
2
0
Доброго времени суток, при загрузке любого скейтча даже пустого пишет:

C:\Users\Dell\AppData\Local\Temp\ccP0TDiY.ltrans0.ltrans.o: In function `main':

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/main.cpp:43: undefined reference to `setup'

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/main.cpp:46: undefined reference to `loop'

collect2.exe: error: ld returned 1 exit status

exit status 1
Ошибка компиляции для платы Arduino Nano.
 

Yurman

✩✩✩✩✩✩✩
9 Ноя 2019
3
0
Привет. Классная идея и достойный проект, зацепило)) Думаю не одного меня зацепило когда увидел отзывы на сайте Али)) вот только сам не программист и для меня дело не легкое) Хотя казалось бы все легко когда подключил светодиод и заставил его мигать. Думал будет так же и с лентой. Но вот уже целый день сижу колупаюсь в библиотеках и скетчах которые были в исходниках и у меня выдает постоянно одну ошибку которая тянет на все остальные вкладки. Может это я как-то криво поставил библиотеку какую-то? Или где-то в скетче нужно, что-то поменять? Такая ошибка только у меня вылезла? Кто-нибудь с такой проблемой сталкивался? Если можете помочь?

Arduino: 1.8.8 (Windows 7), Плата:"Arduino Nano, ATmega328P"
GyverMatrixOS_v1.12:51:24: error: 'CRGB' does not name a type; did you mean 'OCR0B'?
#define GLOBAL_COLOR_1 CRGB::Green // основной цвет №1 для игр
D:\Arduino\GyverMatrixBT-master\firmware\GyverMatrixOS_v1.12\GyverMatrixOS_v1.12.ino:138:1: note: in expansion of macro 'GLOBAL_COLOR_1'
utility:58:47: error: 'CRGB' has not been declared
void drawDigit3x5(byte digit, byte X, byte Y, CRGB color) {
utility:70:49: error: 'CRGB' has not been declared
void drawDigit3x5_s(byte digit, byte X, byte Y, CRGB COLOR) {
utility:82:47: error: 'CRGB' has not been declared
void drawDigit5x7(byte digit, byte X, byte Y, CRGB COLOR) {
utility:192:14: error: variable or field 'fillAll' declared void
void fillAll(CRGB color) {
utility:192:14: error: 'CRGB' was not declared in this scope
D:\Arduino\GyverMatrixBT-master\firmware\GyverMatrixOS_v1.12\utility.ino:192:14: note: suggested alternative: 'OCR0B'
void fillAll(CRGB color) {
OCR0B
utility:199:38: error: 'CRGB' has not been declared
void drawPixelXY(int8_t x, int8_t y, CRGB color)
D:\Arduino\GyverMatrixBT-master\firmware\GyverMatrixOS_v1.12\GyverMatrixOS_v1.12.ino: In function 'void setup()':
GyverMatrixOS_v1.12:208:3: error: 'FastLED' was not declared in this scope
FastLED.addLeds<WS2812, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection( TypicalLEDStrip );
GyverMatrixOS_v1.12:208:19: error: 'WS2812' was not declared in this scope
FastLED.addLeds<WS2812, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection( TypicalLEDStrip );
D:\Arduino\GyverMatrixBT-master\firmware\GyverMatrixOS_v1.12\GyverMatrixOS_v1.12.ino:208:19: note: suggested alternative: 'CS12'
FastLED.addLeds<WS2812, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection( TypicalLEDStrip );
CS12
GyverMatrixOS_v1.12:26:21: error: 'GRB' was not declared in this scope
#define COLOR_ORDER GRB // порядок цветов на ленте. Если цвет отображается некорректно - меняйте. Начать можно с RGB
D:\Arduino\GyverMatrixBT-master\firmware\GyverMatrixOS_v1.12\GyverMatrixOS_v1.12.ino:208:36: note: in expansion of macro 'COLOR_ORDER'
FastLED.addLeds<WS2812, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection( TypicalLEDStrip );
D:\Arduino\GyverMatrixBT-master\firmware\GyverMatrixOS_v1.12\GyverMatrixOS_v1.12.ino:26:21: note: suggested alternative: 'DDRB'
#define COLOR_ORDER GRB // порядок цветов на ленте. Если цвет отображается некорректно - меняйте. Начать можно с RGB
\Arduino\GyverMatrixBT-master\firmware\GyverMatrixOS_v1.12\GyverMatrixOS_v1.12.ino:208:36: note: in expansion of macro 'COLOR_ORDER'
FastLED.addLeds<WS2812, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection( TypicalLEDStrip );
GyverMatrixOS_v1.12:208:49: error: 'leds' was not declared in this scope
FastLED.addLeds<WS2812, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection( TypicalLEDStrip );
D:\Arduino\GyverMatrixBT-master\firmware\GyverMatrixOS_v1.12\GyverMatrixOS_v1.12.ino:208:49: note: suggested alternative: 'secs'
FastLED.addLeds<WS2812, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection( TypicalLEDStrip );
secs
GyverMatrixOS_v1.12:208:80: error: 'TypicalLEDStrip' was not declared in this scope
FastLED.addLeds<WS2812, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection( TypicalLEDStrip );
D:\Arduino\GyverMatrixBT-master\firmware\GyverMatrixOS_v1.12\custom.ino: In function 'void customModes()':
сustom:70:42: error: 'CRGB' has not been declared
case 0: fillString("КРАСНЫЙ", CRGB::Red);
duino\GyverMatrixBT-master\firmware\GyverMatrixOS_v1.12\custom.ino: In function 'void nextModeHandler()':
custom:194:3: error: 'FastLED' was not declared in this scope
FastLED.clear();
D:\Arduino\GyverMatrixBT-master\firmware\GyverMatrixOS_v1.12\custom.ino: In function 'void prevModeHandler()':
custom:202:3: error: 'FastLED' was not declared in this scope
FastLED.clear();
D:\Arduino\GyverMatrixBT-master\firmware\GyverMatrixOS_v1.12\custom.ino: In function 'void modeFader()':
custom:218:7: error: 'FastLED' was not declared in this scope
FastLED.setBrightness(fadeBrightness);
ustom:231:7: error: 'FastLED' was not declared in this scope
FastLED.setBrightness(fadeBrightness);
и тд.....

Спасибо заранее))
 

gunner47

★★★★★✩✩
18 Июн 2019
253
393
Спасибо, что откликнулись!
Однако, это всё, что есть... см. скрин

А, что там еще должно быть?
Возможно, есть ошибки с правами на файл/директорию? Владелец/чтение/запись? Проверьте, чтобы у вашего пользователя были права.
Вообще, вам, наверное, будет полезнее обратиться на форум людей, которые работают под линуксом. Удачно скомпилировать любой проект, а потом браться за лампу. Здесь, похоже, все на винде. А из специфического: вам нужно установить все библиотеки проекта и поддержку платформы esp8266. Под windows это делается в Arduino IDE, как показывал Алекс в видео.
 

Александр Симонов

★★★★✩✩✩
2 Авг 2018
727
208
Доброго времени суток, при загрузке любого скейтча даже пустого пишет:

C:\Users\Dell\AppData\Local\Temp\ccP0TDiY.ltrans0.ltrans.o: In function `main':

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/main.cpp:43: undefined reference to `setup'

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/main.cpp:46: undefined reference to `loop'

collect2.exe: error: ld returned 1 exit status

exit status 1
Ошибка компиляции для платы Arduino Nano.
Потому что скетч не может быть пустым. Когда в Arduino IDE созадёшь новый скетч, он разве пустой?
 

Айбулат

✩✩✩✩✩✩✩
11 Ноя 2019
2
0
Добрый день, друзья!

Огромное спасибо Алексею за идею и реализацию проекта!

Собрал макет устройства на столе, пока без ящика, концевиков, помпы и светодиодов. Протестировал. Пришло в голову несколько идей как улучшить работу устройства, как устранить небольшие баги. Если Алексей не будет возражать, выкладываю доработанный скетч.
Я использую Arduino Leonardo, поэтому есть изменения в подключениях в отличии от родного скетча:
  • Подключен экран LCD 1602 с I2C: SDA – 2 выход, SCL – 3 выход
  • Помпа перенесена с выхода 2 на выход 16
Что изменено, добавлено:
  • Адаптация под двух строчный (2стр*16 симв) дисплей lcd 1602 с I2C с драйверами с поддержкой русского языка.
  • Устранен баг неправильной отработки наливатора в случае если в процессе разлива менять режим (с Р на А и наоборот).
  • Устранен баг при котором если наливается уже вторая рюмка, то сняв налитую первую гусак резко отворачивается и проливает жидкость.
  • Устранен баг с отрицательным значением объема при вращении ручки энкодера.
  • Устранен баг, при котором таймер отключения устройства включался при наливе первой рюмки и при некоторых значениях мог приводить к внезапной парковке устройства в середине процесс разлива.
  • Сделан экран приветствия. На нем вы можете установить какое то сообщение, а так же кратковременно увидеть статистику по количеству включений устройства, кол-во рюмок и грамм жидкости.
  • Учитывается и выводится на экран количество рюмок и грам за сессию (с момента включения). Информация всегда на экране.
  • Учитывается и выводится на экран количество включений устройства, количество рюмок и количество грамм тотально (т.е. с момента первого включения устройства) + две строки доп информации на ваше усмотрение. Эта информация отображается там, где раньше были отрицательные значения объема (крутим ручку энкодера), а так же при старте устройства.
  • Записывает в постоянную память последнее установленное значение наливаемого объема. Т.е. если установить, например объем налива 35 гр, то после выключения и включения устройства начальный объем будет 35 гр.
  • Несколько других мелких исправлений.

Если будет желание – тестируйте, высказывает замечания.
Если будут баги – то сначала залейте скетч Алексея и посмотрите, есть ли этот те же баг в оригинальной прошивке.
Добрый день, Levonti!
попробовал запустить ваш скетч, выхлодит следующая ошибка. Насколько я понимаю, не хватает одной из библиотек. Что думаете по этому поводу?
Использую плату Бузина Нано (аналог оригинальной платы)
Аналогичная проблема была при загрузке оригинального скетча от Alex_gyver, однако здесь ошибка: a4' was not declared in this scope.


Текст ошибки вашего скетча:

несколько библиотек найдено для "GyverTM1637.h"
GyverDrink_v1.0_levonti_debug_1602:58:20: error: EEPROM.h: No such file or directory

#include <EEPROM.h>

^

compilation terminated.

Используется: C:\Program
Несколько библиотек найдено для "ServoSmooth.h"
Используется: C:\Program
Несколько библиотек найдено для "Servo.h"
Используется: C:\Program
Не используется: C:\Program
Несколько библиотек найдено для "microLED.h"
Используется: C:\Program
Несколько библиотек найдено для "LCD_1602_RUS.h"
Используется: C:\Program
Несколько библиотек найдено для "LiquidCrystal_I2C.h"
Используется: C:\Program
Не используется: C:\Users\root\AppData\Local\Arduino15\packages\digistump\hardware\avr\1.6.7\libraries\DigisparkLCD
Не используется: C:\Program
Несколько библиотек найдено для "Wire.h"
Используется: C:\Users\root\AppData\Local\Arduino15\packages\digistump\hardware\avr\1.6.7\libraries\Wire
exit status 1
EEPROM.h: No such file or directory
 

clamber

✩✩✩✩✩✩✩
14 Ноя 2019
1
0
Хочу научится програмированию на ардуино.
Купил китайскую UNO установил IDE решил залить скетч блинк(мигание диода) в результате компиляции получил
C:\Users\Lenovo\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.1\cores\arduino/Arduino.h:257:10: fatal error: pins_arduino.h: No such file or directory

#include "pins_arduino.h"

^~~~~~~~~~~~~~~~

compilation terminated.

exit status 1
Ошибка компиляции для платы Arduino/Genuino Uno
Как я понял нет библиотеки pins_arduino.h подскажите как с этим бороться.
Заранее благодарю.