Форум программистов, компьютерный форум, киберфорум
Arduino
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.99/103: Рейтинг темы: голосов - 103, средняя оценка - 4.99
 Аватар для ArtSmm
32 / 32 / 2
Регистрация: 07.01.2016
Сообщений: 487

Экран выводит квадраты, вместо надписей

31.07.2016, 12:41. Показов 21310. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подключил lcd экран к arduino, он выводит только квадраты
Хочу подключить, с помощью библиотеки LiquidCrystal_I2C

Перепробовал разные вариации данной библиотеки - выводятся только квадраты.
Может кто-то сталкивался с подобным?
{ссылки удалены}

Сам скетч:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include <LiquidCrystal_I2C.h>
#include <Servo.h>
#include <Wire.h>
 
// Задаем адрес и размерность дисплея
 
LiquidCrystal_I2C lcd(0x27,16,2); 
 
//Константы для условий внешней среды
int WaterLevelUp = 120;
int WaterLevelDown = 100;
 
//Задаем датчик влажности почвы
 
int sensorPin = A0;
int sensorValue = 0;
 
//Задаем реле
 
int Relay = 3;
 
//Ожидание в сек
 
static unsigned long wait = millis() + 60000; 
 
//Сервопривод
 
Servo myservo;
int pos = 0;
 
void setup() { 
  
  Serial.begin(9600);
  pinMode(A0, INPUT);
  pinMode(13, OUTPUT);
  
  pinMode(Relay, OUTPUT);
  
  myservo.attach(9); //Сервопривод на pin 9
 
  lcd.init();                     
  lcd.backlight();// Включаем подсветку дисплея
 
}   
 
void loop() { 
  
  //Код для датчика почвы (на A0) 
  
  int s = analogRead(A0);
    Serial.print(s);
    Serial.print(" - ");
    delay(500);
    
    if (s <= WaterLevelDown) {
      digitalWrite(13,LOW);
      digitalWrite(Relay,LOW);
      lcd.setCursor(1, 1); 
      lcd.print("Wet, stop it!");
    }
    
    else if (s >= WaterLevelUp) {
      digitalWrite(13,HIGH);
      digitalWrite(Relay,HIGH);
      lcd.setCursor(1, 1);
       lcd.print("Dry, water it!"); 
    }
  
 }
Изображения
   
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.07.2016, 12:41
Ответы с готовыми решениями:

Как вместо надписей Edit, Update, Cancel вывести на экран иконки?
Фрагмент коды: asp:EditCommandColumn EditText='Edit' CancelText='Cancel' UpdateText='Update' Вопрос: а как...

GIMP в меню вместо текста выводит квадраты
Всем привет! GIMP, установленный под KDE 4.0 вместо текста меню и в окне загрузки выводит квадраты. Понимаю, что это настройки...

Выводит в консоль вместо русских букв квадраты
Добрый день. Подскажите пожалуйста, почему в Netbeans вместо русских букв задаваемых через консоль выводит квадраты, а русские буквы если я...

7
Модератор
Эксперт по электронике
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,852
31.07.2016, 14:30
ArtSmm, убедительно прошу соблюдать правила форума
п 4.11
Картинки и любые другие файлы загружайте на форум, во избежание их удаления или потери на сторонних ресурсах. По этой же причине коды программ также должны находиться на форуме.
п 4.9
Используйте тэги форматирования текста и редактор формул для удобства восприятия ваших сообщений другими пользователями.
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
31.07.2016, 18:58
А покрутить резистор контраста на i2c-переходнике не помогает?
0
 Аватар для ArtSmm
32 / 32 / 2
Регистрация: 07.01.2016
Сообщений: 487
31.07.2016, 19:00  [ТС]
к сожалению, он выкручен до предела. Вроде все библиотеки попробовал, все равно таже ерунда.
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
31.07.2016, 19:13
Ну, это неправильный ответ. Правильный — крутил туда-сюда, глядя на экран, текста не видно ни при каких положениях.
А во-вторых, если пытаешься разобраться с экраном, то и надо использовать скетч, который работает только с экраном. Как можно проще, например, выводит hello world. Зачем нам все эти датчики и сервы?
К сожалению i2c-адаптера у меня нет, попробовать сам не могу.
0
 Аватар для ArtSmm
32 / 32 / 2
Регистрация: 07.01.2016
Сообщений: 487
31.07.2016, 19:18  [ТС]
я крутил, кроме яркости ничего не меняется) Поэтому я сократил ответ до сути. Квадраты остаются на месте. Я пробовал и в отдельности ставить, брал чистый скетч, закачивал в него "привет мир", потом включал экран - результат тот же. Экран не реагирует даже на простую команду включения и отключения подсветки lcd.backlight();
Как вариант можно попробовать узнать адрес устройства на шине I2C, но я не очень представляю как это сделать
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
31.07.2016, 19:57
Ну вот, например, такой скетч. Подключение обычно — SCL на A5, SDA на A4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// I2C Scanner
// Written by Nick Gammon
// Date: 20th April 2011
 
#include <Wire.h>
 
void setup() {
  Serial.begin (115200);
 
  // Leonardo: wait for serial port to connect
  while (!Serial) 
    {
    }
 
  Serial.println ();
  Serial.println ("I2C scanner. Scanning ...");
  byte count = 0;
  
  Wire.begin();
  for (byte i = 8; i < 120; i++)
  {
    Wire.beginTransmission (i);
    if (Wire.endTransmission () == 0)
      {
      Serial.print ("Found address: ");
      Serial.print (i, DEC);
      Serial.print (" (0x");
      Serial.print (i, HEX);
      Serial.println (")");
      count++;
      delay (1);  // maybe unneeded?
      } // end of good response
  } // end of for loop
  Serial.println ("Done.");
  Serial.print ("Found ");
  Serial.print (count, DEC);
  Serial.println (" device(s).");
}  // end of setup
 
void loop() {}
По сбросу должен в терминал выводить все найденные адреса. У меня работает с гироскопом.
0
 Аватар для ArtSmm
32 / 32 / 2
Регистрация: 07.01.2016
Сообщений: 487
31.07.2016, 20:35  [ТС]
Спасибо)) i2c scanner уже запустил, показал мое устройство по адресу 0*3F. Добился мигающего курса в правом верхнем углу) разбираюсь дальше

Добавлено через 22 минуты
Вопрос решен. Дело было в адресе устройства и в библиотеке
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.07.2016, 20:35
Помогаю со студенческими работами здесь

написать программу,которая выводит на экран квадраты от1 до 10?!
не получается!!!!

Написать программу,которая выводит на экран квадраты всех целых чисел от 7 до 20
Написать программу,которая выводит на экран квадраты всех целых чисел от 7 до 20.

Составьте программу, которая выводит на экран квадраты N первых натуральных чисел.
Конец четверти, учитель напряг))))) 1. Составьте программу, которая выводит на экран квадраты N первых натуральных чисел.(Где N - это...

Написать программу, которая выводит на экран квадраты первых n целых положительных нечетных чисел
Написать программу, которая выводит на экран квадраты первых n целых положительных нечетных чисел. Число n вводится с клавиатуры, и должно...

Программа выводит белый экран вместо результата
Привет, пишу веб-приложение по плану с этого сайта: https://sohabr.net/post/237781/?version=61376 Все сделано, как мне кажется так, как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru