1602 lcd ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ дисплСя LCD 1602 ΠΊ Arduino: пошаговоС руководство

Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ LCD 1602 ΠΊ Arduino. КакиС Π±Ρ‹Π²Π°ΡŽΡ‚ интСрфСйсы ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Как Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΡΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΈ ΡΡ€ΠΊΠΎΡΡ‚ΡŒ. КакиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм. Как Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ тСкст ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ символы.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ LCD 1602 ΠΈ Π΅Π³ΠΎ характСристики

LCD 1602 — это ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ТидкокристалличСский дисплСй, способный ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ 2 строки ΠΏΠΎ 16 символов. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ характСристики:

  • Π Π°Π·ΠΌΠ΅Ρ€ экрана: 16 символов Ρ… 2 строки
  • Π Π°Π·ΠΌΠ΅Ρ€ символа: 5Ρ…8 Ρ‚ΠΎΡ‡Π΅ΠΊ
  • ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€: HD44780 ΠΈΠ»ΠΈ совмСстимый
  • Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ: 8-Π±ΠΈΡ‚Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΉ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² 4-Π±ΠΈΡ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅
  • НапряТСниС питания: 5Π’
  • ΠŸΠΎΠ΄ΡΠ²Π΅Ρ‚ΠΊΠ°: свСтодиодная, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ синСго ΠΈΠ»ΠΈ Π·Π΅Π»Π΅Π½ΠΎΠ³ΠΎ Ρ†Π²Π΅Ρ‚Π°
  • Π Π°Π·ΠΌΠ΅Ρ€Ρ‹ модуля: ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ 80x36x12 ΠΌΠΌ

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ LCD 1602 ΠΊ Arduino

БущСствуСт нСсколько способов ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ LCD 1602 ΠΊ Arduino:

1. ΠŸΡ€ΡΠΌΠΎΠ΅ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π­Ρ‚ΠΎ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ способ, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ дисплСй ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΊ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹ΠΌ ΠΏΠΈΠ½Π°ΠΌ Arduino. Π’Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 6 ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ²:


  • RS — Π²Ρ‹Π±ΠΎΡ€ рСгистра ΠΊΠΎΠΌΠ°Π½Π΄/Π΄Π°Π½Π½Ρ‹Ρ…
  • E — строб Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ
  • D4-D7 — Π»ΠΈΠ½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… (4-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ)
  • VCC ΠΈ GND — ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π°: простота, Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². НСдостатки: Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΈΠ½ΠΎΠ² Arduino.

2. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· I2C Π°Π΄Π°ΠΏΡ‚Π΅Ρ€

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ I2C Π°Π΄Π°ΠΏΡ‚Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ интСрфСйс дисплСя Π² Π΄Π²ΡƒΡ…ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΡƒΡŽ ΡˆΠΈΠ½Ρƒ I2C:

  • SDA — линия Π΄Π°Π½Π½Ρ‹Ρ… I2C
  • SCL — линия тактирования I2C
  • VCC ΠΈ GND — ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π°: Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ всСго 4 ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°, освобоТдаСт ΠΏΠΈΠ½Ρ‹ Arduino. НСдостатки: Π½ΡƒΠΆΠ΅Π½ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ I2C ΠΌΠΎΠ΄ΡƒΠ»ΡŒ.

3. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· сдвиговый рСгистр

МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ сдвиговый рСгистр (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 74HC595) для управлСния дисплССм Ρ‡Π΅Ρ€Π΅Π· 3 ΠΏΠΈΠ½Π° Arduino:

  • DATA — линия Π΄Π°Π½Π½Ρ‹Ρ…
  • CLOCK — Ρ‚Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
  • LATCH — фиксация Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π°: экономит ΠΏΠΈΠ½Ρ‹ Arduino. НСдостатки: Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ микросхСму ΠΈ слоТнСС Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ.

Пошаговая инструкция ΠΏΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ LCD 1602 Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΊ Arduino

Рассмотрим Π±Π°Π·ΠΎΠ²ΠΎΠ΅ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ LCD 1602 ΠΊ Arduino:


  1. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ дисплСя:
    • VCC дисплСя ΠΊ 5V Arduino
    • GND дисплСя ΠΊ GND Arduino
  2. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π»ΠΈΠ½ΠΈΠΈ управлСния:
    • RS дисплСя ΠΊ ΠΏΠΈΠ½Ρƒ 12 Arduino
    • E дисплСя ΠΊ ΠΏΠΈΠ½Ρƒ 11 Arduino
    • RW дисплСя ΠΊ GND Arduino (Ρ€Π΅ΠΆΠΈΠΌ записи)
  3. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π»ΠΈΠ½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… (4-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ):
    • D4 дисплСя ΠΊ ΠΏΠΈΠ½Ρƒ 5 Arduino
    • D5 дисплСя ΠΊ ΠΏΠΈΠ½Ρƒ 4 Arduino
    • D6 дисплСя ΠΊ ΠΏΠΈΠ½Ρƒ 3 Arduino
    • D7 дисплСя ΠΊ ΠΏΠΈΠ½Ρƒ 2 Arduino
  4. НастройтС ΠΊΠΎΠ½Ρ‚Ρ€Π°ΡΡ‚Π½ΠΎΡΡ‚ΡŒ:
    • ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€ 10кОм ΠΌΠ΅ΠΆΠ΄Ρƒ VCC ΠΈ GND
    • Π‘Ρ€Π΅Π΄Π½ΠΈΠΉ Π²Ρ‹Π²ΠΎΠ΄ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€Π° ΠΊ V0 дисплСя
  5. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ подсвСтку:
    • A (Π°Π½ΠΎΠ΄) ΠΊ 5V Ρ‡Π΅Ρ€Π΅Π· рСзистор 220 Ом
    • K (ΠΊΠ°Ρ‚ΠΎΠ΄) ΠΊ GND

Настройка контрастности ΠΈ яркости LCD 1602

ΠšΠΎΠ½Ρ‚Ρ€Π°ΡΡ‚Π½ΠΎΡΡ‚ΡŒ LCD 1602 рСгулируСтся напряТСниСм Π½Π° Π²Ρ‹Π²ΠΎΠ΄Π΅ V0. ΠžΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ находится Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ 0.4-0.7Π’. Π•ΡΡ‚ΡŒ нСсколько способов настройки:

  • ΠŸΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€: ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ 10кОм ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€ ΠΌΠ΅ΠΆΠ΄Ρƒ VCC ΠΈ GND, срСдний Π²Ρ‹Π²ΠΎΠ΄ ΠΊ V0. Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΏΠ»Π°Π²Π½ΠΎ Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΡΡ‚Π½ΠΎΡΡ‚ΡŒ.
  • Π”Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ напряТСния: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π΄Π²Π° рСзистора (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 2.2кОм ΠΈ 330 Ом) для получСния фиксированного напряТСния Π½Π° V0.
  • ШИМ: ΠΏΠΎΠ΄Π°ΠΉΡ‚Π΅ ШИМ сигнал с Arduino Π½Π° V0 Ρ‡Π΅Ρ€Π΅Π· RC-Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ управлСния ΠΊΠΎΠ½Ρ‚Ρ€Π°ΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ.

Π―Ρ€ΠΊΠΎΡΡ‚ΡŒ подсвСтки LCD 1602 зависит ΠΎΡ‚ Ρ‚ΠΎΠΊΠ° Ρ‡Π΅Ρ€Π΅Π· свСтодиоды подсвСтки. Π’ΠΈΠΏΠΎΠ²ΠΎΠΉ Ρ‚ΠΎΠΊ — ΠΎΠΊΠΎΠ»ΠΎ 80-120 мА. Π’Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ управлСния ΡΡ€ΠΊΠΎΡΡ‚ΡŒΡŽ:


  • ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½Π°Ρ ΡΡ€ΠΊΠΎΡΡ‚ΡŒ: ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π°Π½ΠΎΠ΄ Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΠΊΠΎΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ рСзистор 39-100 Ом ΠΊ 5Π’.
  • РСгулируСмая ΡΡ€ΠΊΠΎΡΡ‚ΡŒ: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€ ΠΈΠ»ΠΈ ШИМ с транзистором для ΠΏΠ»Π°Π²Π½ΠΎΠΉ Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠΈ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ LCD 1602 Π½Π° Arduino

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с LCD 1602 Π½Π° Arduino ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ LiquidCrystal. Π’ΠΎΡ‚ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

«`cpp #include // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΈΠ½ΠΎΠ² LiquidCrystal lcd(12, 11, 5, 4, 3, 2); void setup() { // Установка Ρ€Π°Π·ΠΌΠ΅Ρ€Π° дисплСя (16 столбцов, 2 строки) lcd.begin(16, 2); // Π’Ρ‹Π²ΠΎΠ΄ привСтствия lcd.print(«Hello, World!»); } void loop() { // ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ курсора Π½Π° Π²Ρ‚ΠΎΡ€ΡƒΡŽ строку lcd.setCursor(0, 1); // Π’Ρ‹Π²ΠΎΠ΄ количСства сСкунд с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° запуска lcd.print(millis() / 1000); } «`

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ дисплСй, Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ привСтствиС Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС ΠΈ счСтчик сСкунд Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ строкС.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… символов Π½Π° LCD 1602

LCD 1602 позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π΄ΠΎ 8 ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… символов Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 5×8 пиксСлСй. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания символа:


«`cpp #include LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ символа (сСрдцС) byte heart[8] = { 0b00000, 0b01010, 0b11111, 0b11111, 0b11111, 0b01110, 0b00100, 0b00000 }; void setup() { lcd.begin(16, 2); // Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ символа с ΠΊΠΎΠ΄ΠΎΠΌ 0 lcd.createChar(0, heart); // Π’Ρ‹Π²ΠΎΠ΄ тСкста ΠΈ символа lcd.print(«I «); lcd.write(byte(0)); // Π’Ρ‹Π²ΠΎΠ΄ символа сСрдца lcd.print(» Arduino!»); } void loop() {} «`

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ создаСт символ сСрдца ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π΅Π³ΠΎ Π½Π° дисплСй вмСстС с тСкстом.

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы ΠΎ LCD 1602

Как ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π½Π΅Ρ‡Π΅Ρ‚ΠΊΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° LCD 1602?

НСчСткоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ связано с Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ настройкой контрастности. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΎΡ‚Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ V0 дисплСя. Если это Π½Π΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ напряТСниС питания — ΠΎΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ 5Π’.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π½Π° дисплСС ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΠΊΠΈ вмСсто тСкста?

Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½ΠΎ нСсколькими ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌΠΈ:

  • ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π»ΠΈΠ½ΠΈΠΉ Π΄Π°Π½Π½Ρ‹Ρ… (D4-D7). ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ соСдинСния.
  • НСвСрная инициализация Π² ΠΊΠΎΠ΄Π΅. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΏΠΈΠ½Ρ‹ Π² конструкторС LiquidCrystal.
  • ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ΠΌ. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ дисплСй ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ 5Π’.

Как вывСсти русский тСкст Π½Π° LCD 1602?

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ LCD 1602 Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ встроСнных русских символов. Π•ΡΡ‚ΡŒ нСсколько Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ:


  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° с русскими символами.
  • Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ собствСнный Π½Π°Π±ΠΎΡ€ русских Π±ΡƒΠΊΠ² ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ символы.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ для Π²Ρ‹Π²ΠΎΠ΄Π° русского тСкста Π»Π°Ρ‚ΠΈΠ½ΠΈΡ†Π΅ΠΉ.

МоТно Π»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ нСсколько LCD 1602 ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ Arduino?

Π”Π°, это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. Π•ΡΡ‚ΡŒ нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ I2C Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Ρ‹ с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ адрСсами для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ дисплСя.
  • ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ сигнал E для Ρ€Π°Π·Π½Ρ‹Ρ… дисплССв.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ сдвиговыС рСгистры для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ количСства Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠ² Arduino.

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ LCD 1602

