Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π–Πš дисплСй ΠΊ Ардуино УНО: ΠΏΠΎΠ»Π½ΠΎΠ΅ руководство

Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ тСкстового LCD-экрана Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° Π±Π°Π·Π΅ Arduino Uno ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ ΡˆΠΈΡ€ΠΎΠΊΠΈΠ΅ возмоТности для Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π±Π΅Π· нСобходимости ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ. Π­Ρ‚ΠΎ позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½Ρ‹Π΅ устройства, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΠ΅ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρƒ, врСмя ΠΈΠ»ΠΈ статус Ρ€Π°Π±ΠΎΡ‚Ρ‹ систСмы Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π‘Π°ΠΌΡ‹ΠΌ распространСнным ΠΈ доступным Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… являСтся ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° 1602 с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ HD44780.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ соСдинСния ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΈ дисплСя Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΊ распиновкС ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌΡƒ Π²Ρ‹Π±ΠΎΡ€Ρƒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅ 5 Π²ΠΎΠ»ΡŒΡ‚ для подсвСтки дисплСя Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ΡŒ строго Ρ‡Π΅Ρ€Π΅Π· рСзистор, Ссли ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ встроСнного ограничитСля Ρ‚ΠΎΠΊΠ°. Ошибки Π½Π° этом этапС ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ ΠΏΠ΅Ρ€Π΅Π³ΠΎΡ€Π°Π½ΠΈΡŽ свСтодиодов подсвСтки ΠΈΠ»ΠΈ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ тСкста.

Π’ Π΄Π°Π½Π½ΠΎΠΌ руководствС ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ схСму, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ настройки ΠΈ способы диагностики ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. Π’Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ пиксСлями, ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ символы ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ для экономии памяти. Π­Ρ‚ΠΎ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Π½Π°Π²Ρ‹ΠΊ для любого ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π°-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° встраиваСмых систСм.

НСобходимыС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° оборудования

Для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π²Π°ΠΌ потрСбуСтся Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ элСктронных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌ элСмСнтом выступаСт ΠΏΠ»Π°Ρ‚Π° Arduino Uno, которая обСспСчиваСт Π»ΠΎΠ³ΠΈΠΊΡƒ управлСния. Π’ качСствС устройства Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ дисплСй LCD 16x2, часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‰ΠΈΠΉΡΡ Π² синСм ΠΈΠ»ΠΈ Π·Π΅Π»Π΅Π½ΠΎΠΌ исполнСнии с Π±Π΅Π»ΠΎΠΉ ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π½ΠΎΠΉ подсвСткой.

ΠšΡ€ΠΎΠΌΠ΅ основных ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, критичСски Π²Π°ΠΆΠ½ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€Π°. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ рСзистор Π½ΠΎΠΌΠΈΠ½Π°Π»ΠΎΠΌ 10 кОм для Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠΈ контрастности изобраТСния. Π‘Π΅Π· этого элСмСнта тСкст Π½Π° экранС Π»ΠΈΠ±ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΈΠ΄Π΅Π½, Π»ΠΈΠ±ΠΎ ΡΠΎΠ»ΡŒΠ΅Ρ‚ΡΡ с Ρ„ΠΎΠ½ΠΎΠΌ.

  • πŸ”Œ ΠŸΠ»Π°Ρ‚Π° Arduino Uno R3 ΠΈΠ»ΠΈ совмСстимый ΠΊΠ»ΠΎΠ½.
  • πŸ’Ύ LCD дисплСй 1602 с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ HD44780.
  • πŸŽ›οΈ ΠŸΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€ 10 кОм для настройки контраста.πŸ”Œ Набор ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² (Π΄ΠΆΠ°ΠΌΠΏΠ΅Ρ€ΠΎΠ²).

Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ всС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ исправны ΠΏΠ΅Ρ€Π΅Π΄ сборкой. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΡ€ΠΎΠ·Π²ΠΎΠ½ΠΊΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ Ρ†Π΅Π»Ρ‹Π΅ ΠΊΠ°Π±Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΎΠ±Ρ€Ρ‹Π². Π’Π°ΠΊΠΆΠ΅ стоит ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π·Π°Ρ‰ΠΈΡ‚Π½ΠΎΠΉ ΠΏΠ»Π΅Π½ΠΊΠΈ Π½Π° экранС дисплСя β€” Π΅Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: НапряТСниС питания логичСских ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ Arduino составляСт 5 Π’ΠΎΠ»ΡŒΡ‚. ΠŸΠΎΠ΄Π°Ρ‡Π° Π±ΠΎΠ»Π΅Π΅ высокого напряТСния Π½Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Π΅Π·Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π½ΠΎ ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΡ‚ΡŒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€.

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Π°Ρ схСма ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ распиновка

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ дисплСй ΠΈΠΌΠ΅Π΅Ρ‚ 16 ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ², ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ Π΄Π²Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ Π·Π° ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅, Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ β€” Π·Π° Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΡƒ контраста, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… сигналов. ПониманиС назначСния ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΌΡƒΡ‚Π°Ρ†ΠΈΠΈ.

ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ с 7 ΠΏΠΎ 14 ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ Π·Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ Π±Π°ΠΉΡ‚ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ 4-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ интСрфСйса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для экономии ΠΏΠΎΡ€Ρ‚ΠΎΠ², Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π΅Ρ€Ρ…Π½ΠΈΠ΅ 4 Π»ΠΈΠ½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ позволяСт ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠΈΠ½Ρ‹ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ².

