Подключение двух датчиков температуры с выводом на олед дисплей
- Войдите на сайт для отправки комментариев
Ср, 11/01/2017 - 20:35
Прошу помощи допилить скетч по двум датчикам и олед дисплею
Прошу помощи допилить скетч по двум датчикам и олед дисплею
Если хотите , что бы Вам помогли, научитесь постить текст программы в соответствии с правилами форума,
У меня подключено два датчика через программу FLProg можно глянуть через ком порт и температура хорошо считывается с двух датчико.А на дисплее только с одного и все.Помогите сделать чтоб ч двух.
Выброси свою бяку, код считывания отсюда, на дисплей выводим temp1, temp2 (взамен Serial.print()).
Спс попробую и отпишусь позже.Я же только начинаю этим заниматься.А подключать же паразитно к одним пинам?
А подключать же паразитно к одним пинам?
Нахрена? Или для третий провод никак не провести? Паразитное питание - способ найти гемморой. При возможности лучше избегать.
Ошибку выдает и все.
Вот здесь
Какая у вас плата, что значит запись:
OneWire ds(2); должно быть OneWire ds(2);
Какую ошибку выдает?
Привет.Я щас на работе.Приеду и попробую.Я когда проверку делаю или пытаюсь загрузить скетч отмечает эту строку.Вот я ее и скопировал.Я приеду и переделаю как ты написал.А что значит в замен (Serial.print())?Как это взамен?
Плата UNO
Сбросьте потом весь свой скетч и ошибки которые выдает.
Там есть блок с Serial.print-ами, вместо него ваш OLED с правильными переменными.
Arduino: 1.6.14 Hourly Build 2016/11/25 05:33 (Windows 10), Плата:"Arduino/Genuino Uno" sketch_jan12a:30: error: expected constructor, destructor, or type conversion before ';' token ^ C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_714489\sketch_jan12a.ino: In function 'void __vector_6()': sketch_jan12a:34: error: 'nbsp' was not declared in this scope if (n) {ds.reset(); // сброс шины ^ sketch_jan12a:38: error: 'nbsp' was not declared in this scope else {ds.reset(); ^ sketch_jan12a:38: error: 'nbsp' was not declared in this scope else {ds.reset(); ^ C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_714489\sketch_jan12a.ino:41:68: warning: value computed is not used [-Wunused-value] temp1 = ds.read() | (ds.read()<<8); //прочитаны 2 байта ^ C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_714489\sketch_jan12a.ino:46:68: warning: value computed is not used [-Wunused-value] temp2 = ds.read() | (ds.read()<<8); //прочитаны 2 байта ^ C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_714489\sketch_jan12a.ino: At global scope: sketch_jan12a:49: error: expected constructor, destructor, or type conversion before ';' token ^ sketch_jan12a:50: error: expected constructor, destructor, or type conversion before ';' token ^ exit status 1 expected constructor, destructor, or type conversion before ';' token Этот отчёт будет иметь больше информации с включенной опцией Файл -> Настройки -> "Показать подробный вывод во время компиляции"вот поменял как ты написал в начале и теперь самая нижняя строчка вот такая ошибка
#include <OneWire.h> OneWire ds(2); byte addr1[8]={0x28,0x04,0x13,0x80,0x06,0x00,0x00,0xF8}; byte addr2[8]={0x28,0x47,0x1F,0x5C,0x06,0x00,0x00,0xE6}; volatile int temp1,temp2; void setup(void) { Serial.begin(9600); WDTCSR=(1<<WDCE)|(1<<WDE); //установить биты WDCE WDE (что б разрешить запись в другие биты WDTCSR=(1<<WDIE)| (1<<WDP2)|(1<<WDP1); // разрешение прерывания + выдержка 1 секунда // (55 страница <a href="<a href="<a href="http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf" rel="nofollow">http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf</a>" rel="nofollow"><a href="http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf" rel="nofollow">http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf</a></a>" rel="nofollow">даташита</a>) // снять все ремарки если нужно поменять разрешение // ds.reset(); // сброс шины // ds.select(addr2); //выставить адрес // ds.write(0x4E); // разрешение записать конфиг // ds.write(0x7F); // Th контроль температуры макс 128грд // ds.write(0xFF); //Tl контроль температуры мин -128грд // ds.write(0x60); // 0x60 12-бит разрешение, 0x00 -9бит разрешение } void loop(void) { Serial.print("Temp1= "); Serial.print(temp1/16.0); Serial.print(" "); Serial.print("Temp2= "); Serial.println(temp2/16.0); } ISR (WDT_vect){ //вектор прерывания WD static boolean n=0; // флаг работы: запрос температуры или её чтение n=!n; if (n) {ds.reset(); // сброс шины ds.write(0xCC);//обращение ко всем датчикам ds.write(0x44);// начать преобразование (без паразитного питания) } else {ds.reset(); ds.select(addr1); ds.write(0xBE); // Read Scratchpad (чтение регистров) temp1 = ds.read() | (ds.read()<<8); //прочитаны 2 байта // получение с 2-го датчика ds.reset(); ds.select(addr2); ds.write(0xBE); // Read Scratchpad (чтение регистров) temp2 = ds.read() | (ds.read()<<8); //прочитаны 2 байта } } поменял вторую строчку как ты написал
теперь на 50 ошибка.
Вместо пробелов вставляются HTML-коды неразрывного пробела...
Arduino: 1.6.14 Hourly Build 2016/11/25 05:33 (Windows 10), Плата:"Arduino/Genuino Uno" C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_904842\sketch_jan12a.ino: In function 'void loop()': sketch_jan12a:26: error: 'myOLED' was not declared in this scope myOLED.clrScr(); // Стираем все с экрана ^ sketch_jan12a:27: error: 'BigNumbers' was not declared in this scope myOLED.setFont(BigNumbers); // Инициализируем шрифт ^ sketch_jan12a:28: error: expression cannot be used as a function myOLED.print(String("Temp1= "()),CENTER, 10); // Выводим текущее значение температуры датчика, округленное до десятых ^ C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_904842\sketch_jan12a.ino: At global scope: sketch_jan12a:31: error: expected constructor, destructor, or type conversion before ';' token ^ C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_904842\sketch_jan12a.ino: In function 'void __vector_6()': sketch_jan12a:35: error: 'nbsp' was not declared in this scope if (n) {ds.reset(); // сброс шины ^ sketch_jan12a:39: error: 'nbsp' was not declared in this scope else {ds.reset(); ^ sketch_jan12a:39: error: 'nbsp' was not declared in this scope else {ds.reset(); ^ C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_904842\sketch_jan12a.ino:42:68: warning: value computed is not used [-Wunused-value] temp1 = ds.read() | (ds.read()<<8); //прочитаны 2 байта ^ C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_904842\sketch_jan12a.ino:47:68: warning: value computed is not used [-Wunused-value] temp2 = ds.read() | (ds.read()<<8); //прочитаны 2 байта ^ C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_904842\sketch_jan12a.ino: At global scope: sketch_jan12a:50: error: expected constructor, destructor, or type conversion before ';' token ^ sketch_jan12a:51: error: expected constructor, destructor, or type conversion before ';' token ^ Несколько библиотек найдено для "OLED_I2C.h" Используется: C:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C Не используется: C:\Users\victo\Desktop\arduino-nightly\libraries\OLED_I2C exit status 1 'myOLED' was not declared in this scope Этот отчёт будет иметь больше информации с включенной опцией Файл -> Настройки -> "Показать подробный вывод во время компиляции"щас вот такую ошибку когда я начал добавлять дисплей
#include <DallasTemperature.h> #include <OLED_I2C.h> OLED myOLED(A4, A5, A4); // Определяем пины I2C интерфейса: UNO и NANO -- SDA - пин A4, SCL - пин A5; MEGA -- SDA - пин 20, SCL - пин 21 #include <OneWire.h> OneWire ds(2); extern uint8_t BigNumbers[]; // Подключаем шрифт byte addr1[8]={0x28,0x04,0x13,0x80,0x06,0x00,0x00,0xF8}; byte addr2[8]={0x28,0x47,0x1F,0x5C,0x06,0x00,0x00,0xE6}; volatile int temp1,temp2; void setup(void){ myOLED.begin(); // Инициализируем библиотеку OLED_I2C { Serial.begin(9600); WDTCSR=(1<<WDCE)|(1<<WDE); //установить биты WDCE WDE (что б разрешить запись в другие биты WDTCSR=(1<<WDIE)| (1<<WDP2)|(1<<WDP1); // разрешение прерывания + выдержка 1 секунда // (55 страница <a href="<a href="<a href="http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf" rel="nofollow">http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf</a>" rel="nofollow"><a href="http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf" rel="nofollow">http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf</a></a>" rel="nofollow">даташита</a>) // снять все ремарки если нужно поменять разрешение // ds.reset(); // сброс шины // ds.select(addr2); //выставить адрес // ds.write(0x4E); // разрешение записать конфиг // ds.write(0x7F); // Th контроль температуры макс 128грд // ds.write(0xFF); //Tl контроль температуры мин -128грд // ds.write(0x60); // 0x60 12-бит разрешение, 0x00 -9бит разрешение } void loop(void) { myOLED.clrScr(); // Стираем все с экрана myOLED.setFont(BigNumbers); // Инициализируем шрифт myOLED.print(String("Temp1= "()),CENTER, 10); // Выводим текущее значение температуры датчика, округленное до десятых myOLED.update(); // Обновляем информацию на дисплее } ISR (WDT_vect){ //вектор прерывания WD static boolean n=0; // флаг работы: запрос температуры или её чтение n=!n; if (n) {ds.reset(); // сброс шины ds.write(0xCC);//обращение ко всем датчикам ds.write(0x44);// начать преобразование (без паразитного питания) } else {ds.reset(); ds.select(addr1); ds.write(0xBE); // Read Scratchpad (чтение регистров) temp1 = ds.read() | (ds.read()<<8); //прочитаны 2 байта // получение с 2-го датчика ds.reset(); ds.select(addr2); ds.write(0xBE); // Read Scratchpad (чтение регистров) temp2 = ds.read() | (ds.read()<<8); //прочитаны 2 байта } } Сделал вот так и теперь другая ошибка
Arduino: 1.6.14 Hourly Build 2016/11/25 05:33 (Windows 10), Плата:"Arduino/Genuino Uno" C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_905524\sketch_jan12a.ino: In function 'void setup()': sketch_jan12a:31: error: a function-definition is not allowed here before '{' token { ^ sketch_jan12a:37: error: 'nbsp' was not declared in this scope ^ In file included from C:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\cores\arduino/Arduino.h:30:0, from sketch\sketch_jan12a.ino.cpp:1: sketch_jan12a:38: error: expected unqualified-id before string constant ISR (WDT_vect){ //вектор прерывания WD ^ sketch_jan12a:38: error: a function-definition is not allowed here before '{' token ISR (WDT_vect){ //вектор прерывания WD ^ sketch_jan12a:57: error: expected '}' at end of input ^ Несколько библиотек найдено для "OLED_I2C.h" Используется: C:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C Не используется: C:\Users\victo\Desktop\arduino-nightly\libraries\OLED_I2C exit status 1 a function-definition is not allowed here before '{' token Этот отчёт будет иметь больше информации с включенной опцией Файл -> Настройки -> "Показать подробный вывод во время компиляции"чет у вас с методологией не то.
надо датчики подключить к плате дисплей тоже к плате. соответственно плата посредник между этими устройствами. соответственно вы можете в циклей через опред. промежутки получать опрашивая оба по очереди их анные а потом выводить по очереди тоже оба.
ну или если вы хотите чтоб дисплей управлял платой т.е. задавал опрос датчиков.
то в цикле у вас опрашивается дисплей на нажатием кнопки. проверяется какая кнопка нажать а затем опрашивается нужный датчик
NVV, вы как код вставляете? Никакого "nbsp" там быть не должно.
да ни то что с митодологией я просто только начал изучать ну можно сказать по мелочи.Вот почему такая белиберда.А в этом скетче как сделать я уже сделал что данных двое на дисплее но показания одинаковы что тут не так?
Объясни как я же сказал я можно сказать ниже 1 класса пробую читаю но вот пока не получается вы же уже как знающий человек.
Этот вставился нормально, а что с предыдущим, на который ссылку давал?
Ты?Какой первый?
NVV, вы как код вставляете? Никакого "nbsp" там быть не должно.
Оно у меня там везде)))))
Вот над которым я мучался просто добавляя строчки сделал на дисплее ДОМ и УЛИЦА но показания с одного на двух одинаковы
Который от dimax, если он такой же в IDE, как и здесь на экране, то работать никогда не будет.
ну а который последний скинул чкетч может там как то подправить можно?Он со 2 пина берет а если второй в 3 пин кинуть?
Короче, код с сайта ты вставляешь через задницу. Разворачиваешь код, наводишь курсор, справа высветится окошко, в нем наводишь на иконку "code", нажимаешь. Код откроется в новом окне, из этого окна копируешь и вставляешь в IDE. Прозит.
Не забудь прописать свои адреса датчиков.
IDE?
да не в адресах проблема то :))))
там температура при инициализацию в сетапа ж меряется.
а потом в цикле он ее передает ... одну и ту же которая и была прочитана при старте системы
IDE?
Там, где скетчи пишешь и чем в Ардуинку заливаешь. Надеюсь не блокнотом.))))
вот как ты сказал сделал прога его проверила и все норм.Теперь надо добавить библеотеки олед и адреса?
уже понял
да не в адресах проблема то :))))
там температура при инициализацию в сетапа ж меряется.
а потом в цикле он ее передает ... одну и ту же которая и была прочитана при старте системы
Ты код смотрел? Там ни сетапа, ни хрена нет. Одни служебные символы.
вот как ты сказал сделал прога его проверила и все норм.Теперь надо добавить библеотеки олед и адреса?
Оставляешь свою OLED библиотеку и что с ней связано. Все от DallasTemperature в топку.
Должны быть OLED и OneWire/
а температуре фукция в нее надо тогда передавать номер нужного датчика.
#include <OLED_I2C.h> #include <OneWire.h> #include <OLED_I2C.h> OLED myOLED(A4, A5, A4); // Определяем пины I2C интерфейса: UNO и NANO -- SDA - пин A4, SCL - пин A5; MEGA -- SDA - пин 20, SCL - пин 21 extern uint8_t RusFont[]; // Подключаем русский шрифт extern uint8_t SmallFont[]; // Подключаем латинский шрифтом OneWire ds(2); byte addr1[8]={0x28,0x04,0x13,0x80,0x06,0x00,0x00,0xF8}; byte addr2[8]={0x28,0x47,0x1F,0x5C,0x06,0x00,0x00,0xE6}; volatile int temp1,temp2; extern uint8_t BigNumbers[]; // Подключаем шрифт void setup(void){ myOLED.begin(); { Serial.begin(9600); WDTCSR=(1<<WDCE)|(1<<WDE); //установить биты WDCE WDE (что б разрешить запись в другие биты WDTCSR=(1<<WDIE)| (1<<WDP2)|(1<<WDP1); // разрешение прерывания + выдержка 1 секунда // (55 страница <a href="<a href="<a href="http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf" rel="nofollow">http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf</a>" rel="nofollow"><a href="http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf" rel="nofollow">http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf</a></a>" rel="nofollow">даташита</a>) // снять все ремарки если нужно поменять разрешение // ds.reset(); // сброс шины // ds.select(addr2); //выставить адрес // ds.write(0x4E); // разрешение записать конфиг // ds.write(0x7F); // Th контроль температуры макс 128грд // ds.write(0xFF); //Tl контроль температуры мин -128грд // ds.write(0x60); // 0x60 12-бит разрешение, 0x00 -9бит разрешение } void loop(void) { myOLED.clrScr(); // Стираем все с экрана myOLED.setFont(RusFont); // Инициализируем русский шрифт myOLED.print("NTVGTHFNEHF", CENTER, 0); // Выводим надпись "Русский язык" myOLED.print("EKBWF", LEFT, 10); // Выводим надпись "Русский язык" myOLED.setFont(BigNumbers); // Инициализируем шрифт myOLED.print(String(temperature()),RIGHT, 10); // Выводим текущее значение температуры датчика, округленное до десятых myOLED.setFont(RusFont); // Инициализируем русский шрифт myOLED.print("LJV", LEFT, 40); // Выводим надпись "Русский язык" myOLED.setFont(BigNumbers); // Инициализируем шрифт myOLED.print(String(temperature()),RIGHT, 40); // Выводим текущее значение температуры датчика, округленное до десятых myOLED.update(); // Обновляем информацию на дисплее } } ISR (WDT_vect){ //вектор прерывания WD static boolean n=0; // флаг работы: запрос температуры или её чтение n=!n; if (n) {ds.reset(); // сброс шины ds.write(0xCC);//обращение ко всем датчикам ds.write(0x44);// начать преобразование (без паразитного питания) } else {ds.reset(); ds.select(addr1); ds.write(0xBE); // Read Scratchpad (чтение регистров) temp1 = ds.read() | (ds.read()<<8); //прочитаны 2 байта // получение с 2-го датчика ds.reset(); ds.select(addr2); ds.write(0xBE); // Read Scratchpad (чтение регистров) temp2 = ds.read() | (ds.read()<<8); //прочитаны 2 байта } }Вот ошибка
Arduino: 1.6.14 Hourly Build 2016/11/25 05:33 (Windows 10), Плата:"Arduino/Genuino Uno" C:\Users\victo\Desktop\arduino-nightly\arduino-builder -dump-prefs -logger=machine -hardware C:\Users\victo\Desktop\arduino-nightly\hardware -tools C:\Users\victo\Desktop\arduino-nightly\tools-builder -tools C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr -built-in-libraries C:\Users\victo\Desktop\arduino-nightly\libraries -libraries C:\Users\victo\OneDrive\Документы\Arduino\libraries -fqbn=arduino:avr:uno -ide-version=10614 -build-path C:\Users\victo\AppData\Local\Temp\arduino_build_163057 -warnings=all -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr -verbose C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_54110\sketch_jan12d.ino C:\Users\victo\Desktop\arduino-nightly\arduino-builder -compile -logger=machine -hardware C:\Users\victo\Desktop\arduino-nightly\hardware -tools C:\Users\victo\Desktop\arduino-nightly\tools-builder -tools C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr -built-in-libraries C:\Users\victo\Desktop\arduino-nightly\libraries -libraries C:\Users\victo\OneDrive\Документы\Arduino\libraries -fqbn=arduino:avr:uno -ide-version=10614 -build-path C:\Users\victo\AppData\Local\Temp\arduino_build_163057 -warnings=all -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr -verbose C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_54110\sketch_jan12d.ino Using board 'uno' from platform in folder: C:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr Using core 'arduino' from platform in folder: C:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr Detecting libraries used... "C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10614 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\cores\arduino" "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\variants\standard" "C:\Users\victo\AppData\Local\Temp\arduino_build_163057\sketch\sketch_jan12d.ino.cpp" -o "nul" "C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10614 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\cores\arduino" "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\variants\standard" "-IC:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C" "C:\Users\victo\AppData\Local\Temp\arduino_build_163057\sketch\sketch_jan12d.ino.cpp" -o "nul" "C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10614 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\cores\arduino" "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\variants\standard" "-IC:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C" "-IC:\Users\victo\Desktop\arduino-nightly\libraries\OneWire" "C:\Users\victo\AppData\Local\Temp\arduino_build_163057\sketch\sketch_jan12d.ino.cpp" -o "nul" "C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10614 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\cores\arduino" "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\variants\standard" "-IC:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C" "-IC:\Users\victo\Desktop\arduino-nightly\libraries\OneWire" "C:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C\DefaultFonts.c" -o "nul" "C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10614 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\cores\arduino" "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\variants\standard" "-IC:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C" "-IC:\Users\victo\Desktop\arduino-nightly\libraries\OneWire" "C:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C\OLED_I2C.cpp" -o "nul" "C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10614 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\cores\arduino" "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\variants\standard" "-IC:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C" "-IC:\Users\victo\Desktop\arduino-nightly\libraries\OneWire" "C:\Users\victo\Desktop\arduino-nightly\libraries\OneWire\OneWire.cpp" -o "nul" Generating function prototypes... "C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10614 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\cores\arduino" "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\variants\standard" "-IC:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C" "-IC:\Users\victo\Desktop\arduino-nightly\libraries\OneWire" "C:\Users\victo\AppData\Local\Temp\arduino_build_163057\sketch\sketch_jan12d.ino.cpp" -o "C:\Users\victo\AppData\Local\Temp\arduino_build_163057\preproc\ctags_target_for_gcc_minus_e.cpp" "C:\Users\victo\Desktop\arduino-nightly\tools-builder\ctags\5.8-arduino10/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\Users\victo\AppData\Local\Temp\arduino_build_163057\preproc\ctags_target_for_gcc_minus_e.cpp" Компиляция скетча... "C:\Users\victo\Desktop\arduino-nightly\hardware\tools\avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10614 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\cores\arduino" "-IC:\Users\victo\Desktop\arduino-nightly\hardware\arduino\avr\variants\standard" "-IC:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C" "-IC:\Users\victo\Desktop\arduino-nightly\libraries\OneWire" "C:\Users\victo\AppData\Local\Temp\arduino_build_163057\sketch\sketch_jan12d.ino.cpp" -o "C:\Users\victo\AppData\Local\Temp\arduino_build_163057\sketch\sketch_jan12d.ino.cpp.o" C:\Users\victo\AppData\Local\Temp\arduino_modified_sketch_54110\sketch_jan12d.ino: In function 'void setup()': sketch_jan12d:30: error: a function-definition is not allowed here before '{' token void loop(void) { ^ Несколько библиотек найдено для "OLED_I2C.h" Используется: C:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C Не используется: C:\Users\victo\Desktop\arduino-nightly\libraries\OLED_I2C Используем библиотеку OLED_I2C в папке: C:\Users\victo\OneDrive\Документы\Arduino\libraries\OLED_I2C (legacy) Используем библиотеку OneWire версии 2.3.2 из папки: C:\Users\victo\Desktop\arduino-nightly\libraries\OneWire exit status 1 a function-definition is not allowed here before '{' tokenУ меня они все в одни и теже пины подключены их подключить в разные?