Π₯отя LCD 1602 ΠΎΡ‡Π΅Π½ΡŒ популярСн, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ дисплССв для Arduino ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²:

  • OLED дисплСи: Π±ΠΎΠ»Π΅Π΅ яркиС, с Π»ΡƒΡ‡ΡˆΠ΅ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ, Π½ΠΎ Π΄ΠΎΡ€ΠΎΠΆΠ΅.
  • TFT LCD: Ρ†Π²Π΅Ρ‚Π½Ρ‹Π΅ дисплСи с высоким Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ, подходят для Π±ΠΎΠ»Π΅Π΅ слоТной Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ.
  • 7-сСгмСнтныС ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹: простыС Π² использовании, подходят для отобраТСния чисСл.
  • LCD 2004: ΠΏΠΎΡ…ΠΎΠΆ Π½Π° 1602, Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ 4 строки ΠΏΠΎ 20 символов.
  • e-Paper (элСктронная Π±ΡƒΠΌΠ°Π³Π°): Π½ΠΈΠ·ΠΊΠΎΠ΅ энСргопотрСблСниС, Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ солнСчном свСтС.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

LCD 1602 — это простой ΠΈ доступный дисплСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Arduino. Он Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ, ΠΈΠΌΠ΅Π΅Ρ‚ понятный интСрфСйс ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΈΠ΅ возмоТности для отобраТСния тСкстовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈ использованиС подходящСй Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ позволяСт быстро ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот дисплСй Π² ваши ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, добавляя ΠΈΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ.



ДисплСй 1602 ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ arduino / Π₯Π°Π±Ρ€

ДисплСи ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½Ρ‹Π΅ части устройства, Ссли Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь Π±Π΅Π· использования ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. К ΠΏΠ»Π°Ρ‚Π΅ arduino ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ дисплСи, Ρ‚Π°ΠΊ ΠΈ схоТиС ΠΏΠΎ тСхничСским характСристикам.

ДисплСи ΠΏΠΎΠ΄ Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ

ДисплСи ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠΎ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΉ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ эффСкт.

Рассмотрим процСсс ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ дисплСя 1602. Π£ Π½Π΅Π³ΠΎ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ². Рассмотрим Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠΎ Ρ‡Π΅Ρ‚Ρ‹Ρ€Ρ‘Ρ… Π±ΠΈΡ‚Π½ΠΎΠΌΡƒ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ интСрфСйсу.

Π’Π°Π±Π»ΠΈΡ†Π° обозначСния ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ

Π’Ρ‹Π²ΠΎΠ΄

ΠžΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅

Пин на arduino

1

GND

GND

2

Vcc

5V

3

Vo

GND

4

RS

12

5

R/W

GND

6

E

10

7

DB0

β€”

8

DB1

β€”

9

DB2

β€”

10

DB3

β€”

11

DB4

5

12

DB5

4

13

DB6

3

14

DB7

2

15

Vcc

5V

16

GND

GND

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π΄Π°Π½Π½ΡƒΡŽ схСму, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈΠΏΠ°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° ΠΊ Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ дисплСя. Для удобства ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° ΠœΠ“Π’Π€ самого ΠΌΠ°Π»ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΌΠ΅Ρ‚Ρ€Π°. Π˜Ρ… прСимущСства Π² гибкости ΠΈ прочности. Π‘ Π½ΠΈΡ… Π»Π΅Π³ΠΊΠΎ ΡΠ½ΡΡ‚ΡŒ ΠΈΠ·ΠΎΠ»ΡΡ†ΠΈΡŽ. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ акустичСскиС ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°, Π½ΠΎ ΠΎΠ½ΠΈ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ «толстой» изоляциСй ΠΈ ΠΌΠ΅Π½Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠ΅. Π”Π»ΠΈΠ½Π° ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 15 см. для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π°.

Для тСста Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ LiquidCrystal.h —Β  Β«Hello WorldΒ».

Подадим ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ Π½Π° arduino ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ.

НиТС прСдставлСн Π²ΠΈΠ΄Π΅ΠΎΠΎΠ±Π·ΠΎΡ€ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ дисплСя.

Π›ΡƒΡ‡ΡˆΠΈΠ΅ схСмы ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π²ΠΎ fritzing.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ дисплСя 1602 lcd i2c. 1602 Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ дисплСй

БСгодня ΠΈΠ·ΡƒΡ‡ΠΈΠΌ LCD ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹. Иногда ΠΈΡ… Π΅Ρ‰Ρ‘ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Π–Πš – ТидкокристалличСскиС экраны.

  • Рассмотрим LCD 1602 ΠΈ LCD2004.
  • Π”Π²Π° способа ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ ΡˆΠΈΠ½Ρ‹ LCD ΠΈ I2C.
  • Π£Π·Π½Π°Π΅ΠΌ адрСс Π² I2C Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ экран ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ сканСр.
  • ΠŸΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΈΠ»ΠΈ отсутствии русского ΡˆΡ€ΠΈΡ„Ρ‚Π°.
  • Рассмотрим Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°ΠΊΠΎΠ³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°. ДисплСйный ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ…Ρ€Π°Π½ΠΈΡ‚ Π² памяти Π΄Π²Π΅ страницы Π·Π½Π°ΠΊΠΎΠ³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ установлСна нулСвая страница.Β 
  •  Научимся ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ свои символы 


Π’ самом Π½Π°Π·Π²Π°Π½ΠΈΠΈ LCD 1602 ΠΈ LCD2004 Π·Π°Π»ΠΎΠΆΠ΅Π½ΠΎ количСство символов Π² строкС ΠΈ количСство строк.
Π’Π°ΠΊ Π² LCD 1602

– 16 символов Π² 2 строчках,
LCD2004 ΡƒΠΆΠ΅ 20 символов Π² 4 строчках.
Π•Ρ‰Ρ‘ ΠΎΠ½ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Ρ†Π²Π΅Ρ‚ΠΎΠΌ подсвСтки. НапримСр, синяя ΠΈΠ»ΠΈ ТСлтая подсвСтка.

ΠŸΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Π΅ΠΌ ΠΊ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ.
Π‘Π½Π°Ρ‡Π°Π»Π° Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΌΡƒ адрСсу находится LCD дисплСй. Для этого Π½Π°ΠΌ понадобится скСтч Π‘ΠΊΠ°Π½Π΅Ρ€ I2C.Β 

Π₯арактСристики дисплССв.

Π₯арактСристики
β€’Β Β  Β Π‘ΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²: 16
β€’Β Β  Β Π‘Ρ‚Ρ€ΠΎΠΊ: 2
β€’Β Β   НапряТСниС питания VCC,Π’: ΠΎΡ‚ 4.7 Π΄ΠΎ 5.3
β€’Β Β  Β Π’ΠΎΠΊ потрСблСния ICC,мА: 1.5
β€’Β Β  Β Π Π°Π·ΠΌΠ΅Ρ€Ρ‹ модуля, ΠΌΠΌ: 80x36x11;
β€’Β Β  Β Π Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°, ΠΌΠΌ: 64.5×14;
β€’Β Β  Β Π¦Π²Π΅Ρ‚ Ρ‚ΠΎΡ‡ΠΊΠΈ: сСрый, ΠΏΠΎΠ·ΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ;
β€’Β Β  Β Π¦Π²Π΅Ρ‚ LED подсвСтки: ΠΆΠ΅Π»Ρ‚ΠΎ-Π·Π΅Π»Π΅Π½Ρ‹ΠΉ;
β€’Β Β  Β Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ: ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ 8 Π±ΠΈΡ‚.


ΠžΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ дисплССм с I2C Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ΠΎΠΌ. Если Ρƒ вас простой дисплСй, Π±Π΅Π· модуля I2C, Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΊΡƒΠΏΠΈΡ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΈ ΠΏΡ€ΠΈΠΏΠ°ΡΡ‚ΡŒ Π΅Π³ΠΎ ΠΊ дисплСю.
I2C Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ΠΎΠΌ Β — это ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ интСрфСйсов ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΠΌΠ΅Π½ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ шиной LCD ΠΈ шиной I2C. И вмСсто 8 ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Π½Π° Ардуино Π²Π°ΠΌ понадобится всСго 2, Π° ΠΊ самой шинС I2C ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ число Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… устройств.

АдрСс Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Π° хранится Π² энСргонСзависимой памяти.

Рассмотрим Ρ€Π°Π±ΠΎΡ‚Ρƒ скСтча Π‘ΠΊΠ°Π½Π΅Ρ€ I2C.
Π‘ΠΊΠ°Π½Π΅Ρ€ ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π΅Ρ‚ всС адрСса ΠΈ Ссли Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ устройство ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Ρ‘Π½Π½ΠΎΠ΅ ΠΊ шинС I2C Ρ‚ΠΎ Π² ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΠΎΡ€Ρ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ адрСс устройства ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΈ Π·Π°Ρ‚Π΅ΠΌ ввСсти Π² ΠΊΠΎΠ΄ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с этим устройством.

Для Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ LiquidCristal_ITC. Как Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΌΡ‹ ΡƒΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π· рассматривали. Если Π²Ρ‹ Π½Π΅ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‚ΠΎ посмотритС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ Π²ΠΈΠ΄Π΅ΠΎ, Ρ‚Π°ΠΌ я ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассказывал ΠΊΠ°ΠΊ это Π΄Π΅Π»Π°Ρ‚ΡŒ. Π—Π°Π³Ρ€ΡƒΠ·ΠΈΠΌ скСтч ΠΈΠ· Π°Ρ€Ρ…ΠΈΠ²Π°. HelloWorld. Или ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

