Для чего нужны D0 - D4 в LCD 1602 Arduino?

Рейтинг: 1Ответов: 1Опубликовано: 01.03.2023

Новичок в Ардуино. Пытаюсь разобраться в работе LCD 1602. I2C Нет
На сайте нашёл следующую схему подключения

Схема подключения

введите сюда описание изображения

Код следующий:

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

Всё работает, но проблема в том, что я особо не понимаю - почему не используются пины D0-D3? Я прочитал о том, что дисплей может работать в двух режимах:

  • 8-битный режим — в нём используются и младшие и старшие биты (DB0-DB7)
  • 4-битный режим — в нём используются только младшие биты (DB4-DB7)

Но я не совсем понимаю эти "режимы". Чем они отличаются? Зависит от того, сколько значений можно передать или что? Подскажите, пожалуйста. Или направьте на нужные ресурсы

Ответы

▲ 3Принят

Для чего нужны D0 - D4 в LCD 1602 Arduino?

Для использования 8-битного режима.

Чем они отличаются?

4-битный режим отличается тем, что:

  1. Ему нужно меньше проводов.
  2. Доступные не все команды управления дисплеем, а только основные. В библиотеке LiquidCrystal используются только основные.
  3. Коды символов отправляются не за один, а за два такта. Что теоретически вдвое медленнее, но на таком маленьком дисплее полное заполнение экрана получается 0,06 с вместо 0,03 с.

направьте на нужные ресурсы

В идеале стоит изучить «Hitachi HD44780 datasheet», то есть техническое описание микросхемы дисплея. Начать стоит с чтения исходников самой библиотеки LiquidCrystal