Автор Тема: Подключение LCD к ардуино без использования библиотеки  (Прочитано 1132 раз)

Оффлайн Мельников Тимур

  • Member
  • **
  • Сообщений: 20
  • Репутация: +1/-0
    • E-mail
    • Личное сообщение (Оффлайн)
Итак для начала узнаем как управлять LCD дисплеем в теории. В отличие от подключения с использованием библиотеки здесь мы подключаем не 4 вывода данных, а 8 старшие биты и младшие биты. Сначала включаем дисплей, потом инициализируем его, очищаем дисплей и только после этого можно изображать символы.
void setup() {
  pinMode(3, OUTPUT);    //Вывод RS(Register selection), если передаем команду, то подаем 0 на этот вывод, а если символ то 1   
  pinMode(4, OUTPUT);    //Вывод R/W(Read/Write), если надо записать информацию, то 0, а если считываем то 1
  pinMode(5, OUTPUT);    //Вывод E(Enable), в начале передачи или приема подаем 1, в конце 0
  pinMode(6, OUTPUT);    //Вывод DB0(Data bit 0) - младший бит
  pinMode(7, OUTPUT);    //Вывод DB1(Data bit 1) - младший бит
  pinMode(8, OUTPUT);    //Вывод DB2(Data bit 2) - младший бит
  pinMode(9, OUTPUT);    //Вывод DB3(Data bit 3)  - младший бит
  pinMode(10, OUTPUT);    //Вывод DB4(Data bit 4) - Старший бит
  pinMode(11, OUTPUT);    //Вывод DB0(Data bit 5) - Старший бит
  pinMode(12, OUTPUT);    //Вывод DB0(Data bit 6) - Старший бит
  pinMode(13, OUTPUT);    //Вывод DB0(Data bit 7) - Старший бит
}

void loop() {
                                               //Начало блока включения дисплея
  digitalWrite(3, 0);
  digitalWrite(4, 0);
  digitalWrite(5, 1);
  digitalWrite(6, 0);
  digitalWrite(7, 0);
  digitalWrite(8, 1);
  digitalWrite(9, 1);
  digitalWrite(10, 0);
  digitalWrite(11, 0);
  digitalWrite(12, 0);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока включения дисплея

                                               //Начало блока инициализации дисплея
  digitalWrite(3, 0);
  digitalWrite(4, 0);
  digitalWrite(5, 1);
  digitalWrite(6, 0);
  digitalWrite(7, 0);
  digitalWrite(8, 1);
  digitalWrite(9, 1);
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 0);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока инициализации дисплея

                                               //Начало блока отчистки дисплея
  digitalWrite(3, 0);
  digitalWrite(4, 0);
  digitalWrite(5, 1);
  digitalWrite(6, 1);
  digitalWrite(7, 0);
  digitalWrite(8, 0);
  digitalWrite(9, 0);
  digitalWrite(10, 0);
  digitalWrite(11, 0);
  digitalWrite(12, 0);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока отчистки дисплея

                                               //Начало блока символа h
  digitalWrite(3, 1);
  digitalWrite(4, 0);
  digitalWrite(5, 1);
  digitalWrite(6, 0);
  digitalWrite(7, 0);
  digitalWrite(8, 0);
  digitalWrite(9, 1);
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа h

                                               //Начало блока символа t
  digitalWrite(3, 1);
  digitalWrite(4, 0);
  digitalWrite(5, 1);
  digitalWrite(6, 0);
  digitalWrite(7, 0);
  digitalWrite(8, 1);
  digitalWrite(9, 0);
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа t

                                               //Начало блока символа t
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 0); 
  digitalWrite(7, 0); 
  digitalWrite(8, 1); 
  digitalWrite(9, 0); 
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа t

                                               //Начало блока символа p 
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 0); 
  digitalWrite(7, 0); 
  digitalWrite(8, 0); 
  digitalWrite(9, 0); 
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа p
 
                                               //Начало блока символа :
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 0); 
  digitalWrite(7, 0);
  digitalWrite(8, 0); 
  digitalWrite(9, 1); 
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 0);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа :

                                               //Начало блока символа /
  digitalWrite(3, 1);
  digitalWrite(4, 0);
  digitalWrite(5, 1);
  digitalWrite(6, 1);
  digitalWrite(7, 1);
  digitalWrite(8, 1);
  digitalWrite(9, 1);
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 0);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа /

                                               //Начало блока символа /
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 1); 
  digitalWrite(7, 1); 
  digitalWrite(8, 1); 
  digitalWrite(9, 1); 
  digitalWrite(10, 0); 
  digitalWrite(11, 1); 
  digitalWrite(12, 0); 
  digitalWrite(13, 0); 
  digitalWrite(5, 0);   
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа / 

                                               //Начало блока символа m
  digitalWrite(3, 1);   
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 1); 
  digitalWrite(7, 0); 
  digitalWrite(8, 1); 
  digitalWrite(9, 1); 
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа m

                                               //Начало блока символа s
  digitalWrite(3, 1);
  digitalWrite(4, 0);
  digitalWrite(5, 1);
  digitalWrite(6, 1);
  digitalWrite(7, 1); 
  digitalWrite(8, 0); 
  digitalWrite(9, 0); 
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа s 

                                               //Начало блока символа e
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 1); 
  digitalWrite(7, 0); 
  digitalWrite(8, 1); 
  digitalWrite(9, 0); 
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа e

                                               //Начало блока символа v
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 0);   
  digitalWrite(7, 1);   
  digitalWrite(8, 1);   
  digitalWrite(9, 0);   
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0);   
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа v

                                               //Начало блока символа m
  digitalWrite(3, 1);   
  digitalWrite(4, 0);   
  digitalWrite(5, 1);   
  digitalWrite(6, 1);   
  digitalWrite(7, 0);   
  digitalWrite(8, 1);   
  digitalWrite(9, 1);   
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа m

                                               //Начало блока символа .
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 0); 
  digitalWrite(7, 1); 
  digitalWrite(8, 1); 
  digitalWrite(9, 1); 
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 0);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа .

                                               //Начало блока символа c
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 1); 
  digitalWrite(7, 1); 
  digitalWrite(8, 0); 
  digitalWrite(9, 0); 
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа c

                                               //Начало блока символа o
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 1); 
  digitalWrite(7, 1); 
  digitalWrite(8, 1); 
  digitalWrite(9, 1); 
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа o

                                               //Начало блока символа m
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 1); 
  digitalWrite(7, 0); 
  digitalWrite(8, 1); 
  digitalWrite(9, 1); 
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа m 
 
  for (int i=0; i <24; i++) {    //Цикл для того чтобы перейти на следующую строчку
    down();    //Вызов подпрограммы down()
  }
 
                                               //Начало блока символа >
  digitalWrite(3, 1);
  digitalWrite(4, 0);
  digitalWrite(5, 1);
  digitalWrite(6, 0); 
  digitalWrite(7, 1); 
  digitalWrite(8, 1); 
  digitalWrite(9, 1); 
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 0);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа >

                                               //Начало блока символа >
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 0); 
  digitalWrite(7, 1); 
  digitalWrite(8, 1); 
  digitalWrite(9, 1); 
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 0);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа >

                                               //Начало блока символа >
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 1); 
  digitalWrite(7, 0); 
  digitalWrite(8, 1); 
  digitalWrite(9, 0); 
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа e 

                                               //Начало блока символа l
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 0);   
  digitalWrite(7, 0);   
  digitalWrite(8, 1);   
  digitalWrite(9, 1);   
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0);   
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа l

                                               //Начало блока символа e
  digitalWrite(3, 1);   
  digitalWrite(4, 0);   
  digitalWrite(5, 1);   
  digitalWrite(6, 1);   
  digitalWrite(7, 0);   
  digitalWrite(8, 1);   
  digitalWrite(9, 0);   
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0);   
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа e

                                               //Начало блока символа c
  digitalWrite(3, 1);   
  digitalWrite(4, 0);   
  digitalWrite(5, 1);   
  digitalWrite(6, 1);   
  digitalWrite(7, 1);   
  digitalWrite(8, 0);   
  digitalWrite(9, 0);   
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа c

                                               //Начало блока символа t
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 0); 
  digitalWrite(7, 0);   
  digitalWrite(8, 1);   
  digitalWrite(9, 0);   
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0);   
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа t

                                               //Начало блока символа r
  digitalWrite(3, 1);   
  digitalWrite(4, 0);   
  digitalWrite(5, 1);   
  digitalWrite(6, 0);   
  digitalWrite(7, 1);   
  digitalWrite(8, 0);   
  digitalWrite(9, 0);   
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа r

                                               //Начало блока символа o
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 1); 
  digitalWrite(7, 1); 
  digitalWrite(8, 1); 
  digitalWrite(9, 1); 
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа o

                                               //Начало блока символа G
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 1); 
  digitalWrite(7, 1); 
  digitalWrite(8, 1); 
  digitalWrite(9, 0); 
  digitalWrite(10, 0);
  digitalWrite(11, 0);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа G

                                               //Начало блока символа h
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 0); 
  digitalWrite(7, 0); 
  digitalWrite(8, 0); 
  digitalWrite(9, 1); 
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0); 
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа h

                                               //Начало блока символа o
  digitalWrite(3, 1); 
  digitalWrite(4, 0); 
  digitalWrite(5, 1); 
  digitalWrite(6, 1); 
  digitalWrite(7, 1); 
  digitalWrite(8, 1); 
  digitalWrite(9, 1); 
  digitalWrite(10, 0);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа o

                                               //Начало блока символа s
  digitalWrite(3, 1);
  digitalWrite(4, 0);
  digitalWrite(5, 1);
  digitalWrite(6, 1);
  digitalWrite(7, 1);
  digitalWrite(8, 0); 
  digitalWrite(9, 0); 
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа s

                                               //Начало блока символа t
  digitalWrite(3, 1);
  digitalWrite(4, 0);
  digitalWrite(5, 1);
  digitalWrite(6, 0);
  digitalWrite(7, 0);
  digitalWrite(8, 1);
  digitalWrite(9, 0); 
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 1);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа t

                                               //Начало блока символа <
  digitalWrite(3, 1);
  digitalWrite(4, 0);
  digitalWrite(5, 1);
  digitalWrite(6, 0);
  digitalWrite(7, 0);
  digitalWrite(8, 1);
  digitalWrite(9, 1);
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 0);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа <

                                               //Начало блока символа <
  digitalWrite(3, 1);
  digitalWrite(4, 0);
  digitalWrite(5, 1);
  digitalWrite(6, 0);
  digitalWrite(7, 0);
  digitalWrite(8, 1);
  digitalWrite(9, 1);
  digitalWrite(10, 1);
  digitalWrite(11, 1);
  digitalWrite(12, 0);
  digitalWrite(13, 0);
  digitalWrite(5, 0);
  delay(50);    //Пауза, чтобы была анимация
                                               //Конец блока символа <
 
  delay(10000);    //Пауза, чтобы дисплей обновлялся каждые 10 секунд иначе он будет постоянно обновляться.
}

void down() {
                                               //Начало блока символа m
  digitalWrite(3, 1); 
  digitalWrite(4, 0);   
  digitalWrite(5, 1);   
  digitalWrite(6, 0);   
  digitalWrite(7, 0);   
  digitalWrite(8, 1);   
  digitalWrite(9, 0);   
  digitalWrite(10, 1); 
  digitalWrite(11, 0); 
  digitalWrite(12, 0); 
  digitalWrite(13, 0); 
  digitalWrite(5, 0);   
  delay(1);    //Пауза, чтобы была анимация
                                               //Конец блока символа m
}
« Последнее редактирование: Июнь 21, 2017, 14:00:15 от electroGhost »

Оффлайн Мельников Тимур

  • Member
  • **
  • Сообщений: 20
  • Репутация: +1/-0
    • E-mail
    • Личное сообщение (Оффлайн)

Схема подключения
« Последнее редактирование: Июль 11, 2017, 18:26:52 от john »

 

Последние сообщения на форуме:

[Религия] Re: Религия - опиум для народа от Новичёк Март 24, 2019, 15:04:09
[Экономика] Жизнь по подписке от Новичёк Март 24, 2019, 15:00:39
[Наука] Re: Новости науки и технологии от Новичёк Март 23, 2019, 21:34:17
[Политика] Re: Противостояние: Россия - США от Новичёк Март 23, 2019, 11:59:08
[Наука] Re: Новости науки и технологии от Новичёк Март 22, 2019, 22:51:00
[Автолюбителям] Алкотестер в автомобиле от Новичёк Март 21, 2019, 14:35:38
[Наука] Re: Новости науки и технологии от Новичёк Март 21, 2019, 14:32:29
[Родители и дети - проблемы воспитания] Re: Дети и мобильные гаджеты от Новичёк Март 21, 2019, 11:37:55
[Наука] Re: Новости науки и технологии от Новичёк Март 20, 2019, 23:08:10
[Наука] Re: Новости науки и технологии от Новичёк Март 20, 2019, 22:54:41
[Политика] Re: Противостояние: Россия - США от Новичёк Март 20, 2019, 21:44:34
[Наука] Re: Новости науки и технологии от Новичёк Март 19, 2019, 22:28:37
[Политика] Re: Противостояние: Россия - США от Новичёк Март 19, 2019, 19:14:52
[Религия] Re: Религия - опиум для народа от Новичёк Март 19, 2019, 17:33:48
[Наука] Re: Новости науки и технологии от Новичёк Март 19, 2019, 17:10:47
[Наука] Re: Новости науки и технологии от Новичёк Март 19, 2019, 17:03:35
[Наука] Re: Новости науки и технологии от Новичёк Март 18, 2019, 23:41:02
[Наука] Re: Новости науки и технологии от Новичёк Март 18, 2019, 23:38:55
[Политика] Противостояние: Россия - США от Новичёк Март 18, 2019, 22:54:09
[История] Самая старая астролябия от Новичёк Март 18, 2019, 22:44:46
 Rambler's Top100