Π—Π΄Π΅ΡΡŒ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ адрСс устройства ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ» сканСр. И ΠΊΠ°ΠΊΠΎΠΉ Ρƒ вас дисплСй. 16 ΠΈΠ»ΠΈ 20 Π·Π½Π°ΠΊΠΎΠ².
Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй.
Π’ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Π½Π° Π½Ρ‘ΠΌ подсвСтку.Β 
УстанавливаСм курсор Π½Π° 3 знакомСсто экрана, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ отсчёт вСдётся с 0.

Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ тСкст. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅ΠΌ курсор Π½Π° 2 строку ΠΈ 2 символ.
Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Π΄Ρ€ΡƒΠ³ΡƒΡŽ надпись.
ΠŸΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΈ смотрим Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. ΠœΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ±Π΅ надписи Π²Ρ‹Π²Π΅Π»ΠΈΡΡŒ Π½Π° экран ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΌ Π³Π΄Π΅ ΠΌΡ‹ ΠΈ Ρ…ΠΎΡ‚Π΅Π»ΠΈ.Β 

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ вывСсти надпись Π½Π° русском языкС. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΈΡ€ΠΈΠ»Π»ΠΈΡ†Π΅ΠΉ. Для этого Π·Π°ΠΊΠΎΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ эти строки ΠΈ расскоммСнтируСм эти. ΠŸΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ Ардуино ΠΈ Π²ΠΈΠ΄ΠΈΠΌ нСпонятныС зюки. Π­Ρ‚ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ наш дисплСй Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ€ΡƒΡΡΠΊΡƒΡŽ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ. Π’Π°ΠΊ ΠΊΠ°ΠΊ Ρ‚Π°ΠΌ Π½Π΅ ΠΏΡ€ΠΎΡˆΠΈΡ‚Ρ‹ русскиС символы.Β 

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎ Π±Ρ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ тСкст Ρƒ вас Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ установлСна Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° LCD 16 02 RUS ALL
По ΠΌΠΎΠ΅ΠΌΡƒ мнСнию – это самая Π»ΡƒΡ‡ΡˆΠ°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Π²Ρ‹Π²ΠΎΠ΄Π° ΠΊΠΈΡ€ΠΈΠ»Π»ΠΈΡ†Ρ‹ Π½Π° экран. Она Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ дисплСями с 16 ΠΈ 20 символами ΠΈ с ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ I2C ΠΈ прямым ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ.
Если Π²Ρ‹ ΡƒΠΆΠ΅ установили ΡƒΡ‚Ρƒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ, Ρ‚ΠΎ просто мСняСм Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ тСкст Π² скСтчС Π½Π° этот.
Π­Ρ‚ΠΈΠΌ ΠΌΡ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΈ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ адрСс устройства ΠΈ Ρ‚ΠΈΠΏ дисплСя.
Π‘ΠΎΠ»ΡŒΡˆΠ΅ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π΅ Π½Π°Π΄ΠΎ.
Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ ΠΈ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ исчСзла. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ любой тСкст Π½Π° экран.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Ρ‡Ρ‚ΠΎ ΠΆΠ΅ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ°.
Π’ памяти дисплСя ΠΏΡ€ΠΎΡˆΠΈΡ‚Ρ‹ символы ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ адрСсам.Β 
НапримСр запустив этот скСтч Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π»ΠΈ ваш дисплСй Ρ€ΡƒΡΡΠΊΡƒΡŽ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ ΠΈΠ»ΠΈ Π½Π΅Ρ‚.Β 
А Π΅Ρ‰Ρ‘ Π΅ΡΡ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠžΠ—Π£ Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡˆΠΈΡ‚ΡŒ 8 своих символов. Π­Ρ‚ΠΈ мСста находятся Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ столбцС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Как ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ свои символы ΠΌΡ‹ рассмотрим Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅.Β 

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ Π² своём скСтчС тСкст Π²Ρ‹ ΠΎΠ±Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ΡΡŒ ΠΊ этим символам ΠΏΠΎ этим адрСсам. И Ссли Π±Ρ‹ Π²Ρ‹ Π½Π΅ использовали Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ, Ρ‚ΠΎ Π²Π°ΠΌ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Π±Ρ‹ ΠΏΠΈΡΠ°Ρ‚ΡŒ эти адрСса. Π§Ρ‚ΠΎ ΠΊΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ совсСм Π½Π΅ просто. Π’ΠΎΡ‚ всю эту Π³Ρ€ΡΠ·Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ выполняСт Π·Π° вас Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°.
А здСсь Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ Π±Ρ‹Π»ΠΈ оставлСны 2 пустых столбца. Π—Π°Ρ‡Π΅ΠΌ я Π½Π΅ знаю. Π›ΡƒΡ‡ΡˆΠ΅ Π±Ρ‹ ΠΎΠ½ΠΈ Ρ‚ΡƒΠ΄Π° русский ΡˆΡ€ΠΈΡ„Ρ‚ размСстили.Β 
А здСсь Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Ρ‹ символы ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ входят Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ. Π’ΠΎΡ‚ ΠΎΠ½Π° ΠΈ мСняСтся ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΌ Π² зависимости ΠΎΡ‚ страны использования. И Ссли ваш дисплСй Π½Π΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ здСсь русского Π°Π»Ρ„Π°Π²ΠΈΡ‚Π°, Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ Ρƒ Π½Π΅Π³ΠΎ Π½Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ русских тСкстов. Но ΠΌΡ‹ смоТСм ΠΎΠ±ΠΎΠΉΡ‚ΠΈ эти ограничСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ.

Π­Ρ‚ΠΎ скСтч ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Как Π²ΠΈΠ΄ΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ Π±Ρ‹Π»ΠΈ созданы символы сСрдцС, смайлик, ΠΈ Ρ‡Π΅Π»ΠΎΠ²Π΅Ρ‡Π΅ΠΊ. Π”Π°Π»ΡŒΡˆΠ΅ я ΠΏΠΎΠΊΠ°ΠΆΡƒ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ свои символы. НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅, Π² скСтчС, ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎ 8 символов. Но это ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ, Ссли Π² процСссС Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈΠ· памяти ΡƒΠΆΠ΅ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹Π΅ символы ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅.

Для создания символов Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Если Π²Π°ΠΌ ΠΎΠ½Π° Π½Π΅ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ Π΄Ρ€ΡƒΠ³ΡƒΡŽ, ΠΈΡ… ΠΌΠ½ΠΎΠ³ΠΎ.
Π—Π°Ρ…ΠΎΠ΄ΠΈΠΌ ΠΈ настраиваСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Π—Π΄Π΅ΡΡŒ Π½ΠΈΡ‡Π΅Π³ΠΎ слоТного. Π“Π»Π°Π²Π½ΠΎΠ΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ вас Ардуино, ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ I2C.
Π’Π°ΠΌ создадут скСтч, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π½Π° своСй страницС. НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ свой адрСс ΠΈ Ρ‚ΠΈΠΏ дисплСя.
Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°Ρ‰Ρ‘Π»ΠΊΠΈΠ²Π°Π΅ΠΌ свой символ ΠΈ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ.

ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ свой скСтч ΠΈ вставляСм скопированный ΠΊΠΎΠ΄. Π•Ρ‰Ρ‘ Ρ€Π°Π· провСряСм адрСс ΠΈ Ρ‚ΠΈΠΏ дисплСя.
ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΎΡˆΠΈΠ±ΠΊΡƒ. Π­Ρ‚ΠΎ ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ всё Ρ€Π°Π²Π½ΠΎ скомпилировался для ΠΏΠ°Ρ€Ρ†Π΅Π»Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Π˜ΡΠΏΡ€Π°Π²Π»ΡΠ΅ΠΌ эту строчку.
Π•Ρ‰Π΅ Ρ€Π°Π· ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ символ Π½Π° экранС, Π½ΠΎ Ρƒ нас Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° подсвСтка. ВозвращаСмся ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ подсвСтку. ΠŸΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ ΠΈ Π²ΠΎΡ‚ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ всё Ρ…ΠΎΡ€ΠΎΡˆΠΎ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ символ. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с устройствами Π½Π°ΠΌ часто приходится ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠΈ. Π”Π°Π²Π°ΠΉΡ‚Π΅ сдСлаСм символ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ остаточного напряТСния Π½Π° Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠ΅. Ну, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π° сколько ΠΎΠ½Π° разряТСна. Для этого создадим нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² символов Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠΈ. ΠžΡ‚ ΠΏΠΎΡ‡Ρ‚ΠΈ разряТСнной Π΄ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ заряТСнной. ПослС создания ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ ΠΌΡ‹ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ ΠΊΠΎΠ΄. Β Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΌ Π½Π΅ Π½Π°Π΄ΠΎ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ вСсь ΠΊΠΎΠ΄, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сам массив.
ЕдинствСнноС, Ρ‚ΠΎ Π½Π°Π΄ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ – это Π΄Π°Π²Π°Ρ‚ΡŒ массиву Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π°. Π― Π±ΡƒΠ΄Ρƒ ΠΏΡ€ΠΈΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎ 1.
Π’Π°ΠΊΠΆΠ΅ Π² сСтапС ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ строку Π²Ρ‹Π²ΠΎΠ΄Π° символа. И Ρ‚Π°ΠΊ ΠΆΠ΅ мСняСм названия.
Π― сдСлал 4 символа, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΈ большС.
Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ скСтч ΠΈ смотрим Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ. И Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠ° Π²Ρ‹Π²Π΅Π»Π°ΡΡŒ Π½Π° экран, Π½ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послСдний символ. Π‘ΠΈΠΌΠ²ΠΎΠ» ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ заряТСнной Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠΈ.
Π”Π°Π²Π°ΠΉΡ‚Π΅ скопируСм вСсь ΠΊΠΎΠ΄ ΠΈ помСстим Π΅Π³ΠΎ Π² Π»ΡƒΠΏ. ΠŸΡƒΡΡ‚ΡŒ выполняСтся Π±Π΅Π· ΠΊΠΎΠ½Ρ†Π°.
И поставим нСбольшиС Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π° символа, Π° ΠΈΠ½Π°Ρ‡Π΅ ΠΌΡ‹ Π½Π΅ Π·Π°ΠΌΠ΅Ρ‚ΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
ΠŸΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ ΠΈ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π΅ Ρ‚ΠΎ.
А всё ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ я ΠΏΡ€ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π·Π°Ρ…Π²Π°Ρ‚ΠΈΠ»  лишнСС. Π’Π΅Ρ€Π½Ρ‘ΠΌ это ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² сСтап.
ΠŸΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ.
Π’ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ всё Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠ°ΠΊ Π½Π°Π΄ΠΎ. И Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠ° постСпСнно заполняСтся. Если Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ символ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ΅ мСсто ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰Π΅Π΅ Π·Π° разряд Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠΈ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π° сколько разряТСна Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠ°.

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ напишСм нСбольшой ΠΊΠΎΠ΄ для Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° экран. Π”ΠΎ этого ΠΌΡ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠ»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ статичный тСкст. НапримСр Π΄Π°Π²Π°ΠΉΡ‚Π΅ сдСлаСм сСкундомСр. Π­Ρ‚ΠΎΡ‚ скСтч Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠΎ 1 ΠΊΠ°ΠΆΠ΄ΡƒΡŽ сСкунду.
Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π±ΡƒΠ΄Π΅ΠΌ всё Π² ΠΎΠ΄Π½ΠΎΠΉ строкС.Β 
Π‘Π»ΠΎΠ²ΠΎ Π‘Π΅ΠΊΡƒΠ½Π΄ΠΎΠΌΠ΅Ρ€ Π±ΡƒΠ΄Π΅ΠΌ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ начиная с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π·Π½Π°ΠΊΠ°, Π° сам счётчик начиная с 13 знакомСста. НС Π·Π°Π±Ρ‹Π²Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ счёт ΠΈΠ΄Ρ‘Ρ‚ с 0.
ΠŸΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ. Но скСтч Π½Π°ΠΌ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ. Π­Ρ‚ΠΎ всё ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΏΡ‹Ρ‚Π°Π»ΠΈΡΡŒ вывСсти Π½Π° экран Ρ†ΠΈΡ„Ρ€Ρƒ. Π’ΠΎ Π΅ΡΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ Ρ‚ΠΈΠΏ int. А Π½Π° экран ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ΠΊΡΡ‚ΠΎΠ²ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ.Β 
ΠŸΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘ΠΌ int Π² string. Π‘Π΄Π΅Π»Π°Π΅ΠΌ ΠΈΠ· Ρ†ΠΈΡ„Ρ€Ρ‹ тСкст.
Π’Π΅ΠΏΠ΅Ρ€ΡŒ скСтч ΠΏΡ€ΠΎΡˆΠΈΠ»ΡΡ Π±Π΅Π· ошибок ΠΈ Π½Π° экранС ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ надпись Π‘Π΅ΠΊΡƒΠ½Π΄ΠΎΠΌΠ΅Ρ€ ΠΈ ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΠ΅ΡΡ Ρ†ΠΈΡ„Ρ€Ρ‹ с частотой Π² 1 сСкунду.Β 
А это ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² входящих Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ. На этом ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ Π±Π΅Π³ΡƒΡ‰ΠΈΠ΅ строки.Β 
Для этого Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠœΡ‹ ΠΈΡ… рассмотрим дальшС Π² Π²ΠΈΠ΄Π΅ΠΎ.
ΠšΡΡ‚Π°Ρ‚ΠΈ Π²ΠΎΡ‚ Ρ‚Π°ΠΊ я ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ» 4 строчный ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π½Π° 20 символов Π±Π΅Π· ΡˆΠΈΠ½Ρ‹ i2c.

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с курсором.
Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ курсор Π΅Π³ΠΎ Π½Π°Π΄ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ. ΠšΡƒΡ€ΡΠΎΡ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄Π²Π° Π²ΠΈΠ΄Π°. Π’ Π²ΠΈΠ΄Π΅ подчёркивания ΠΈ ΠΊΠ°ΠΊ ΠΌΠΈΠ³Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ. УстанавливаСм курсор Π½Π° 9 знакомСсто.
ΠŸΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ ΠΈ Π²ΠΈΠ΄ΠΈΠΌ курсор ΠΏΠΎ сСрСдинС экрана.
Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ Ρ‚ΠΈΠΏ курсора с подчёркивания Π½Π° ΠΌΠΈΠ³Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ, Π½Π°Π΄ΠΎ Π½Π°Π±Ρ€Π°Ρ‚ΡŒ Π½ΠΎΡƒΠ±Π»ΠΈΠ½ΠΊ. ΠŸΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ ΠΏΡ€ΠΎΠΏΠ°Π΄Ρ‘Ρ‚, Π° ΠΏΠΎΠ΄Ρ‡Ρ‘Ρ€ΠΊΠΈΠ²Π°Π½ΠΈΠ΅ останСтся Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΠΌ курсор.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ познакомимся с функциями Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π― ΠΏΠΎΠΊΠ°ΠΆΡƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ основныС ΠΈΠ· Π½ΠΈΡ….
НапримСр ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ тСкст справа Π½Π° Π»Π΅Π²ΠΎ. А Π²ΠΎΡ‚ Ρ‚ΡƒΡ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΡ‘Π» обломс. Русская Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с функциями. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с основной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ.
Π—Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ HELLO WORLD ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Liquid Crystal i2c.