Пин LCD НазваниС Ѐункция ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Arduino
1 VSS ЗСмля (GND) GND
2 VDD ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅ (+5V) 5V
3 VO ΠšΠΎΠ½Ρ‚Ρ€Π°ΡΡ‚ Π‘Ρ€Π΅Π΄Π½ΠΈΠΉ Π²Ρ‹Π²ΠΎΠ΄ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€Π°
4 RS Π’Ρ‹Π±ΠΎΡ€ рСгистра Π¦ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΠΈΠ½ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 12)
5 RW Π§Ρ‚Π΅Π½ΠΈΠ΅/Π—Π°ΠΏΠΈΡΡŒ GND (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ запись)

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ слСдуСт ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρƒ RW. Если Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π½Π° экран, этот ΠΏΠΈΠ½ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Π·Π΅ΠΌΠ»ΠΈΡ‚ΡŒ. Π­Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ дисплСй Π² Ρ€Π΅ΠΆΠΈΠΌ записи, Ρ‡Ρ‚ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ освобоТдаСт ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΡ€Ρ‚ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ 4-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ?

Π’ 4-Π±ΠΈΡ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π±Π°ΠΉΡ‚Π° Π΄Π°Π½Π½Ρ‹Ρ… разбиваСтся Π½Π° Π΄Π²Π΅ части (ниТняя ΠΈ вСрхняя Ρ‚Π΅Ρ‚Ρ€Π°Π΄Ρ‹). Π­Ρ‚ΠΎ ΡƒΠ΄Π²Π°ΠΈΠ²Π°Π΅Ρ‚ врСмя ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ, Π½ΠΎ экономит 4 Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… ΠΏΠΈΠ½Π° Arduino, Ρ‡Ρ‚ΠΎ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ для слоТных ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² с мноТСством Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ².

Настройка контрастности ΠΈ подсвСтки

НаиболСС частой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ запускС являСтся отсутствиС Π²ΠΈΠ΄ΠΈΠΌΠΎΠ³ΠΎ тСкста ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΉ подсвСткС. Π­Ρ‚ΠΎ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ настройкой напряТСния Π½Π° Π²Ρ‹Π²ΠΎΠ΄Π΅ VO (ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 3). Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€, ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΠΉ Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ напряТСния.

Π‘Ρ…Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ рСгулятора проста: ΠΊΡ€Π°ΠΉΠ½ΠΈΠ΅ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€Π° ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ с 5V ΠΈ GND, Π° срСдний ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρƒ VO дисплСя. Вращая ось, Π²Ρ‹ измСняСтС сопротивлСниС ΠΈ, соотвСтствСнно, напряТСниС, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ символы Ρ‡Π΅Ρ‚ΠΊΠΈΠΌΠΈ ΠΈ контрастными.

