Не выводит "Hello World"

yarykp
Offline
Зарегистрирован: 10.07.2017

Всем привет) Я новичок в области ардуино, столкнулся с проблемой что на дисплей не выводить "Hello World". Заливаю скетч тот что есть в примерах и подаю питание.

Вот скетч

#include <LiquidCrystal.h>
 
LiquidCrystal lcd (7,6,5,4,3,2);
 
void setup(){
    lcd.begin(16, 2);
    lcd.print( "Hello, world!" );
}
 
void loop(){
}

T.Rook
Offline
Зарегистрирован: 05.03.2016

Насколько видно из фоток, Вы используете 1602 + адаптер I2C (видно подключение А4, А5 со сторны ардуино, но не очень видно со стороны дисплейчика). Если это так, то Вам необходимо использовать бибилиотеку LiquidCrystal_I2C.h

Внешний урок LCD1602+I2C

 

yarykp
Offline
Зарегистрирован: 10.07.2017

Библиотеки все присутствуют

T.Rook
Offline
Зарегистрирован: 05.03.2016

yarykp пишет:

Библиотеки все присутствуют

Еще раз внимательнее прочтите #1

В приведенном коде Вы используете библиотеку не для I2C подключения.

yarykp
Offline
Зарегистрирован: 10.07.2017

GND ясно что минус

VCC на питание 5v

SDA на A4

SCL на A5

yarykp
Offline
Зарегистрирован: 10.07.2017

Спасибо

 

T.Rook
Offline
Зарегистрирован: 05.03.2016

yarykp пишет:

GND ясно что минус

VCC на питание 5v

SDA на A4

SCL на A5

ага. Эх, ну что ж, зайдем с другой стороны. Какой адрес на шине I2C имеет Ваш дисплейчик?

I2C scanner Вам в помощь

UPD. пока писал, вижу, надеюсь что разобрались :)

yarykp
Offline
Зарегистрирован: 10.07.2017

Не пойму почему, но он не работает)

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>
 
// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);
 
void setup()
{
  // initialize the LCD
  lcd.begin();  
 
// Turn on the blacklight and print a message.
lcd.backlight();
lcd.print("Hello, world!");
}
 
void loop()
{
// Do nothing here...
}

yarykp
Offline
Зарегистрирован: 10.07.2017

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

Судя по всему не "не работает", а "не компилируется".

И ошибку компиляции нужно приводить текстом, а не картинкой (только прежде, чем выкладывать диагностику ошибки на форум, ее необходимо самому прочитать).

yarykp
Offline
Зарегистрирован: 10.07.2017

Я только учусь)

C:\Temp\arduino_modified_sketch_461487\HelloWorld.ino: In function 'void setup()':
 
HelloWorld:10: error: no matching function for call to 'LiquidCrystal_I2C::begin()'
 
   lcd.begin();
 
             ^
 
C:\Temp\arduino_modified_sketch_461487\HelloWorld.ino:10:13: note: candidate is:
 
In file included from C:\Temp\arduino_modified_sketch_461487\HelloWorld.ino:2:0:
 
C:\Program Files (x86)\Arduino\libraries\LCD_1602_RUS-master/LiquidCrystal_I2C.h:58:8: note: void LiquidCrystal_I2C::begin(uint8_t, uint8_t, uint8_t)
 
   void begin(uint8_t cols, uint8_t rows, uint8_t charsize = LCD_5x8DOTS );
 
        ^
 
C:\Program Files (x86)\Arduino\libraries\LCD_1602_RUS-master/LiquidCrystal_I2C.h:58:8: note:   candidate expects 3 arguments, 0 provided
 
Несколько библиотек найдено для "LiquidCrystal_I2C.h"
 Используется: C:\Program Files (x86)\Arduino\libraries\LCD_1602_RUS-master
Не используется: C:\Program Files (x86)\Arduino\libraries\Arduino-LiquidCrystal-I2C-library-master
Не используется: C:\Program Files (x86)\Arduino\libraries\Arduino-LiquidCrystal-I2C-library-master
Не используется: C:\Program Files (x86)\Arduino\libraries\Arduino-LiquidCrystal-I2C-library-master
Не используется: C:\Program Files (x86)\Arduino\libraries\Arduino-LiquidCrystal-I2C-library-master
exit status 1
no matching function for call to 'LiquidCrystal_I2C::begin()'
 
yarykp
Offline
Зарегистрирован: 10.07.2017

Он говорит что в библиотеке у него нету Begin и он не знает что с ним делать

или на сколько я понял использовать void begin(uint8_t cols, uint8_t rows, uint8_t charsize = LCD_5x8DOTS )

T.Rook
Offline
Зарегистрирован: 05.03.2016

yarykp пишет:

Несколько библиотек найдено для "LiquidCrystal_I2C.h"
 Используется: C:\Program Files (x86)\Arduino\libraries\LCD_1602_RUS-master