Π‘Π½ΠΎΠ²Π° вставляСм Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ тСкст справа Π½Π° Π»Π΅Π²ΠΎ. И наш тСкст ΡƒΠ±Π΅ΠΆΠ°Π» Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ экрана. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ вывСлся с 4 знакомСста ΠΈ ΡƒΡˆΡ‘Π» Π²ΠΏΡ€Π°Π²ΠΎ. ИзмСняСм Π½Π°Ρ‡Π°Π»ΠΎ тСкста. Π― Π·Π°Π±Ρ‹Π» ΠΈ написал с 16 мСста, Π·Π°Π±Ρ‹Π² Ρ‡Ρ‚ΠΎ счёт ΠΈΠ΄Ρ‘Ρ‚ с нуля. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ стал Π·Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ экрана. Π˜ΡΠΏΡ€Π°Π²ΠΈΠ» Π½Π° 15.
Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ тСкст справа Π½Π° Π»Π΅Π²ΠΎ, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΉΡΡ с ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΏΡ€Π°Π²ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строки.
А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ для сравнСния Π΄ΠΎΠ±Π°Π²ΠΈΠΌ этот ΠΆΠ΅ тСкст, Π½ΠΎ с Π»Π΅Π²ΠΎ Π½Π° ΠΏΡ€Π°Π²ΠΎ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ сдвинСм всС тСксты Π½Π° экранС Π½Π° 1 символ Π²ΠΏΡ€Π°Π²ΠΎ. Π’ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ нас ΠΏΡ€ΠΎΠΏΠ°Π» ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строки, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ всё ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠ½ΡƒΠ»ΠΎΡΡŒ Π²ΠΏΡ€Π°Π²ΠΎ.
Π•Ρ‰Ρ‘ Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΊΡ€Ρ‹Ρ‚ΡŒ вСсь тСкст Π½Π° экранС Π½Π΅ удаляя Π΅Π³ΠΎ ΠΈ Π½Π΅ очищая экран. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‰Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ всё Π½Π° дисплСС Π² сСрСдину тСкста. Как ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Π°ΡΡ‚ΡŒ экрана ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ нСльзя. Волько ΠΈΠ»ΠΈ ΡΠΊΡ€Ρ‹Ρ‚ΡŒ вСсь экран ΠΈΠ»ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь экран.

Ну ΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΏΠΎΠΊΠ°ΠΆΡƒ ΠΊΠ°ΠΊ я ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ» 4 строчСчный дисплСй Π±Π΅Π· i2c. ΠŸΠΎΠ΄ΡΡ‚Ρ€ΠΎΠ΅Ρ‡Π½Ρ‹ΠΌ рСзистором ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΡ€ΠΊΠΎΡΡ‚ΡŒ ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΡΡ‚Π½ΠΎΡΡ‚ΡŒ экрана, добиваясь Π½ΡƒΠΆΠ½ΠΎΠΉ яркости.
И ΠΏΠΎΠΊΠ°ΠΆΡƒ ΠΊΠ°ΠΊ смотрится Ρ‚Π°Π±Π»ΠΈΡ†Π° символов Π½Π° этом экранС. Π― Π²Ρ‹Π²Π΅Π» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ страницу.
На этом я Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽ этот большой ΡƒΡ€ΠΎΠΊ ΠΏΡ€ΠΎ LCD дисплСи.

Π₯арактСристики I2C Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Π°.

Π₯арактСристики
β€’Β Β   НапряТСниС питания: 5 Π’.
β€’Β Β  Β ΠŸΠΎΡ‚Ρ€Π΅Π±Π»ΡΠ΅ΠΌΡ‹ΠΉ Ρ‚ΠΎΠΊ: Π΄ΠΎ 6 мА.
β€’Β Β  Β Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ: I2C.
β€’Β Β  Β Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΡˆΠΈΠ½Ρ‹ I2C: 100 ΠΊΠ±ΠΈΡ‚/с.
β€’Β Β   АдрСс Π½Π° шинС I2C: устанавливаСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 0x09).
β€’Β Β  Β Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ логичСской 1 Π½Π° линиях ΡˆΠΈΠ½Ρ‹ I2C: 3,3 Π’ (Ρ‚ΠΎΠ»Π΅Ρ€Π°Π½Ρ‚Π½Ρ‹ ΠΊ 5 Π’).
β€’Β Β   Рабочая Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Π°: ΠΎΡ‚ -20 Π΄ΠΎ +70 Β°Π‘.
β€’Β Β  Β Π“Π°Π±Π°Ρ€ΠΈΡ‚Ρ‹: 41,91 Ρ… 17,15 ΠΌΠΌ (1650 x 675 mil).
β€’Β Β   ВСс: 6 Π³.
Β 

Π‘ΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ дисплСй LCD 1602 синий

ЖидкокристалличСский дисплСй LCD 1602 (Liquid Crystal Display) 16 Ρ… 2 с синСй подсвСткой.
ДисплСй LCD-1602B рСкомСндуСтся для создания Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Arduino ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², обучСния ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… систСм ΠΌΠ΅Ρ…Π°Ρ‚Ρ€ΠΎΠ½ΠΈΠΊΠΈ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, Π° Ρ‚Π°ΠΊΠΆΠ΅ для конструкторских Ρ…ΠΎΠ±Π±ΠΈ.

  • ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ дисплСя LCD1602 ΠΊ Arduino осущСствляСтся ΠΏΠΎ синхронному 8-Π±ΠΈΡ‚Π½ΠΎΠΌΡƒ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ интСрфСйсу.
  • Π‘ΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ дисплСй построСн Π½Π° Π±Π°Π·Π΅ Π–Πš дисплСя Ρ‚ΠΈΠΏΠ° STN (Super Twisted Nematic) ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° HD44780.
  • ДисплСй LCD1602 ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π΄ΠΎ 32 символов (16 символов, 2 строки).
  • ΠšΠΎΠ½Ρ‚Ρ€Π°ΡΡ‚ дисплСя настраиваСтся ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ устанавливаСтся Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ.
  • ДисплСй оснащён свСтодиодной подсвСткой синСго Ρ†Π²Π΅Ρ‚Π°.
  • ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ дисплСя HD44780 ΠΈΠΌΠ΅Π΅Ρ‚ ΠŸΠ—Π£ Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ хранятся Ρ†ΠΈΡ„Ρ€Ρ‹, символы Π»Π°Ρ‚ΠΈΠ½ΠΈΡ†Ρ‹ ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ΅Ρ€ΠΎΠ³Π»ΠΈΡ„Ρ‹ японского языка, для ΠΈΡ… отобраТСния Π½Π° дисплСС. ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ символы, Π² Ρ‚.Ρ‡. ΠΈ символы ΠΊΠΈΡ€ΠΈΠ»Π»ΠΈΡ†Ρ‹, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠžΠ—Π£ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°.

Π₯арактСристики
Π’ΠΈΠΏ дисплСя: ТидкокристалличСский ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ (Π»Π°Ρ‚ΠΈΠ½ΠΈΡ†Π°)
ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ символов Π² строкС: 16
ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ строк: 2
Π¦Π²Π΅Ρ‚ подсвСтки: синий
Π¦Π²Π΅Ρ‚ символов: Π±Π΅Π»Ρ‹ΠΉ
ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€: HD44780
Π£Π³ΠΎΠ» ΠΎΠ±Π·ΠΎΡ€Π°: 180Β°
Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹: синхронный, 8-Π±ΠΈΡ‚Π½Ρ‹ΠΉ, ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΉ
НапряТСниС питания: 5 Π’
Рабочая Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Π°: ΠΎΡ‚ -20 Β°Π‘ Π΄ΠΎ +70 Β°Π‘
Π Π°Π·ΠΌΠ΅Ρ€Ρ‹: 82 Ρ… 36 Ρ… 11 ΠΌΠΌ

Для ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ дисплСя LCD1602 рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€ LCD-1602-IIC-Adapter для прСобразования ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ 8-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ интСрфСйса тСкстовых Π–Πš дисплССв Π² ΡˆΠΈΠ½Ρƒ I2C.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ дисплСя LCD1602 ΠΏΠΎ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ интСрфСйсу Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ слоТнСС, Ρ‡Π΅ΠΌ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€ ΠΏΠΎ шинС I2C, Π° Ρ‚Π°ΠΊΠΆΠ΅ трСбуСтся Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт — ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€ для Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠΈ контрастности.

Π¨ΠΈΠ½Π° Π΄Π°Π½Π½Ρ‹Ρ… дисплСя состоит ΠΈΠ· 8 Π»ΠΈΠ½ΠΈΠΉ (D0-D7), Π½ΠΎ Ссли ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΡ‚Π°Ρ€ΡˆΠΈΠ΅ 4 Π»ΠΈΠ½ΠΈΠΈ (D4-D7), ΠΊΠ°ΠΊ это ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС, это Π½Π΅ сниТаСт ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ дисплСя. Для удобства ΠΌΡ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ D4-D7 дисплСя ΠΊ ΠΎΠ΄Π½ΠΎΠΈΠΌΡ‘Π½Π½Ρ‹ΠΌ Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ D4-D7 Arduino. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ D0-D7, E ΠΈ RS дисплСя, ΠΊ Π»ΡŽΠ±Ρ‹ΠΌ Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ Arduino, ΡƒΠΊΠ°Π·Π°Π² ΠΈΡ… Π² скСтчС ΠΏΡ€ΠΈ объявлСнии ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

НапряТСниС питания Π»ΠΎΠ³ΠΈΠΊΠΈ дисплСя 5 Π’ постоянного Ρ‚ΠΎΠΊΠ° подаётся Π½Π° Π²Ρ‹Π²ΠΎΠ΄Ρ‹ VDD (VCC) ΠΈ VSS (GND) дисплСя.

НапряТСниС питания подсвСтки 5 Π’ постоянного Ρ‚ΠΎΠΊΠ° подаётся Π½Π° Π²Ρ‹Π²ΠΎΠ΄Ρ‹ A (Анод — Anode) ΠΈ K (ΠšΠ°Ρ‚ΠΎΠ΄ — Cathode) дисплСя.

ΠŸΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π» для установки контрастности 0 … +5 Π’ постоянного Ρ‚ΠΎΠΊΠ° подаётся Π½Π° Π²Ρ‹Π²ΠΎΠ΄ V0 дисплСя.