ΠŸΠΎΠ΄ΡΠ²Π΅Ρ‚ΠΊΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°ΠΌ 15 ΠΈ 16. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ соврСмСнных ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ ΡƒΠΆΠ΅ распаян Ρ‚ΠΎΠΊΠΎΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ рСзистор. Если ΠΆΠ΅ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅"Π³ΠΎΠ»Ρ‹ΠΉ" экран Π±Π΅Π· ΠΏΠ»Π°Ρ‚Ρ‹, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ рСзистор Π½ΠΎΠΌΠΈΠ½Π°Π»ΠΎΠΌ 220 Ом, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΡΠΆΠ΅Ρ‡ΡŒ свСтодиоды.

Установка Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ LiquidCrystal Π² Arduino IDE

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм Π² срСдС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Arduino IDE ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ стандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° LiquidCrystal. Она Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² состав Π±Π°Π·ΠΎΠ²ΠΎΠΉ установки, Π½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° Π² Π½Π°Ρ‡Π°Π»Π΅ скСтча. Π­Ρ‚ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π΄ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… понятных ΠΊΠΎΠΌΠ°Π½Π΄.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠ°ΠΊ 8-Π±ΠΈΡ‚Π½Ρ‹ΠΉ, Ρ‚Π°ΠΊ ΠΈ 4-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² ΠΊΠΎΠ΄Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ дисплСя, ΡƒΠΊΠ°Π·Π°Π² Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΈΠ½ΠΎΠ², ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ ΡΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹Π΅ Π»ΠΈΠ½ΠΈΠΈ. ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² строго соотвСтствуСт распиновкС.

#include <LiquidCrystal.h>

// Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°: RS, E, D4, D5, D6, D7

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup {

lcd.begin(16, 2); // Установка размСрности 16 символов Π½Π° 2 строки

}

void loop {

lcd.print("Hello World!");

}

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π½ΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΏΠΈΠ½ΠΎΠ² Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ конструктора. Она Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с физичСской схСмой, собранной Π²Π°ΠΌΠΈ Π½Π° ΠΌΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Π΅. Ошибка Π² порядкС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Ρ… символов ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΠΌΡƒ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΡŽ Ρ€Π΅Π°ΠΊΡ†ΠΈΠΈ.

πŸ“Š Какой Ρ‚ΠΈΠΏ дисплСя Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅?
LCD 1602 (синий)
LCD 1602 (Π·Π΅Π»Π΅Π½Ρ‹ΠΉ)
OLED 0.96
LCD 2004 (4 строки)
Π”Ρ€ΡƒΠ³ΠΎΠΉ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

ПослС ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ setup ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ тСкста. Команда lcd.print отправляСт строку символов Π½Π° экран. ΠŸΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ курсора осущСствляСтся Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ lcd.setCursor(col, row), Π³Π΄Π΅ отсчСт начинаСтся с нуля.

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ Π±ΡƒΡ„Π΅Ρ€Π΅ экрана. Если строка Π΄Π»ΠΈΠ½Π½Π΅Π΅ 16 символов, ΠΎΠ½Π° обрСТСтся. Для динамичСского обновлСния Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΠΉ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‡ΠΈΡ‰Π°Ρ‚ΡŒ экран ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ налоТСния символов ("ΡˆΠ»Π΅ΠΉΡ„Π°").

  • πŸ“ lcd.setCursor(0, 0) β€” ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ курсор Π² Π½Π°Ρ‡Π°Π»ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строки.
  • 🧹 lcd.clear β€” ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΡ‡ΠΈΡ‰Π°Π΅Ρ‚ экран ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ курсор Π² Π½Π°Ρ‡Π°Π»ΠΎ.
  • πŸ’‘ lcd.blink β€” Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΌΠΈΠ³Π°ΡŽΡ‰ΠΈΠΉ курсор.
  • πŸ–ŠοΈ lcd.noDisplay β€” Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, сохраняя Π΄Π°Π½Π½Ρ‹Π΅ Π² памяти.

Для создания слоТных интСрфСйсов ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ символы. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° позволяСт Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π΄ΠΎ 8 собствСнных Π·Π½Π°ΠΊΠΎΠ² Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ дисплСя, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для создания ΠΈΠΊΠΎΠ½ΠΎΠΊ Π±Π°Ρ‚Π°Ρ€Π΅ΠΈ, градуса ΠΈΠ»ΠΈ Π»ΠΎΠ³ΠΎΡ‚ΠΈΠΏΠ° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ запуском ΠΊΠΎΠ΄Π°

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

Диагностика ΠΈ устранСниС нСисправностСй

Если ΠΏΡ€ΠΈ ΠΏΠΎΠ΄Π°Ρ‡Π΅ питания экран загораСтся, Π½ΠΎ тСкст Π½Π΅ отобраТаСтся, Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΡƒ контраста. Часто Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΈ Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠΎΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Ρ€ΡƒΡ‡ΠΊΡƒ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€Π°, оставляя экран Π² состоянии ΠΏΠΎΠ»Π½ΠΎΠΉ прозрачности ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ затСмнСния.

Π’ случаС появлСния Ρ‡Π΅Ρ€Π½Ρ‹Ρ… ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠ² ("кракозябр") вмСсто Π±ΡƒΠΊΠ², ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° кроСтся Π² Π½Π΅Π²Π΅Ρ€Π½ΠΎΠΉ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ wrong timing. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π·ΠΎΠ² lcd.begin(16, 2) присутствуСт Π² setup ΠΈ выполняСтся Π΄ΠΎ Π»ΡŽΠ±Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ Π²Ρ‹Π²ΠΎΠ΄Π°. Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Π² ΠΌΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Π΅.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π”Π»ΠΈΠ½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° соСдинСния ΠΌΠΎΠ³ΡƒΡ‚ Π²Π½ΠΎΡΠΈΡ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ…ΠΈ ΠΈ ΠΈΡΠΊΠ°ΠΆΠ°Ρ‚ΡŒ сигнал. Если ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° Π΄Π»ΠΈΠ½Π½Π΅Π΅ 20 см, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ экранированный кабСль.

Иногда встрСчаСтся ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с ΠΌΠ΅Ρ€Ρ†Π°Π½ΠΈΠ΅ΠΌ подсвСтки. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΡƒ Ρ‚ΠΎΠΊΠ° ΠΎΡ‚ ΠΏΠΎΡ€Ρ‚Π° USB ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшнСС ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ 5-9 Π’ΠΎΠ»ΡŒΡ‚, ΠΏΠΎΠ΄Π°Π²Π°Π΅ΠΌΠΎΠ΅ Π½Π° Ρ€Π°Π·ΡŠΠ΅ΠΌ питания Arduino.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ дисплСй ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ пустыС ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΠΊΠΈ?

Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ дисплСй ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ ΠΈ инициализировался, Π½ΠΎ контраст настроСн Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ. ΠŸΠΎΠ²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°ΠΉΡ‚Π΅ Ρ€ΡƒΡ‡ΠΊΡƒ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€Π° ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, ΠΏΠΎΠΊΠ° Π½Π΅ появятся Ρ‡Π΅Ρ‚ΠΊΠΈΠ΅ символы.

МоТно Π»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ LCD ΠΊ ΠΏΠΈΠ½Π°ΠΌ A0-A5?

Π”Π°, Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Π΅ ΠΏΠΈΠ½Ρ‹ Arduino Uno ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅. Π˜Ρ… нумСрация продолТаСтся: A0=14, A1=15 ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π½ΠΎΠΌΠ΅Ρ€Π° Π² ΠΊΠΎΠ΄Π΅.

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π±Π΅Π³ΡƒΡ‰ΡƒΡŽ строку?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ†ΠΈΠΊΠ» с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ lcd.scrollDisplayLeft ΠΈΠ»ΠΈ lcd.scrollDisplayRight Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ loop с нСбольшой Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ delay.