Не используется: C:\Program Files (x86)\Arduino\libraries\Arduino-LiquidCrystal-I2C-library-master
exit status 1
no matching function for call to 'LiquidCrystal_I2C::begin()'
 

Обратитет внимание на эту ошибку.

 Используется: C:\Program Files (x86)\Arduino\libraries\LCD_1602_RUS-master -  тут нет 'LiquidCrystal_I2C::begin()'

Не используется: C:\Program Files (x86)\Arduino\libraries\Arduino-LiquidCrystal-I2C-library-master - а тут есть.

Надо использовать Arduino-LiquidCrystal-I2C-library-master , как и было указано в #1. А C:\Program Files (x86)\Arduino\libraries\LCD_1602_RUS-master - удалите , хотя бы временно.

И ознакомтесь с этим: Вставка программного кода в тему/комментарий

yarykp
Offline
Зарегистрирован: 10.07.2017

Та библиотеку которая мешала я удалил, залил на плату пример скетча но уви "Hello World" нету

Вот скетч 

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup()
{
  // initialize the LCD
  lcd.begin();

// Turn on the blacklight and print a message.
lcd.backlight();
lcd.print("Hello, world!");
}

void loop()
{
// Do nothing here...
}

 

 

T.Rook
Offline
Зарегистрирован: 05.03.2016

Ответ на вопрос из #8?

И за одно, в противовес "чего то нет", пример "а что есть" И хорошо бы это делать после поиска, хотя бы по форуму.

yarykp
Offline
Зарегистрирован: 10.07.2017
I2CScanner ready!
starting scanning of I2C bus from 8 to 119...
addr: 8       
addr: 9       	addr: 10       	addr: 11       	addr: 12       
addr: 13       	addr: 14       	addr: 15       	addr: 16       
addr: 17       	addr: 18       	addr: 19       	addr: 20       
addr: 21       	addr: 22       	addr: 23       	addr: 24       
addr: 25       	addr: 26       	addr: 27       	addr: 28       
addr: 29       	addr: 30       	addr: 31       	addr: 32       
addr: 33       	addr: 34       	addr: 35       	addr: 36       
addr: 37       	addr: 38       	addr: 39       	addr: 40       
addr: 41       	addr: 42       	addr: 43       	addr: 44       
addr: 45       	addr: 46       	addr: 47       	addr: 48       
addr: 49       	addr: 50       	addr: 51       	addr: 52       
addr: 53       	addr: 54       	addr: 55       	addr: 56       
addr: 57       	addr: 58       	addr: 59       	addr: 60       
addr: 61       	addr: 62       	addr: 63 found!	addr: 64       
addr: 65       	addr: 66       	addr: 67       	addr: 68       
addr: 69       	addr: 70       	addr: 71       	addr: 72       
addr: 73       	addr: 74       	addr: 75       	addr: 76       
addr: 77       	addr: 78       	addr: 79       	addr: 80       
addr: 81       	addr: 82       	addr: 83       	addr: 84       
addr: 85       	addr: 86       	addr: 87       	addr: 88       
addr: 89       	addr: 90       	addr: 91       	addr: 92       
addr: 93       	addr: 94       	addr: 95       	addr: 96       
addr: 97       	addr: 98       	addr: 99       	addr: 100       
addr: 101       	addr: 102       	addr: 103       	addr: 104       
addr: 105       	addr: 106       	addr: 107       	addr: 108       
addr: 109       	addr: 110       	addr: 111       	addr: 112       
addr: 113       	addr: 114       	addr: 115       	addr: 116       
addr: 117       	addr: 118       	addr: 119       	

63 адрес нашел, в стоке стоит 27 я заменил на 63

 

T.Rook
Offline
Зарегистрирован: 05.03.2016

Сорри, чуть не тот сканер подсунул. Но, тем не менее, 63 десятичное  = 3F шеснадцатеричное. т.е. используйте в 5 строке

LiquidCrystal_I2C lcd(0x3F, 16, 2);

yarykp
Offline
Зарегистрирован: 10.07.2017

Понял сейчас попробую

УРААААААААА

ЗАРАБОТАЛО))))

T.Rook
Offline
Зарегистрирован: 05.03.2016

yarykp пишет:

Понял сейчас попробую

 

Все было бы намного проще , если бы Вы внимательно отнеслись к #1. Там все описано. И про бибилиотеки, и про 0x3F,  в комментариях к "внешнему уроку..."

yarykp
Offline
Зарегистрирован: 10.07.2017

Спасибо, буду изучать мат часть)

yarykp
Offline
Зарегистрирован: 10.07.2017

Вы б не могли скинуть еще сканер? На всякий пожарный пусть будет про запас)

T.Rook
Offline
Зарегистрирован: 05.03.2016

yarykp пишет:

Вы б не могли скинуть еще сканер? На всякий пожарный пусть будет про запас)

Их много есть тут!

yarykp
Offline
Зарегистрирован: 10.07.2017

Понял) Спаибо еще раз!

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

yarykp пишет:

Спасибо, буду изучать мат часть)

Вот и отлично! С этого нужно было начать :)