ДисплСй LCD 1602 Π±Π΅Π· лапши ΠΈΠ· ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ²

НС всСгда ΠΏΠΎΠ΄ Ρ€ΡƒΠΊΠΎΠΉ Π΅ΡΡ‚ΡŒ LCD дисплСй с интСрфСйсом I2C… А Ρ‚Π°ΠΊ хочСтся ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΈΠ·Π΄Π΅Π»ΠΈΠ΅ поскорСй ΠΈ Π½Π΅ ΠΆΠ΄Π°Ρ‚ΡŒ Π·Π°ΠΊΠ°Π·Π° ΠΈΠ· Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°. Π”Π° ΠΈ Π½Π΅ всСгда экономичСски цСлСсообразно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ I2C, особСнно Ссли Π’Π°ΠΌ трСбуСтся ΠΈΠ·Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ устройств с Ρ‚Π°ΠΊΠΈΠΌ дисплССм.

Π”Π°, минусами Π³ΠΎΠ»ΠΎΠ³ΠΎ дисплСя ΡΠ²Π»ΡΡŽΡ‚ΡΡ:

  1. Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠ½Ρ‚Π°ΠΆΠ° – вСдь потрСбуСтся развСсти ΠΎΠΊΠΎΠ»ΠΎ 1.5 дСсятка ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ²-ΠΏΡ€Π΅ΠΌΡ‹Ρ‡Π΅ΠΊ,
  2. Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ расход ΠΏΠΈΠ½ΠΎΠ² – Ρ†Π΅Π»Ρ‹Ρ… 6 Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… ΠΏΠΈΠ½ΠΎΠ²!

Но Ρƒ Π³ΠΎΠ»ΠΎΠ³ΠΎ дисплСя Π΅ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ, ΠΎΠ΄ΠΈΠ½, Π½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ вСсомый плюс:

ΠŸΡ€ΠΎΡΡ‚Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° LiquidCrystal Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π½Π° 219 мСньшС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти, Ρ‡Π΅ΠΌ New LiquidCrystal ΠΈ Π½Π° 198 Π±Π°ΠΉΡ‚ мСньшС, Ρ‡Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ популярная LiquidCrystal I2C!

219 Π±Π°ΠΉΡ‚, ΠšΠ°Ρ€Π»! Π’Π΅Π΄ΡŒ для Ардуино Нано ΠΈΠ»ΠΈ Π£Π½ΠΎ это ΠΆΠ΅ ΠΎ-Π³ΠΎ-Π³ΠΎ ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ!

Π§Ρ‚ΠΎ ΠΆΠ΅ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ – 4 ΠΏΠΈΠ½Π° ΠΈΠ»ΠΈ 219 Π±Π°ΠΉΡ‚ – опрСдСляСтся ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ситуаций. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я расскаТу ΠΊΠ°ΠΊ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ ΠΌΠΎΠ½Ρ‚Π°ΠΆ Π³ΠΎΠ»ΠΎΠ³ΠΎ дисплСя.

Π”Π°, я ΠΎΡ‡Π΅Π½ΡŒ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ΠΈΠΌΠ΅Π½Π½ΠΎ простой экран, Π° Π½Π΅ с Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠΌ SPI, I2C ΠΈΠ»ΠΈ Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ SSD1306, с ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· самых тяТСлых Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ.

Но Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠ½Ρ‚Π°ΠΆ Π½Π΅ прСвращался ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π² ΠΌΠΎΡ€ΠΎΠΊΡƒ, Ρƒ мСня Π΅ΡΡ‚ΡŒ готовая сборка, Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΠ°Ρ ΠΊ Arduino UNO ΠΈ Nano. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим ΠΊΠ°ΠΊ я этого добился.

Π― Ρ‡Π°Ρ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Nano, Π²ΡΡ‚Π°Π²Π»Π΅Π½Π½ΡƒΡŽ Π² ΠΌΠΈΠΊΡ€ΠΎ-breadboard Π½Π° 170 Π΄Ρ‹Ρ€ΠΎΠΊ. Π’Π°ΠΊ Π³ΠΎΡ€Π°Π·Π΄ΠΎ мСньшС ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ², ΠΈ сборка ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Π΅ΠΉ Ρ‡Π΅ΠΌ c UNO. И ΠΊ Ρ‚Π°ΠΊΠΎΠΉ ΠΌΠ°ΠΊΠ΅Ρ‚ΠΊΠ΅ Π»Π΅Π³ΠΊΠΎ ΠΏΡ€ΠΈΡ†Π΅ΠΏΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄Π½Ρƒ ΠΌΠ°ΠΊΠ΅Ρ‚ΠΊΡƒ, с Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΉ обвязкой экрана.

БыстроС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ дисплСя LCD 1602 ΠΊ Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ Π½Π°Π½ΠΎ Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ².

ΠŸΠ°Ρ€Ρƒ пояснСний ΠΏΠΎ схСмС. Π’ схСмС задСйствовано 2 ΠΌΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Β«ΠΌΠΈΠΊΡ€ΠΎΒ», Ρ‚.Π΅. Π½Π° 170 Ρ‚ΠΎΡ‡Π΅ΠΊ (ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΠΈΠΌΠ΅Ρ‚ΡŒ запас Ρ‚Π°ΠΊΠΈΡ… Π΄Π΅ΡˆΠ΅Π²Ρ‹Ρ… ΠΈ вСсьма ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠΊ): Π½Π° ΠΎΠ΄Π½ΠΎΠΉ находится Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ Nano, Π° Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ – экран LCD 1602. ΠœΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π²ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ Π² Π΄Ρ€ΡƒΠ³Π°, хотя Π½Π° рисункС, для ясности, ΠΎΠ½ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Ρ‹ Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½ΠΎ.

На ΠΏΠ»Π°Ρ‚Π΅ с Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ 5V ΠΏΡ€ΠΎΡ‚Π°Ρ‰Π΅Π½Ρ‹ ΠΏΠΎΠ΄ Π°Ρ€Π΄ΡƒΠΈΠ½ΠΊΠΎΠΉ, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π² ΠΎΠ±Ρ…ΠΎΠ΄ двумя ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΠ°ΠΌΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊ Π½Π° ΠΌΠ°ΠΊΠ΅Ρ‚ΠΊΠ΅ рядом, ΠΈΠ»ΠΈ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠΌ ΠΏΠΎΠ²Π΅Ρ€Ρ… Π°Ρ€Π΄ΡƒΠΈΠ½ΠΊΠΈ.

Π’ ΠΈΡ‚ΠΎΠ³Π΅, ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΠΈ ΠΏΡ€ΠΎΠ»ΠΎΠΆΠ΅Π½Ρ‹ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ мСньшС Π½Π°Π²ΠΈΡΠ°ΡŽΡ‰Π΅ΠΉ «лапши». ВсС ΠΎΡ‡Π΅Π½ΡŒ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎ ΠΈ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎ, ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π°Π΄ Π½ΠΎΠ²Ρ‹ΠΌ Ρ‚Π²ΠΎΡ€Π΅Π½ΠΈΠ΅ΠΌ. Π’ΠΎΡ‚ Ρ„ΠΎΡ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π³ΠΎΡ‚ΠΎΠ²ΠΎΠΉ сборки:

НадСюсь, ΠΌΠΎΠΉ ΠΎΠΏΡ‹Ρ‚ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π² вашСм творчСствС ΠΈ Π²Π΄ΠΎΡ…Π½ΠΎΠ²ΠΈΡ‚ Π½Π° созданиС собствСнных, Π±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Π² ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ситуациях. А Ρƒ вас Π΅ΡΡ‚ΡŒ Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ сборки, ΡΠΎΠΊΡ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΠ΅ Ρ‚Ρ€ΡƒΠ΄ΠΎΠ·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹? РасскаТитС Π½Π°ΠΌ!

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ дисплСя.

mozg
Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ°

02.11.2017

862

Вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π”ΠΎΠ±Ρ€Ρ‹ΠΉ Π²Π΅Ρ‡Π΅Ρ€ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ. ΠšΡ‚ΠΎ Π½ΠΈΠ±ΡƒΠ΄ΡŒ сталкивался с ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ дисплСя 16Ρ…2 ΠΊ ramps 1.4 ΠΏΠΎ I2C?

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ это Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅?

ΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° ΠΌΠ°Ρ€Π»ΠΈΠ½ Π±ΡƒΠ΄Π΅Ρ‚

ΠžΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° вопросы

ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½Ρ‹Π΅ вопросы

GHEB
Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ°

22.08.2021

658

Π”ΠΎΠ±Ρ€Ρ‹ΠΉ дСнь! Π‘Π½ΠΎΠ²Π° я, Π½Π΅ ΠΏΡ€ΠΎΡˆΠ»ΠΎ ΠΈ дня, снова ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с 3Π΄ ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒΡŽ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° (ΠŸΠ Π˜ΠšΠ Π£Π§Π•ΠΠ Π›Π˜ МУЀВА ΠŸΠ ΠžΠ€Π•Π Π˜Π›, для Ρ‚Π΅Ρ… ΠΊΡ‚ΠΎ ΠΏΠΎΠΉΠΌΡ‘Ρ‚ πŸ˜‰ )

Π’…

Π§ΠΈΡ‚Π°Ρ‚ΡŒ дальшС sobest
Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ°

25.08.2021

671

ВсСм здравствуйтС, ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ ΠΊΡ‚ΠΎ ΠΊΠ°ΠΊ борСтся с ΠΆΠ°Ρ€ΠΎΠΉ. Π’Π°ΠΊ ΠΊΠ°ΠΊ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Π² ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ PLA-пластик Π° для Π½Π΅Π³ΠΎΒ  (ΠΊΠ°ΠΊ я ΡƒΠ·Π½Π°Π») Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° максимально…

Π§ΠΈΡ‚Π°Ρ‚ΡŒ дальшС mlizart
Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ°

07.12.2016

21949

КоллСги, ΠΏΠΎΠΌΠΎΠ³ΠΈΡ‚Π΅!

На занятиях ΠΏΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΎΠ΄ΠΈΠ½ школьник спросил — Π§Π΅ΠΌ 3D ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€ отличаСтся ΠΎΡ‚ 3D ΠΏΠ»ΠΎΡ‚Ρ‚Π΅Ρ€Π° ΠΈ Ρ‡Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ для Π½ΠΎΠ²ΠΈ…

Π§ΠΈΡ‚Π°Ρ‚ΡŒ дальшС

16×2-ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π–Πš-дисплСй со свСтодиодной подсвСткой (ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΉ интСрфСйс), Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ Π½Π° Π·Π΅Π»Π΅Π½ΠΎΠΌ

ΠžΠ±Π·ΠΎΡ€

Π­Ρ‚ΠΎΡ‚ 16-ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ТидкокристалличСский дисплСй с двумя ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ строками обСспСчиваСт Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ просмотра Π² ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎΠΌ корпусС. Он оснащСн ΠΆΠ΅Π»Ρ‚ΠΎ-Π·Π΅Π»Π΅Π½ΠΎΠΉ свСтодиодной подсвСткой ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΎΠ±Ρ‰ΠΈΠΉ интСрфСйс HD44780 (330k pdf), поэтому ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° интСрфСйса ΡˆΠΈΡ€ΠΎΠΊΠΎ доступСн для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ². Π­Ρ‚ΠΎΡ‚ Π–Πš-дисплСй Ρ‚Π°ΠΊΠΆΠ΅ доступСн Π±Π΅Π· подсвСтки.

АдрСс DDRAM 0x00 соотвСтствуСт ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ символу Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ строки, адрСс 0x0F соотвСтствуСт послСднСму символу Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ строки, адрСс 0x40 соотвСтствуСт ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ символу Π²Ρ‚ΠΎΡ€ΠΎΠΉ строки, Π° адрСс 0x4F соотвСтствуСт послСднСму символу Π²Ρ‚ΠΎΡ€ΠΎΠΉ строки. линия.

