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

Оффлайн electroGhost

  • Member
  • **
  • Сообщений: 16
  • Репутация: +1/-0
    • Личное сообщение (Оффлайн)
Итак для начала узнаем как управлять 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 »

Оффлайн electroGhost

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

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

 

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

[Политика] Re: Свобода в Интернете заканчивается от Новичёк Сегодня в 05:52:35
[Беседка] Re: Что у нас происходит со здравоохранением? от Новичёк Сегодня в 05:41:30
[Беседка] Re: Что у нас происходит со здравоохранением? от Новичёк Сегодня в 05:25:45
[Беседка] Re: Что у нас происходит со здравоохранением? от meq Ноябрь 23, 2017, 07:03:38
[Беседка] Re: Что у нас происходит со здравоохранением? от digitalman Ноябрь 23, 2017, 06:25:59
[О разоблаченных шарлатанах и созданных ими "учениях"] Re: Разоблачение шарлатанов от Новичёк Ноябрь 23, 2017, 01:57:21
[Наука] Re: Новости науки и технологии от Новичёк Ноябрь 23, 2017, 01:38:02
[Наука] Re: Новости науки и технологии от Новичёк Ноябрь 23, 2017, 01:35:28
[Наука] Re: Новости науки и технологии от Новичёк Ноябрь 23, 2017, 01:31:16
[Наука] Re: Новости науки и технологии от Новичёк Ноябрь 23, 2017, 01:28:39
[Политика] Re: Информационная безопасность от Новичёк Ноябрь 23, 2017, 01:22:12
[Религия] Re: Религия - опиум для народа от Новичёк Ноябрь 23, 2017, 01:17:32
[Беседка] Re: Что у нас происходит со здравоохранением? от Новичёк Ноябрь 23, 2017, 01:09:04
[Беседка] Re: Что у нас происходит со здравоохранением? от Новичёк Ноябрь 22, 2017, 22:11:42
[Религия] Re: Религия - опиум для народа от meq Ноябрь 22, 2017, 20:32:17
[Беседка] Re: Что у нас происходит со здравоохранением? от digitalman Ноябрь 22, 2017, 15:37:55
[Беседка] Re: Что у нас происходит со здравоохранением? от john Ноябрь 22, 2017, 08:45:28
[Беседка] Re: Что у нас происходит со здравоохранением? от Новичёк Ноябрь 22, 2017, 02:43:58
[Беседка] Re: Что у нас происходит со здравоохранением? от john Ноябрь 22, 2017, 00:33:36
[Наука] Re: Новости науки и технологии от Новичёк Ноябрь 21, 2017, 18:34:02
 Rambler's Top100