ΠžΠ±Ρ€Π°Π·Π΅Ρ† ΠΊΠΎΠ΄Π° интСрфСйса Π–Πš-дисплСя HD44780, написанный для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² AVR, являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Pololu AVR.

Распиновка

Π¨Ρ‚ΠΈΡ„Ρ‚ Π‘ΠΈΠΌΠ²ΠΎΠ» Ѐункция
1 Vss зСмля (0 Π’)
2 Vdd НапряТСниС питания Π»ΠΎΠ³ΠΈΠΊΠΈ 5 Π’
3 Vo Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠ° контрастности
4 RS Π‘ΠΈΠ³Π½Π°Π» Π²Ρ‹Π±ΠΎΡ€Π° рСгистра H / L
5 Π§ / Π— H / L сигнал чтСния / записи
6 E Π‘ΠΈΠ³Π½Π°Π» Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ H / L
7-14 DB0 — DB7 Π¨ΠΈΠ½Π° Π΄Π°Π½Π½Ρ‹Ρ… H / L для 4- ΠΈΠ»ΠΈ 8-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ°
15 А (свСтодиод +) Π°Π½ΠΎΠ΄ подсвСтки
16 К (LED-) ΠΊΠ°Ρ‚ΠΎΠ΄ подсвСтки

ИспользованиС контраста ΠΈ подсвСтки

Как ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Π²Ρ‹ΡˆΠ΅, ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€, Π²Ρ‹Ρ…ΠΎΠ΄ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ Vo, ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ контраст для ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ просмотра вашСго дисплСя.

ΠŸΠΎΠ΄ΡΠ²Π΅Ρ‚ΠΊΠ° этого Π–Πš-дисплСя состоит ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ соСдинСнных свСтодиодов. ΠžΠ±Ρ‰Π΅Π΅ ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ напряТСния Π½Π° этих свСтодиодах ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ составляСт 4,2 Π’, Π° Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ‚ΠΎΠΊ Ρ‡Π΅Ρ€Π΅Π· свСтодиоды составляСт 120 мА. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠΊΠΎΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ рСзистор R LIMIT , ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²Ρ‹ΡˆΠ΅, Π³Π΄Π΅:

R ΠŸΠ Π•Π”Π•Π› = (V ΠŸΠžΠ”Π‘Π’Π•Π’ΠšΠ — 4,2 Π’) / 0,12 A

На ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π²Ρ‹ΡˆΠ΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ V BACKLIGHT ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΠΊΠ°ΠΊ 5 Π’, Π½ΠΎ Π²Ρ‹ Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Ρ‹ 5 Π’; любоС напряТСниС Π²Ρ‹ΡˆΠ΅ Π΄ΠΈΠΎΠ΄Π½ΠΎΠ³ΠΎ падСния Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π²Ρ‹ Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚Π΅ подходящСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для вашСго Ρ‚ΠΎΠΊΠΎΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ рСзистора.Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π²ΠΎΠΉ МОП-транзистор с ШИМ-ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ для достиТСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ затСмнСния подсвСтки, Ссли это Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π’ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ поставки Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° Π½Π΅ входят ΠΊΠ°Π±Π΅Π»ΠΈ ΠΈΠ»ΠΈ Ρ€Π°Π·ΡŠΠ΅ΠΌΡ‹, Π½ΠΎ 2-ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½Ρ‹ΠΉ ΡˆΡ‚Π΅ΠΊΠ΅Ρ€Π½Ρ‹ΠΉ Ρ€Π°Π·ΡŠΠ΅ΠΌ 40 Γ— 0,100 дюйма ΠΈ 20-Π΄ΡŽΠΉΠΌΠΎΠ²Ρ‹ΠΉ 16-ΠΆΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π»Π΅Π½Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ кабСль ΠΌΠΎΠΆΠ½ΠΎ приобрСсти ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚Π΄Π΅Π»ΠΈΡ‚ΡŒ сСгмСнт 7 Γ— 2 ΠΎΡ‚ полосы Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΈ ΠΏΡ€ΠΈΠΏΠ°ΡΡ‚ΡŒ Π΅Π³ΠΎ ΠΊ 14 сквозным отвСрстиям Π½Π° Π»Π΅Π²ΠΎΠΉ сторонС ΠΏΠ΅Ρ‡Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹ Π–Πš-дисплСя; Π»Π΅Π½Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ кабСль Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡΡ ΠΊ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°ΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° (оставив Π΄Π²Π° отвСрстия пустыми). ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΡƒΡŽ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ кабСля, поэтому Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ·Π°Π±ΠΎΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹.Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ 8 Γ— 2 ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ с этим Π–Πš-дисплССм, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ плоскогубцы для извлСчСния ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² 15 ΠΈ 16 Ρ€Π°Π·ΡŠΠ΅ΠΌΠ°, эффСктивно прСвращая Π΅Π³ΠΎ Π² Π³Π½Π΅Π·Π΄ΠΎ с ΠΊΠ»ΡŽΡ‡ΠΎΠΌ 7 Γ— 2 для 16-Тильного Π»Π΅Π½Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ кабСля.

Π›ΡŽΠ΄ΠΈ часто ΠΏΠΎΠΊΡƒΠΏΠ°ΡŽΡ‚ этот Ρ‚ΠΎΠ²Π°Ρ€ вмСстС с:

УправляйтС LCD 1602 ΠΎΡ‚ вашСго Raspberry Pi

LCD 1602 дисплСй

Для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Raspberry Pi трСбуСтся дисплСй для отобраТСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ сообщСний. Π–Πš-дисплСй 1602 идСально ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для отобраТСния ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ тСкста.Π­Ρ‚ΠΎ Π½Π΅Π΄ΠΎΡ€ΠΎΠ³ΠΎΠΉ, ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ простой Π² установкС ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Он ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π΄ΠΎ 2 строк ΠΏΠΎ 16 символов. Π’ этом ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π±ΡƒΠ΄Π΅Ρ‚ продСмонстрировано, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ Raspberry Pi GPIO ΠΊ Π–Πš-дисплСю 1602, Π° Π·Π°Ρ‚Π΅ΠΌ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ тСкст с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ программирования Π½Π° Python.

Распиновка LCD 1602 показана ниТС.

Π’Ρ‹Π²ΠΎΠ΄ Π–Πš-дисплСя Ѐункция Π–Πš-дисплСя Π‘Π°Π½ΠΊΠ½ΠΎΡ‚Ρ‹ Пи-ΡˆΡ‚ΠΈΡ„Ρ‚
01 VSS (зСмля) ΠœΠ°ΠΊΠ΅Ρ‚Π½Π°Ρ ΠΏΠ»Π°Ρ‚Π° GND
02 VDD (+ 5Π’) ΠœΠ°ΠΊΠ΅Ρ‚ + 5Π’
03 VO (контраст) Π’Ρ€ΠΈΠΌΠΌΠ΅Ρ€ со срСдним ΡˆΡ‚ΠΈΡ„Ρ‚ΠΎΠΌ
04 RS GPIO7 26
05 RW ΠœΠ°ΠΊΠ΅Ρ‚Π½Π°Ρ ΠΏΠ»Π°Ρ‚Π° GND
06 E GPIO8 24
07 D0
08 D1
09 D2
10 D3
11 D4 GPIO25 22
12 D5 GPIO24 18
13 D6 GPIO23 16
14 D7 GPIO18 12
15 А (+ 5Π’) ΠœΠ°ΠΊΠ΅Ρ‚ + 5Π’
16 К (зСмля) ΠœΠ°ΠΊΠ΅Ρ‚Π½Π°Ρ ΠΏΠ»Π°Ρ‚Π° GND

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ 1602 ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π΄Π²Π° Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ….1) ВСкстовыС символы ΠΈ 2) инструкции (ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ ΠΈ ΡΠΎΠΎΠ±Ρ‰Π°ΡŽΡ‚ 1602, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ дальшС. Они ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π½Π° Π»ΠΈΠ½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… с — D0 ΠΏΠΎ D7. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ тСкстового символа ΠΈ инструкции трСбуСтся 8 Π±ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Ρ….

ΠœΡ‹ настроим 1602 Π½Π° использованиС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 4 Π»ΠΈΠ½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ количСство ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½Ρ‹Ρ… соСдинСний. Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Python ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ символы ΠΈ инструкции ΠΏΠΎ 4 Π±ΠΈΡ‚Π° Π·Π° Ρ€Π°Π·. Π‘Π½Π°Ρ‡Π°Π»Π° ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ 4 ΡΡ‚Π°Ρ€ΡˆΠΈΡ… Π±ΠΈΡ‚Π°, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ 4 ΠΌΠ»Π°Π΄ΡˆΠΈΡ… Π±ΠΈΡ‚Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ 8-Π±ΠΈΡ‚Π½Ρ‹ΠΉ символ ΠΈΠ»ΠΈ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ.Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π½Π°ΠΌΠΈ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ 1602 прСдставлСны Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π²Ρ‹ΡˆΠ΅. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ D4, D5, D6 ΠΈ D7 . D0 — D3 Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ.

Π§Ρ‚Π΅Π½ΠΈΠ΅ / запись Π’Ρ‹Π²ΠΎΠ΄ (RW) Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ Ρ€Π΅ΠΆΠΈΠΌ чтСния ΠΈΠ»ΠΈ записи 1602. ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² 1602 (Π½Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΈΠ·), поэтому этот Π²Ρ‹Π²ΠΎΠ΄ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ Π·Π΅ΠΌΠ»Π΅ — Π½ΠΈΠ·ΠΊΠΎΠ΅ состояниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для записи. Π—Π°Π·Π΅ΠΌΠ»Π΅Π½ΠΈΠ΅ Π²Ρ‹Π²ΠΎΠ΄Π° RW Π²Π°ΠΆΠ½ΠΎ для прСдотвращСния Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ³ΠΎ чтСния Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Pi. 1602 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ + 5Π’, Π° Pi ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ +3.3 Π’ Π½Π° Π΅Π³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π°Ρ… GPIO. Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ 1602 ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° Pi ΠΏΡ€ΠΈ +5 Π’, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΡ‚ΡŒ Pi.

A Π’Ρ‹Π±ΠΎΡ€ рСгистра (RS) Π’Ρ‹Π²ΠΎΠ΄ сообщаСт 1602, Π³Π΄Π΅ Π² памяти (рСгистрС) Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅. Π’ высоком состоянии (+3,3 Π’ ΠΎΡ‚ Pi GPIO) Π΄Π°Π½Π½Ρ‹Π΅ хранятся Π² рСгистрС Π΄Π°Π½Π½Ρ‹Ρ… (тСкстовый символ). Π’ Π½ΠΈΠ·ΠΊΠΎΠΌ состоянии (0v) Π΄Π°Π½Π½Ρ‹Π΅ хранятся Π² рСгистрС ΠΊΠΎΠΌΠ°Π½Π΄.

Π’Ρ‹Π²ΠΎΠ΄ Enable (E) Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ запись Π΄Π°Π½Π½Ρ‹Ρ… Π² рСгистры, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹.

Π’Ρ‹Π²ΠΎΠ΄ VO ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для управлСния ΠΊΠΎΠ½Ρ‚Ρ€Π°ΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ Π–Πš-дисплСя. Он ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ подстроСчному рСзистору (ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€Ρƒ) для Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠΈ контрастности.

Π’Ρ‹Π²ΠΎΠ΄ A ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ + 5 Π’ (VDD) для подсвСтки.

Π’Ρ‹Π²ΠΎΠ΄ K ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ Π·Π΅ΠΌΠ»Π΅ (VSS) для подсвСтки.

6 ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² GPIO ΠΎΡ‚ Raspberry Pi ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ (4 Π±ΠΈΡ‚Π° Π·Π° Ρ€Π°Π·), управлСния Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ рСгистра ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π½Π° Π–Πš-дисплСй.

Raspberry Pi GPIO ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹

2 синих ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для сигналов RS ΠΈ E. 4 Π·Π΅Π»Π΅Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° отправят Π΄Π°Π½Π½Ρ‹Π΅. Π§Π΅Ρ€Π½Ρ‹ΠΉ — зСмля, Π° красный — + 5Π’ для питания Π–Πš-дисплСя.

Raspberry Pi ΠΊ Π–Πš-дисплСю 1602 соСдинСния

На ΠΌΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Π΅ с Π΄Π²ΡƒΡ… сторон находится шина питания (ряд). Π“ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ряд ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² рядом с красной Π»ΠΈΠ½ΠΈΠ΅ΠΉ составляСт + 5Π’, Π° синяя линия — рядом с Π·Π΅ΠΌΠ»Π΅ΠΉ. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Pi ΠΊ ΠΌΠ°ΠΊΠ΅Ρ‚Ρƒ ΠΈ Π–Πš-дисплСю, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ.

ΠŸΠΎΠ΄ΡΡ‚Ρ€ΠΎΠ΅Ρ‡Π½Ρ‹ΠΉ рСзистор ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ 3 ряда ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠ². Одна сторона ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΊ Π·Π΅ΠΌΠ»Π΅, Π° противополоТная сторона ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΊ + 5Π’. Π‘Ρ€Π΅Π΄Π½ΠΈΠΉ Π²Ρ‹Π²ΠΎΠ΄ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ VO Π½Π° дисплСС ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для управлСния контрастом. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Pi ΠΈ дисплСй Π·Π°Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚, ΠΎΡ‚Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅ подстроСчный рСзистор для Π»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ отобраТСния.

Π£Π²Π΅Π»ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ Π²ΠΈΠ΄ Π–Πš-дисплСя 160 2-ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½Ρ‹Π΅ соСдинСния

Π”Π²Π°ΠΆΠ΄Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ сдСлана, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ поврСТдСния Pi ΠΈΠ·-Π·Π° Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Python

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ исходный ΠΊΠΎΠ΄ Python, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ для этой дСмонстрации. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ двумя способами.

A. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π½ΠΈΠΆΠ΅ исходный ΠΊΠΎΠ΄ Π² тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Raspberry Pi. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ Π² ΠΏΠ°ΠΏΠΊΠ΅ Pi ΠΊΠ°ΠΊ lcd1602.py

B. Если Pi ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π΅Π³ΠΎ с нашСго Π²Π΅Π±-сайта ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

  1. Π—Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π’Π΅Ρ€ΠΌΠΈΠ½Π°Π» (интСрфСйс ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки)
  2. Π’Π²Π΅Π΄ΠΈΡ‚Π΅: wget -O / home / pi / lcd1602.py https://www.mbtechworks.com/files/lcd1602.py
# MBTechWorks.com 2016
# Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π–Πš-дисплССм 1602 с Raspberry Pi с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ программирования Π½Π° Python

#! / usr / bin / python

# Распиновка Π–Πš-дисплСя:
# 1: GND
# 2: ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ 5 Π’
# 3: ΠšΠΎΠ½Ρ‚Ρ€Π°ΡΡ‚Π½ΠΎΡΡ‚ΡŒ дисплСя - ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΊ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠΎΠΌΠ΅Ρ‚Ρ€Ρƒ срСднСго ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°
# 4: RS (Π²Ρ‹Π±ΠΎΡ€ рСгистра)
# 5: R / W (Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ запись) - Π·Π°Π·Π΅ΠΌΠ»ΠΈΡ‚Π΅ этот ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ (Π²Π°ΠΆΠ½ΠΎ)
# 6: Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ стробоскоп
# 7: Π‘ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… 0 - Π²Ρ‹Π²ΠΎΠ΄Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… 0, 1, 2, 3 Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ
# 8: Π‘ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… 1 -
# 9: Π‘ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… 2 -
# 10: Π‘ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… 3 -
# 11: Π‘ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… 4
# 12: Π‘ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… 5
# 13: Π‘ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… 6
# 14: Π‘ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… 7
# 15: ΠŸΠΎΠ΄ΡΠ²Π΅Ρ‚ΠΊΠ° Π–Πš-дисплСя + 5 Π’
# 16: ΠŸΠΎΠ΄ΡΠ²Π΅Ρ‚ΠΊΠ° Π–Πš-дисплСя, зСмля

ΠΈΠΌΠΏΠΎΡ€Ρ‚ RPi.GPIO ΠΊΠ°ΠΊ GPIO
врСмя ΠΈΠΌΠΏΠΎΡ€Ρ‚Π°

# GPIO для отобраТСния Π½Π° Π–Πš-дисплСС
LCD_RS = 7 # Pi ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 26
LCD_E = 8 # Pi ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 24
LCD_D4 = 25 # Pi ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 22
LCD_D5 = 24 # Pi ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 18
LCD_D6 = 23 # Pi ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 16
LCD_D7 = 18 # Pi ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 12

# ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹ устройства
LCD_CHR = True # Π‘ΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ
LCD_CMD = False # ΠšΠΎΠΌΠ°Π½Π΄Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ
LCD_CHARS = 16 # символов Π² строкС (максимум 16)
LCD_LINE_1 = 0x80 # Π―Ρ‡Π΅ΠΉΠΊΠ° памяти Π–Πš-дисплСя для 1-ΠΉ строки
LCD_LINE_2 = 0xC0 # Π―Ρ‡Π΅ΠΉΠΊΠ° памяти Π–Πš-дисплСя 2-я строка

# ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ основной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄
def main ():
 
 GPIO.setwarnings (Π›ΠΎΠΆΡŒ)
 GPIO.setmode (GPIO.BCM) # Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€Π° BCM GPIO
 GPIO.setup (LCD_E, GPIO.OUT) # Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ GPIO Π² Ρ€Π΅ΠΆΠΈΠΌ Π²Ρ‹Π²ΠΎΠ΄Π°
 GPIO.setup (LCD_RS, GPIO.OUT)
 GPIO.setup (LCD_D4, GPIO.OUT)
 GPIO.setup (LCD_D5, GPIO.OUT)
 GPIO.setup (LCD_D6, GPIO.OUT)
 GPIO.setup (LCD_D7, GPIO.OUT)

# Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ дисплСй
 lcd_init ()

# Loop - ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ тСкст ΠΈ ΡΠΏΠ°Ρ‚ΡŒ 3 сСкунды ΠΌΠ΅ΠΆΠ΄Ρƒ тСкстами
# Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚Π΅ тСкст Π½Π° Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ, Π½ΠΎ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 16 символов

 Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ True:
 lcd_text (Β«ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!Β», LCD_LINE_1)
 lcd_text ("", LCD_LINE_2)

 lcd_text ("Rasbperry Pi", LCD_LINE_1)
 lcd_text ("Π–Πš-дисплСй 16x2", LCD_LINE_2)

 врСмя.sleep (3) # 3-сСкундная Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°

 lcd_text ("ABCDEFGHIJKLMNOP", LCD_LINE_1)
 lcd_text ("12345678456", LCD_LINE_2)

 time.sleep (3) # 3-сСкундная Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°

 lcd_text ("Я люблю своС", LCD_LINE_1)
 lcd_text (Β«Raspberry Pi!Β», LCD_LINE_2)

 врСмя сна (3)

 lcd_text ("MBTechWorks.com", LCD_LINE_1)
 lcd_text ("Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ R Pi", LCD_LINE_2)

 врСмя сна (3)

# ΠšΠΎΠ½Π΅Ρ† основного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°


# Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ дисплСй
def lcd_init ():
 lcd_write (0x33, LCD_CMD) # Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ
 lcd_write (0x32, LCD_CMD) # Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 4-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ
 lcd_write (0x06, LCD_CMD) # НаправлСниС двиТСния курсора
 lcd_write (0x0C, LCD_CMD) # ΠžΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ курсор
 lcd_write (0x28, LCD_CMD) # 2-строчный дисплСй
 lcd_write (0x01, LCD_CMD) # ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ дисплСй
 врСмя.sleep (0.0005) # Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° для выполнСния ΠΊΠΎΠΌΠ°Π½Π΄

def lcd_write (Π±ΠΈΡ‚Ρ‹, Ρ€Π΅ΠΆΠΈΠΌ):
# Π‘Ρ‚Π°Ρ€ΡˆΠΈΠ΅ Π±ΠΈΡ‚Ρ‹
 GPIO.output (LCD_RS, Ρ€Π΅ΠΆΠΈΠΌ) # RS

 GPIO.output (LCD_D4, False)
 GPIO.output (LCD_D5, False)
 GPIO.output (LCD_D6, False)
 GPIO.output (LCD_D7, лоТь)
 Ссли Π±ΠΈΡ‚Ρ‹ & 0x10 == 0x10:
 GPIO.output (LCD_D4, True)
 Ссли Π±ΠΈΡ‚Ρ‹ & 0x20 == 0x20:
 GPIO.output (LCD_D5, True)
 Ссли Π±ΠΈΡ‚Ρ‹ & 0x40 == 0x40:
 GPIO.output (LCD_D6, True)
 Ссли Π±ΠΈΡ‚Ρ‹ & 0x80 == 0x80:
 GPIO.Π²Ρ‹Π²ΠΎΠ΄ (LCD_D7, True)

# ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΠΈΠ½-ΠΊΠΎΠ΄ "Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ"
 lcd_toggle_enable ()

# МладшиС Π±ΠΈΡ‚Ρ‹
 GPIO.output (LCD_D4, False)
 GPIO.output (LCD_D5, False)
 GPIO.output (LCD_D6, False)
 GPIO.output (LCD_D7, лоТь)
 Ссли Π±ΠΈΡ‚Ρ‹ & 0x01 == 0x01:
 GPIO.output (LCD_D4, True)
 Ссли Π±ΠΈΡ‚Ρ‹ & 0x02 == 0x02:
 GPIO.output (LCD_D5, True)
 Ссли Π±ΠΈΡ‚Ρ‹ & 0x04 == 0x04:
 GPIO.output (LCD_D6, True)
 Ссли Π±ΠΈΡ‚Ρ‹ & 0x08 == 0x08:
 GPIO.output (LCD_D7, True)

# ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΠΈΠ½-ΠΊΠΎΠ΄ "Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ"
 lcd_toggle_enable ()

def lcd_toggle_enable ():
 врСмя.сон (0,0005)
 GPIO.output (LCD_E, True)
 time.sleep (0,0005)
 GPIO.output (LCD_E, Π›ΠΎΠΆΡŒ)
 time.sleep (0,0005)

def lcd_text (сообщСниС, строка):
 # ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ тСкст для отобраТСния
 message = message.ljust (LCD_CHARS, "")

 lcd_write (строка, LCD_CMD)

 для i в диапазонС (LCD_CHARS):
 lcd_write (ord (сообщСниС [i]), LCD_CHR)


# ΠΠ°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ
ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ:
 Π³Π»Π°Π²Π½Ρ‹ΠΉ()
 
ΠΊΡ€ΠΎΠΌΠ΅ KeyboardInterrupt:
 ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ
 
Π½Π°ΠΊΠΎΠ½Π΅Ρ†:
 lcd_write (0x01, LCD_CMD)
 lcd_text (Β«Π”ΠΎ свидания!Β», LCD_LINE_1)
 lcd_text ("MBTechWorks.com ", LCD_LINE_2)
 GPIO.cleanup ()
 

ΠŸΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ врСмя!

Когда Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Python Π½Π° Raspberry Pi, запуститС ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π’Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π² Π’Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅ (Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅, Π³Π΄Π΅ Π²Ρ‹ помСстили ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Python).

Π‘ΡƒΠ΄ΠΎ ΠŸΠΈΡ‚ΠΎΠ½ lcd1602.py

ΠžΡ‚Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΡΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости для Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ просмотра. Π–Πš-дисплСй Π΄ΠΎΠ»ΠΆΠ΅Π½ цикличСски ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ нСсколько сообщСний, ΠΏΠΎΠΊΠ° Π²Ρ‹ Π½Π΅ Π½Π°ΠΆΠΌΠ΅Ρ‚Π΅ Ctl c.


БопряТСниС Π–Πš-дисплСя 16×2 с Raspberry Pi Pico

врСмя ΠΈΠΌΠΏΠΎΡ€Ρ‚Π°

class LcdApi:

LCD_CLR = 0x01 # DB0: Ρ‡Π΅Ρ‚ΠΊΠΎΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅

LCD_HOME = 0x02 # DB1: Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ Π² исходноС ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅

LCDEENTRY 0x04 # DB2: ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌ Π²Π²ΠΎΠ΄Π°

LCD_ENTRY_INC = 0x02 # —DB1: ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ

LCD_ENTRY_SHIFT = 0x01 # —DB0: сдвиг

LCD_ON_CTRL = 0x08 # DB3: Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ lcd / курсор Π½Π°

LCD_ON_ON_ON_ —DB2: Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ дисплСй

LCD_ON_CURSOR = 0x02 # —DB1: Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ курсор

LCD_ON_BLINK = 0x01 # —DB0: ΠΌΠΈΠ³Π°ΡŽΡ‰ΠΈΠΉ курсор

LCD_MOVE = 0x10 # DB4: ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ курсор / дисплСй

LCD_MOVE_DISP = 0x08 # —DB3: ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ дисплСя (0-> ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ курсора)

LCD_MOVE_RIGHT = 0x04 # —DB2: ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ Π²ΠΏΡ€Π°Π²ΠΎ (0-> Π²Π»Π΅Π²ΠΎ)

LCD_FUNCTION = 0x20 # DB5: Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

LCD_FUNCTION_8BIT = 0x10 # —DB4: установка 8-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ° (0-> 4-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ)

LCD_FUNCTION_2LINES = 0x08 # —DB3: Π΄Π²Π΅ строки (0-> ΠΎΠ΄Π½Π° строка)

LCD_FUNCTION_10DOTS = 0x04 # —DB2: ΡˆΡ€ΠΈΡ„Ρ‚ 5×10 (ΡˆΡ€ΠΈΡ„Ρ‚ 0-> 5×7)

LCD_FUNCTION_RESET = 0x30 # Π‘ΠΌ. Π Π°Π·Π΄Π΅Π» Β«Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΠΎ инструкции»

LCD_CGRAM = 0x40 # DB6: ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ адрСс CG RAM

LCD_DDRAM = 0x80 # DB7: ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ адрСс DD RAM

LCD_RS_CMD = 0

LCD_RS_DATA = 1

LCD_RW_WRITE = 0

LCD_RW11_REW11 def __init __ (self, num_lines, num_columns):

self.num_lines = num_lines

, Ссли self.num_lines> 4:

self.num_lines = 4

self.num_columns = num_columns

if self.num_columns> 40:

self.num_columns = 40

self.cursor_x = 0

self.cursor_y = 0

self.implied_newline = False

self.backlight = True

self.display_off ()

self.backlight_on ()

self.clear ()

self.hal_write_command (self.LCD_ENTRY_MODE | self.LCD_ENTRY_INC)

self.hide_cursor ()

self.display_on ()

def clear (self):

«» «ΠžΡ‡ΠΈΡ‰Π°Π΅Ρ‚ Π–Πš-дисплСй ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ курсор Π² Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ Π»Π΅Π²Ρ‹ΠΉ ΡƒΠ³ΠΎΠ»

.

«» «

self.hal_write_command (self.LCD_CLR)

self.hal_write_command (self.LCD_HOME)

self.cursor_x = 0

self.cursor_y = 0

def show_cursor (self):

«» «Π”Π΅Π»Π°Π΅Ρ‚ курсор Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ.» «»

self.hal_write_command (self.LCD_ON_CTRL | self.LCD_ON_DISPLAY |

self.LCD_ON_CURSOR)

def hide_cursor (self):

«» «Π’Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ скрытиС курсора.» «»

self.hal_write_command (self.LCD_ON_CTRL | self.LCD_ON_DISPLAY)

def blink_cursor_on (self):

«» «Π’ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ курсор ΠΈ заставляСт Π΅Π³ΠΎ ΠΌΠΈΠ³Π°Ρ‚ΡŒ.» «»

self.hal_write_command (self.LCD_ON_CTRL | self.LCD_ON_DISPLAY |

_

self.URL self.LCD_ON_BLINK)

def blink_cursor_off (self):

«» «Π’ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ курсор ΠΈ Π½Π΅ заставляСт Π΅Π³ΠΎ ΠΌΠΈΠ³Π°Ρ‚ΡŒ (Ρ‚. Π΅. Π½Π΅ ΠΌΠΈΠ³Π°Ρ‚ΡŒ).» «»

self.hal_write_command (self.LCD_ON_CTRL | self.LCD_ON_DISPLAY |

self.LCD_ON_CURSOR)

def display_on (self):

«» «Π’ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ (Ρ‚.Π΅. Ρ€Π°Π·Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅) Π–Πš-дисплСя.» «»

self.hal_write_command (self.LCD_ON_CTRL | self.LCD_ON_DISPLAY11)

def display_off (self):

«» «Π’Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ (Ρ‚.Π΅. ΠΎΡ‡ΠΈΡ‰Π°Π΅Ρ‚) Π–Πš-дисплСй.» «»

self.hal_write_command (self.LCD_ON_CTRL)

def backlight_on (self):

«» «Π’ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ подсвСтка Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°.

На самом Π΄Π΅Π»Π΅ это Π½Π΅ Π–Πš-ΠΊΠΎΠΌΠ°Π½Π΄Π°, Π½ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ элСмСнты управлСния подсвСткой

, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ это позволяСт hal ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ.

«» «

self.backlight = True

self.hal_backlight_on ()

def backlight_off (self):

» «» Π’Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ подсвСтку.

На самом Π΄Π΅Π»Π΅ это Π½Π΅ Π–Πš-ΠΊΠΎΠΌΠ°Π½Π΄Π°, Π½ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ элСмСнты управлСния подсвСткой

, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ это позволяСт hal ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ.

«» «

self.backlight = False

self.hal_backlight_off ()

def move_to (self, cursor_x, cursor_y):

» «» ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ курсор Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ. ΠŸΠΎΠ·ΠΈΡ†ΠΈΡ курсора

отсчитываСтся ΠΎΡ‚ нуля (Ρ‚.Π΅. cursor_x == 0 ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ столбСц).

«» «

self.cursor_x = cursor_x

self.cursor_y = cursor_y

addr = cursor_x & 0x3f

if cursor_y & 1:

addr + = 0x40 # Π‘Ρ‚Ρ€ΠΎΠΊΠΈ 1 ΠΈ 3 Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ 0x40

if cursor_y & 2: # Π‘Ρ‚Ρ€ΠΎΠΊΠΈ 2 ΠΈ 3 Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ количСство столбцов

addr + = self.num_columns

self.hal_write_command (self.LCD_DDRAM | addr)

def putchar (self, char):

«» «Π—аписываСт ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ символ Π½Π° Π–Πš-дисплСй Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ курсора

ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ курсор Π½Π° Π½Π° ΠΎΠ΄Π½Ρƒ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ.

«» «

if char == ‘\ n’:

if self.implied_newline:

# self.implied_newline ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΠ»ΠΈΡΡŒ ΠΈΠ·-Π·Π° пСрСноса,

# поэтому, Ссли ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π½ΠΎΠ²ΡƒΡŽ строку ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ послС этого ΠΌΡ‹ Π΅Π³ΠΎ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌ.

ΠΏΡ€ΠΎΠΉΡ‚ΠΈ

else:

self.cursor_x = self.num_columns

else:

self.hal_write_data (ord (char))

self.cursor_x + = 1

if self.cursor_x> = self.num_columns :

self.cursor_x = 0

self.cursor_y + = 1

self.implied_newline = (char! = ‘\ N’)

Ссли self.cursor_y> = self.num_lines:

self.cursor_y = 0

self.move_to (self.cursor_x, self.cursor_y)

def putstr (self, string):

«» «Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ строку Π½Π° Π–Πš-дисплСй Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ курсор

ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ курсор соотвСтствСнно.

«» «

для символа Π² строкС:

self.putchar (char)

def custom_char (self, location, charmap):

» «» Π—Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ символ Π² ΠΎΠ΄Π½ΠΎ ΠΈΠ· 8 ячССк CGRAM, доступных с

ΠΊΠ°ΠΊ ΠΎΡ‚ chr (0) Π΄ΠΎ chr (7).

«» «

располоТСниС & = 0x7

self.hal_write_command (self.LCD_CGRAM | (location << 3))

self.hal_sleep_us (40)

для i в диапазонС (8):

self. hal_write_data (charmap [i])

self.hal_sleep_us (40)

self.move_to (self.cursor_x, self.cursor_y)

def hal_backlight_on (self):

«» «ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΏΠΎΠ²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ слой Hal подсвСтка Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°.

ΠŸΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ класс HAL.

«» «

ΠΏΡ€ΠΎΠΉΡ‚ΠΈ

def hal_backlight_off (self):

» «» ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΡƒΡ€ΠΎΠ²Π½ΡŽ hal ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ подсвСтку.

ΠŸΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ класс HAL.

«» «

ΠΏΡ€ΠΎΠΉΡ‚ΠΈ

def hal_write_command (self, cmd):

» «» Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π½Π° Π–Πš-дисплСй.

ΠžΠΆΠΈΠ΄Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ класс HAL Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ

.

«» «

ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒ NotImplementedError

def hal_write_data (self, data):

» «» Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° Π–Πš-дисплСй.

ΠžΠΆΠΈΠ΄Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ класс HAL Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ

.

«» «

ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒ NotImplementedError

def hal_sleep_us (self, usecs):

» «» Π‘ΠΏΠ°Ρ‚ΡŒ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя (указываСтся Π² микросСкундах).»» «

time.sleep_us (usecs)

Π–Πš-дисплСй Raspberry Pi с ТидкокристалличСским дисплССм 16×2

Π’ этом руководствС я ΠΏΡ€ΠΎΡ…ΠΎΠΆΡƒ шаги ΠΏΠΎ настройкС Π–Πš-дисплСя Raspberry Pi 16×2.

Π­Ρ‚ΠΎΡ‚ дисплСй — ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ способ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ с Pi Π±Π΅Π· нСобходимости ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π΄ΠΎΡ€ΠΎΠ³ΠΎΠΉ ΠΈΠ»ΠΈ слоТной настройки дисплСя.

ДисплСй 16 Γ— 2, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ сСнсорного экрана ΠΈΠ»ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ Π–Πš-экрана, Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для отобраТСния ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΡ… сообщСний ΠΈΠ»ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

Π’Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ это Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Π½ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ слишком большого ΠΈ Π΄ΠΎΡ€ΠΎΠ³ΠΎΠ³ΠΎ.

Π’ этом руководствС Π±ΡƒΠ΄ΡƒΡ‚ рассмотрСны основы настройки экрана, ΠΈ ΠΎΠ½ нСвСроятно ΡƒΠ΄ΠΎΠ±Π΅Π½ для всСх, ΠΊΡ‚ΠΎ ΠΏΠ»ΠΎΡ…ΠΎ Π·Π½Π°ΠΊΠΎΠΌ со схСмотСхникой.