8-900-374-94-44
[email protected]
Slide Image
МСню

Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ tft дисплСй ΠΊ Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ – ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ TFT-дисплСя 1.8 ΠΊ Arduino – RobotChip

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

TFT LCD дисплСй 2.8 дюйма и Arduino||Arduino-diy.com

Вачскрин дисплСй станСт ΡƒΠΊΡ€Π°ΡˆΠ΅Π½ΠΈΠ΅ΠΌ для любого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° Arduino.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим touchscreen display shield со встроСнным слотом для microSD ΠΊΠ°Ρ€Ρ‚Ρ‹. TFT дисплСй ΠΈΠΌΠ΅Π΅Ρ‚ диагональ 2.8″, подсвСтку, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ 4 Π±Π΅Π»Ρ‹Ρ… свСтодиода, ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ отобраТСния 262000 ΠΎΡ‚Ρ‚Π΅Π½ΠΊΠΎΠ² Ρ†Π²Π΅Ρ‚ΠΎΠ² (18 Π±ΠΈΡ‚)! ДисплСй ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ 240Ρ…320 пиксСлСй с ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ это Π³ΠΎΡ€Π°Π·Π΄ΠΎ большС, Ρ‡Π΅ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρƒ Ρ‡Π΅Ρ€Π½ΠΎ-Π±Π΅Π»ΠΎΠ³ΠΎ LCD дисплСя 5110. На шилдС встроСн рСзистивный тачскрин, Ρ‡Ρ‚ΠΎ позволяСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ΡŒ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ°Π»ΡŒΡ†Π° ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° экран.

ΠžΠ±Ρ‰Π°Ρ информация ΠΈ тСхничСскыС характСристики TFT LCD шилда 2.8″

TFT shield продаСтся Π² ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ собранном Π²ΠΈΠ΄Π΅, Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊ запуску. Достаточно Π΅Π³ΠΎ просто ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ свСрху Π½Π° Π²Π°ΡˆΡƒ Arduino ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Π² Arduino IDE. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° установки-Π½Π°Π»Π°Π΄ΠΊΠΈ-ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ заруска Π·Π°ΠΉΠΌΠ΅Ρ‚ Π½Π΅ большС 10 ΠΌΠΈΠ½ΡƒΡ‚!

На TFT шилдС Π΅ΡΡ‚ΡŒ встроСнный ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ с Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ RAM. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ пСрСдаСтся ΠΈΠΌΠ½Π½ΠΎ ΡˆΠΈΠ»Π΄Ρƒ, Π° Π½Π΅ грузят ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π½Π° Arduino. Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ шилда TFT дисплСя достаточно нСсколько ΠΏΠΈΠ½ΠΎΠ²: 12 ΠΏΠΈΠ½ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° дисплСй, 13 — Π·Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ SD ΠΊΠ°Ρ€Ρ‚Ρ‹, Ссли Π²Ρ‹ Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅.

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ Π½Π΅ оставили нас Π½Π°Π΅Π΄ΠΈΠ½Π΅ с Π΄Π°Ρ‚Π°ΡˆΠΈΡ‚ΠΎΠΌ ΠΈ ΠΏΠΎΠΆΠ΅Π»Π°Π½ΠΈΠ΅ΠΌ «Π£Π΄Π°Ρ‡ΠΈ!». Π•ΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡Π°Ρ‚ Π²Π°ΡˆΡƒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с TFT шилдом.

Π•ΡΡ‚ΡŒ отличная open-source графичСская Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, которая Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ пиксСли, Π»ΠΈΠ½ΠΈΠΈ, ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ, окруТности ΠΈ тСкст: Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π½Π° Github.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, написана Ρ‚Π°Ρ‡-скрин Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°: Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π½Π° Github, которая опрСдСляСт ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ x, y ΠΈ z (Π΄Π°Π²Π»Π΅Π½ΠΈΠ΅), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ скСтча для дСмонстрации ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… возмоТностСй. Π”Π°Π½Π½Ρ‹ΠΉ скСтч написандля Arduino, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ²!

ВСхничСскиС характСристики TFT дисплСя:

  • Π”ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒ LCD TFT дисплСя составляСт 2.8″
  • Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ 240×320 пиксСлСй, 18-bit (262000) цвСтовая Π³Π°ΠΌΠΌΠ°
  • ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ILI9325 ΠΈΠ»ΠΈ ILI9328 со встроСнным Π±ΡƒΡ„Π΅Ρ€ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти
  • Π¦ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ интСрфСйс Π½Π° 8 Π±ΠΈΡ‚, плюс 4 Π»ΠΈΠ½Π΅ΠΉΠΊΠΈ управлСния
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ ΠΏΠΈΠ½Ρ‹ 5-13 ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Π΅ 0-3. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ ΠΏΠΈΠ½Ρ‹ 2, 3 ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Π΅ 4 ΠΈ 5. Пин 12 Ρ‚ΠΎΠΆΠ΅ доступСн, Ссли Π²Ρ‹ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ microSD ΠΊΠ°Ρ€Ρ‚Ρƒ
  • БовмСстим с любой ΠΏΠ»Π°Ρ‚ΠΎΠΉ Arduino ‘328 ΠΈΠ»ΠΈ Mega
  • БовмСстим с 5Π’! ΠœΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΈΠΊΠΈ 3.3 Π’ ΠΈ 5 Π’
  • Π•ΡΡ‚ΡŒ встроСнный LDO рСгулятор 3.3 Π’ @ 300 мА LDO regulator
  • ΠŸΠΎΠ΄ΡΠ²Π΅Ρ‚ΠΊΠ° ΠΈΠ· 4 Π±Π΅Π»Ρ‹Ρ… свСтодиодов. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°. Для управлСния ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ транзистор ΠΊ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌΡƒ ΠΏΠΈΠ½Ρƒ с подсвСткой
  • 4-Ρ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠΎΠ²Ρ‹ΠΉ рСзистивный сСнсорный экран

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹

Π― ознакомился с Π΄Π°Ρ‚Π°ΡˆΠΈΡ‚ΠΎΠΌ ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ», Ρ‡Ρ‚ΠΎ доступСн SPI интСрфСйс. ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΉ интСрфСйс? SPI вСдь Π»ΡƒΡ‡ΡˆΠ΅, Π±ΡƒΠ΄Π΅Ρ‚ задСйствовано мСньшС ΠΏΠΈΠ½ΠΎΠ²!

Π”Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π½Π° дисплСС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ SPI, Π½ΠΎ дисплССв, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅Π³ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅Ρ‚. На тачскрин шилдС ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠΈΠ½Ρ‹ просто Π½Π΅ Π²Ρ‹Π²Π΅Π΄Π΅Π½Ρ‹ Π² качСствС ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ². Π‘ΠΊΠΎΡ€Π΅Π΅ всСго это связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΏΠΎ SPI Π±Ρ‹Π»Π° Π±Ρ‹ ΠΎΡ‡Π΅Π½ΡŒ мСдлСнная.

ЗадСйствованы всС ΠΏΠΈΠ½Ρ‹! Как я ΠΌΠΎΠ³Ρƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΊ Arduino?

МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ protoshield ΠΈΠ»ΠΈ proto-screwshield. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ i2c Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Π΅ сСнсоры ΠΊ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΌ ΠΏΠΈΠ½Π°ΠΌ 4 ΠΈ 5. МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ i2c ΠΏΠ»Π°Ρ‚Ρƒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ большС ΠΏΠΈΠ½ΠΎΠ². Если ΠΆΠ΅ ΠΏΠΈΠ½ΠΎΠ² Π½Π°Π΄ΠΎ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ 8 ΠΏΠΈΠ½ΠΎΠ² для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠΊΠ° TFT Π½Π΅ записываСт Π΄Π°Π½Π½Ρ‹Π΅. Π­Ρ‚ΠΎ ΠΏΠΈΠ½Ρ‹ high-z ΠΈ ΠΎΠ½ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ, ΠΏΠΎΠΊΠ° ΠΏΠΈΠ½Ρ‹ WR ΠΈ RD находятся Π² состоянии high.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ TFT LCD экрана ΠΊ Arduino

TFT шилд 2.8 дюйма поставляСтся ΠΎΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ (Π΄Π°ΠΆΠ΅ ΠΈΠ· дСшСвого ΠšΠΈΡ‚Π°Ρ) Π² собранном Π²ΠΈΠ΄Π΅. Для использования достаточно просто ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ свСрху Π½Π° Arduino. Никаких Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ², Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠΊ!

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° LCD

Adafruit Π² своС врСмя ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ с ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ скСтча для использования с этими TFT дисплСями. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π°, ΠΎΡ‚Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π½Π΅ Π½Π° максимальной скорости, Π½ΠΎ для знакомства с сСнсорным дисплССм Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована ΠΈ для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ². Как Π±Ρ‹ Ρ‚ΠΎ Π½ΠΈ Π±Ρ‹Π»ΠΎ, сСйчас нас интСрСсуСт ΠΈΠΌΠ΅Π½Π½ΠΎ Arduino.

По ссылкС Π²Ρ‹ смоТСтС ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π°Ρ€Ρ…ΠΈΠ² с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ. РаспакуйтС скачанный Π°Ρ€Ρ…ΠΈΠ² ΠΈ Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Π² Arduino IDE.

Π’Π°ΠΌ понадобится GFX graphics core. ΠŸΠΎΡΡ‚ΡƒΠΌΠ°Π΅ΠΌ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ. РаспаковываСм, ΠΏΠ΅Ρ€Π΅ΠΊΠΈΠ΄Ρ‹Π²Π°Π΅ΠΌ Π² ΠΏΠ°ΠΏΠΊΡƒ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ для Arduino IDE.

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ шилд ΠΎΡ‚ Adafruit, Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ нюанс! ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» TFTLCD.h Π² ΠΏΠ°ΠΏΠΊΠ΅ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ ΠΈ раскоммСнтируйтС строку, которая находится свСрху:

//comment or uncomment the next line for special pinout!

#define USE_ADAFRUIT_SHIELD_PINOUT

ΠŸΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Arduino IDE. ПослС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ нСсколько графичСских ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ².

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° GFX Library ΠΎΡ‚ Adafruit

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° TFT LCD library основана Π½Π° графичСской Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Adaftui GFX graphics. Π’ GFX Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для основы вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ пиксСли, Π»ΠΈΠ½ΠΈΠΈ, ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ, окруТности, скруглСнныС ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ, Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ тСкста, ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚. Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ ссылкС.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ рисования Π½Π° сСнсорном дисплСС

Π”Π°Π½Π½Ρ‹ΠΉ LCD TFT шилд ΠΈΠΌΠ΅Π΅Ρ‚ встроСнный 2.8″ 4-Ρ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠΎΠ²Ρ‹ΠΉ рСзистивный дисплСй. Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для опрСдСлСния мСста ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° ΠΏΠ°Π»ΡŒΡ†Π°, стилуса ΠΈ Ρ‚.ΠΏ. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с сСнсорным дисплССм Π²Π°ΠΌ понадобится 4 ΠΏΠΈΠ½Π° Π½Π° Arduino.

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ здСсь: Github repository. НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ скачанный Ρ„Π°ΠΉΠ» ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² ΠΏΠ°ΠΏΠΊΡƒ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ Arduino IDE.

БСнсорный дисплСй ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Arduino слСдущим ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

  • Y+ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌΡƒ ΠΏΠΈΠ½Ρƒ 1
  • Y- ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌΡƒ ΠΏΠΈΠ½Ρƒ 7
  • X+ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌΡƒ ΠΏΠΈΠ½Ρƒ 6
  • X- ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌΡƒ ΠΏΠΈΠ½Ρƒ 2

ПослС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ tftpaint_shield, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ находится Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ TFTLCD library. Π‘ ΠΏΡ€Π°Π²ΠΎΠΉ стороны Π½Π° экранС появятся ‘боксы с Ρ†Π²Π΅Ρ‚Π°ΠΌΠΈ’. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· боксов для Π²Ρ‹Π±ΠΎΡ€Π° Ρ†Π²Π΅Ρ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ. НаТав Π½Π° Π»Π΅Π²ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ экрана Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΅Π³ΠΎ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ.

БСнсорный дисплСй сдСлан ΠΈΠ· Ρ‚ΠΎΠ½ΠΊΠΎΠ³ΠΎ стСкла. Он ΠΎΡ‡Π΅Π½ΡŒ Ρ…Ρ€ΡƒΠΏΠΊΠΈΠΉ. МалСйшая Ρ‚Ρ€Π΅Ρ‰ΠΈΠ½Π° ΠΈΠ»ΠΈ ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π΅Π³ΠΎ ΠΈΠ· строя. Π‘ΡƒΠ΄ΡŒΡ‚Π΅ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½Ρ‹ ΠΏΡ€ΠΈ пСрСносС дисплСя, особСнно с Π΅Π³ΠΎ ΡƒΠ³Π»Π°ΠΌΠΈ. Для взаимодСйствия с рСзистивным экраном ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ°Π»ΡŒΡ†Ρ‹, Π½ΠΎ ΠΈ стилусы. ΠŸΠΎΠ½ΡΡ‚Π½ΠΎΠ΅ Π΄Π΅Π»ΠΎ, слишком сильно Π΄Π°Π²ΠΈΡ‚ΡŒ Π½Π° ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ дисплСя Ρ‚ΠΎΠΆΠ΅ Π½Π΅ стоит.

Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° рисунков

На TFT LCD дисплСС 2.8″ дюйма Π΅ΡΡ‚ΡŒ встроСнный слот для micoSD ΠΊΠ°Ρ€Ρ‚Ρ‹. Π­Ρ‚ΠΎΡ‚ слот ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ! ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΊΠ°Ρ€Ρ‚Ρƒ Π² FAT32 ΠΈΠ»ΠΈ FAT16 ( Π±ΠΎΠ»Π΅Π΅ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ особСнности Ρ€Π°Π±ΠΎΡ‚Ρ‹ SD ΠΊΠ°Ρ€Ρ‚Ρ‹ с Arduino ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Ρ‹ здСсь).

Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ скСтчСй-ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² SD ΠΊΠ°Ρ€Ρ‚Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. НСобходимо Π΅Π΅ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

Для увСличСния скорости ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ здСсь: Fixes & Updates to the Arduino SD Library. НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°ΡΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ Π² Arduino IDE.

Если Π²Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ΡΡŒ Arduino Mega, внСситС Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΊΠΈ Π² Ρ„Π°ΠΉΠ» SD/utility/Sd2Card.h. Надо ΡΠ½ΡΡ‚ΡŒ Ρ‚Π΅Π³ коммСнтария со строки #define MEGA_SOFT_SPI 1. Благодаря этому для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с SD ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ, Arduino Mega смоТСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π΅ ΠΆΠ΅ ΠΏΠΈΠ½Ρ‹, Ρ‡Ρ‚ΠΎ ΠΈ классичСскиС Arduino. Для тСстировки ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ это ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ‚ΠΈΠ³Ρ€Π°: Download this tiger bitmap and save it to the microsd card!

ЗапуститС Arduino IDE ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ скСтч tftbmp_shield. Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Π΅Π³ΠΎ Π½Π° Arduino ΠΈ вуаля! На экранС отобразится ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡƒΡ‚ изобраТСния, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… мСньшС 240Ρ…320 пиксСлСй. Рисунки Π½Π°Π΄ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Π² 24-Π±ΠΈΡ‚Π½ΠΎΠΌ BMP Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. Π”Π°ΠΆΠ΅ Ссли ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ рисунок Π½Π΅ ΠΈΠΌΠ΅Π» 24 Π±ΠΈΡ‚Π°, пСрСсохранитС Π΅Π³ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это самый Π»Π΅Π³ΠΊΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ для чтСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Arduino. МоТно ΠΏΠΎΠ²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ рисунки с использованиСм ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ setRotation().

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ подсвСткой

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ шилда ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ постоянно Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ подсвСтку. Однако Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π΅Π΅ ΡΡ€ΠΊΠΎΡΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ШИМ Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠ² ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ для экономии энСргии. Для этого Π²Π°ΠΌ понадобится Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚Ρ€ΡƒΠ΄ΠΈΡ‚ΡŒΡΡ. НайдитС Π½Π° Π·Π°Π΄Π½Π΅ΠΉ сторонС TFT LCD шилда 2.8″ Π΄Π²Π° ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€Π° подсвСтки. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½ΠΎΠΆΠ° ΡƒΠ±Π΅Ρ€ΠΈΡ‚Π΅ Π΄ΠΎΡ€ΠΎΠΆΠΊΡƒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»Π΅ΠΌΠ°ΠΌΠΈ VCC ΠΈ соСдинитС Π΄Π²Π° ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π°, ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… Pin3. ПослС этого Π²Ρ‹ смоТСтС ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ подсвСткой с использованиСм Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΈΠ½Π° 3.

ΠžΡΡ‚Π°Π²Π»ΡΠΉΡ‚Π΅ Π’Π°ΡˆΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, вопросы ΠΈ Π΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ Π½ΠΈΠΆΠ΅. Π’ дискуссии часто Ρ€ΠΎΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π½ΠΎΠ²Ρ‹Π΅ ΠΈΠ΄Π΅ΠΈ ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹!

arduino-diy.com

Π¦Π²Π΅Ρ‚Π½ΠΎΠΉ графичСский TFT-экран 240Γ—320 [АмпСрка / Π’ΠΈΠΊΠΈ]

Π’ΠΈΠ΄Π΅ΠΎΠΎΠ±Π·ΠΎΡ€

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈ настройка

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! ДисплСй Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΡ‚ источника питания 5 Π²ΠΎΠ»ΡŒΡ‚, Π° Ρ€Π°Π±ΠΎΡ‚Π° Π»ΠΎΠ³ΠΈΠΊΠΈ β€” 3,3 Π²ΠΎΠ»ΡŒΡ‚Π°. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Arduino c 5-Π²ΠΎΠ»ΡŒΡ‚ΠΎΠ²ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ, Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΠΉΡ‚Π΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ ΠΏΠΈΠ½Ρ‹ дисплСя ΠΊ Arduino Ρ‡Π΅Ρ€Π΅Π· рСзистивныС Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС TFT-экран ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΉΡ‚ΠΈ ΠΈΠ· строя. Для ΠΏΠ»Π°Ρ‚ с 3,3 Π²ΠΎΠ»ΡŒΡ‚ΠΎΠ²ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ рСзистивныС Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹.

Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ Arduino Uno. ΠžΠ±Ρ‰Π΅Π½ΠΈΠ΅ с TFT-экраном происходит Ρ‡Π΅Ρ€Π΅Π· ΡˆΠΈΠ½Ρƒ SPI. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ ΠΏΠΈΠ½Ρ‹ ΠΊ Arduino Ρ‡Π΅Ρ€Π΅Π· Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ напряТСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΡ‚ΡŒ дисплСй. Π ΡƒΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΡƒΠΉΡ‚Π΅ΡΡŒ схСмой Π½ΠΈΠΆΠ΅: Для облСгчСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ с TFT-экраном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ UTFT, которая Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊΠ°ΠΊ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°ΠΌΠΈ, основанными Π½Π° AVR-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅, Ρ‚Π°ΠΊ ΠΈ с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°ΠΌΠΈ Π½Π° ARM-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅.

Π Π°Π±ΠΎΡ‚Π° с дисплССм

Π’Ρ‹Π²ΠΎΠ΄ тСкста

ΠŸΡ€ΠΎΡˆΠ΅ΠΉΡ‚Π΅ Arduino скСтчСм ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½Ρ‹ΠΌ Π½ΠΈΠΆΠ΅. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π½Π° экранС Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ надпись Β«HelloWorldΒ».

240x320_text_1.ino
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΈΠ½ΠΎΠ²
// ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π»ΠΈΠ½ΠΈΠΈ SCK, SDI (MOSI), D/C, RESET, CS
UTFT myGLCD(TFT01_22SP, 9, 8, 12, 11, 10);
// объявлСния встроСнного ΡˆΡ€ΠΈΡ„Ρ‚Π°
extern uint8_t BigFont[];
Β 
void setup()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй
  myGLCD.InitLCD();
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Ρ‚ΠΈΠΏ ΡˆΡ€ΠΈΡ„Ρ‚Π°
  myGLCD.setFont(BigFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ Β«Hello, world!Β» Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ строки дисплСя
  myGLCD.print("Hello, world!", CENTER, 0);
}
void loop()
{
}

ΠœΠ΅Ρ‚ΠΎΠ΄ InitLCD – ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ дисплСй ΠΈ Π·Π°Π΄Π°Π΅Ρ‚ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ»ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ. Π’ качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° указываСтся ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ. Π‘ΡƒΠ΄ΡƒΡ‡ΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π±Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Π° устанавливаСт Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ. Если ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ PORTRAIT ΠΈΠ»ΠΈ 0 – Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Π½Π° Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°Ρ ориСнтация, Ссли ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ LANDSCAPE ΠΈΠ»ΠΈ 1 – Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Π°Ρ.

ΠœΠ΅Ρ‚ΠΎΠ΄ clrScr – ΠΎΡ‡ΠΈΡ‰Π°Π΅Ρ‚ дисплСй, стирая всю ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡƒΡŽ Π½Π° дисплСС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈ Π·Π°Π»ΠΈΠ²Π°Π΅Ρ‚ Π΅Π³ΠΎ Ρ‡Π΅Ρ€Π½Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚.

ΠœΠ΅Ρ‚ΠΎΠ΄ print – Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° дисплСй тСкст, содСрТимоС символьной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ‚ΠΈΠΏΠ° String. Π’ качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ тСкст, ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° области ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ. Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Π²Ρ‹Π²ΠΎΠ΄Π° тСкстовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ X ΠΈ Y Π·Π°Π΄Π°ΡŽΡ‚ΡΡ Π² пиксСлях ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ‹ ΠΊΠ°ΠΊ явно, Ρ‚Π°ΠΊ ΠΈ Ρ‡Π΅Ρ€Π΅Π· цСлочислСнныС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ выраТСния. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚Ρ€ΠΈ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ для использования Π² качСствС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ X:

  • LEFT – тСкст выравниваСтся ΠΏΠΎ Π»Π΅Π²ΠΎΠΉ Π³Ρ€Π°Π½ΠΈΡ†Π΅ дисплСя

  • CENTER – тСкст выравниваСтся ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ дисплСя

  • RIGHT – тСкст выравниваСтся ΠΏΠΎ ΠΏΡ€Π°Π²ΠΎΠΉ Π³Ρ€Π°Π½ΠΈΡ†Π΅ дисплСя

ВстроСнныС ΡˆΡ€ΠΈΡ„Ρ‚Ρ‹

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° UTFT позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹ΠΌΠΈ ΡˆΡ€ΠΈΡ„Ρ‚Π°ΠΌΠΈ. Π¨Ρ€ΠΈΡ„Ρ‚Ρ‹ хранятся Π² Π²ΠΈΠ΄Π΅ массивов Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ ΠΊ тСксту ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π˜ΡΡ…ΠΎΠ΄Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ 3 ΡˆΡ€ΠΈΡ„Ρ‚Π°.

  • SmallFont – 95 символов 8Γ—12

  • BigFont – 95 символов 16Γ—16

  • SevenSegNumFont – 10 Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… символов 32Γ—50

Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ тСкст с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΡˆΡ€ΠΈΡ„Ρ‚Π°ΠΌΠΈ ΠΈ измСняСм ΠΈΡ… ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ Π½Π° дисплСС:

240x320_text_2.ino
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
Β 
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΈΠ½ΠΎΠ²
// ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π»ΠΈΠ½ΠΈΠΈ SCK, SDI (MOSI), D/C, RESET, CS
UTFT myGLCD(TFT01_22SP, 9, 8, 12, 11, 10);
Β 
// объявлСния встроСнных ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ²
extern uint8_t SmallFont[];
extern uint8_t BigFont[];
extern uint8_t SevenSegNumFont[];
Β 
void setup()
{
}
Β 
void loop()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD(0);
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(BigFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ строки дисплСя
  myGLCD.print("TFT01_22SP", CENTER, 0);
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(SmallFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("Hello from Amperka!", CENTER, 50);
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ сСмисСгмСнтный ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(SevenSegNumFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("12345", CENTER, 100);
  // ΠΆΠ΄Ρ‘ΠΌ 1 сСкунду
  delay(1000);
Β 
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD(1);
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(BigFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ строки дисплСя
  myGLCD.print("Hello, user!", CENTER, 0);
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(SmallFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("The screen is 2.2 diagonal", CENTER, 50);
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ сСмисСгмСнтный ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(SevenSegNumFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("67890", CENTER, 100);
  // ΠΆΠ΄Ρ‘ΠΌ 1 сСкунду
  delay(1000);
}
БистСма кодирования Ρ†Π²Π΅Ρ‚ΠΎΠ²

Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Π·Π° Ρ†Π²Π΅Ρ‚Π½ΠΎΡΡ‚ΡŒ, Π΅ΡΡ‚ΡŒ Ρ‚Ρ€ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°: R, G, B. ДопустимыС значСния для ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² – ΠΎΡ‚ 0 Π΄ΠΎ 255. Π—Π°Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ†Π²Π΅Ρ‚Π° Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹:

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ†Π²Π΅Ρ‚Π° Π¦Π²Π΅Ρ‚
VGA_SILVER сСрСбряный
VGA_GRAY сСрый
VGA_WHITE Π±Π΅Π»Ρ‹ΠΉ
VGA_MAROON красно-ΠΊΠΎΡ€ΠΈΡ‡Π½Π΅Π²Ρ‹ΠΉ
VGA_RED красный
VGA_PURPLE ΠΏΡƒΡ€ΠΏΡƒΡ€Π½Ρ‹ΠΉ
VGA_FUCHSIA фуксия
VGA_GREEN Π·Π΅Π»Π΅Π½Ρ‹ΠΉ
VGA_LIME Π»Π°ΠΉΠΌ
VGA_NAVY Ρ‚Π΅ΠΌΠ½ΠΎ-синий
VGA_BLUE синий
VGA_TEAL синС-Π·Π΅Π»Π΅Π½Ρ‹ΠΉ
VGA_AQUA морская Π²ΠΎΠ»Π½Π°

Π”ΠΎΠ±Π°Π²ΠΈΠΌ красок Π² строку Β«HelloWorldΒ» ΠΈ Π²Ρ‹Π²Π΅Π΄Π΅ΠΌ нСсколько Ρ†Π²Π΅Ρ‚ΠΎΠ²Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ².

240x320_color_text.ino
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΈΠ½ΠΎΠ²
// ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π»ΠΈΠ½ΠΈΠΈ SCK, SDI (MOSI), D/C, RESET, CS
UTFT myGLCD(TFT01_22SP, 9, 8, 12, 11, 10);
// объявлСния встроСнного ΡˆΡ€ΠΈΡ„Ρ‚Π°
extern uint8_t BigFont[];
void setup()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD(0);
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(BigFont);
  // устанавливаСм красный Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(VGA_RED);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("Hello, World!", CENTER, 0);
  // устанавливаСм синий Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(VGA_BLUE);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("Hello, World!", CENTER, 36);
  // устанавливаСм Π·Π΅Π»Ρ‘Π½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(VGA_GREEN);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("Hello, World!", CENTER, 72);
  // устанавливаСм сСрСбряный Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(VGA_SILVER);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("Hello, World!", CENTER, 108);
}
void loop()
{
}
ΠŸΠΎΠ²ΠΎΡ€ΠΎΡ‚ строки

ΠžΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° print позволяСт ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ строки ΠΏΠΎΠ΄ ΡƒΠ³Π»ΠΎΠΌ ΠΎΡ‚ 0 Π΄ΠΎ 359 градусов. Π’Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ задаСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ (Π»Π΅Π²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΡƒΠ³ΠΎΠ»). НулСвоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡƒΠ³Π»Π° ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ, Π΄Π°Π»Π΅Π΅, ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ увСличСния ΡƒΠ³Π»Π°, происходит Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ тСкста ΠΏΠΎ часовой стрСлкС Π½Π° Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΡƒΠ³ΠΎΠ». ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ графичСский эффСкт:

240x320_rotate_text.ino
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
Β 
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΈΠ½ΠΎΠ²
// ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π»ΠΈΠ½ΠΈΠΈ SCK, SDI (MOSI), D/C, RESET, CS
UTFT myGLCD(TFT01_22SP, 9, 8, 12, 11, 10);
Β 
// объявлСния встроСнного ΡˆΡ€ΠΈΡ„Ρ‚Π°
extern uint8_t BigFont[];
Β 
void setup()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD(0);
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(BigFont);
  // устанавливаСм Π·Π΅Π»Ρ‘Π½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(VGA_GREEN);
}
void loop()
{
  // ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку с ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π°ΠΌ Π½Π° 20 градусов
  for (int deg = 0; deg < 360; deg += 20) {
    String text = "Amperka";
    myGLCD.print(text, 120, 160, deg);
  }
}

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ Π²Ρ‹Ρ…ΠΎΠ΄ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ дисплСя. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Π·Π° максимальной Π΄Π»ΠΈΠ½ΠΎΠΉ строки придСтся ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. Если строка окаТСтся слишком Π΄Π»ΠΈΠ½Π½ΠΎΠΉ, Π΅Ρ‘ «хвост» Π±ΡƒΠ΄Π΅Ρ‚ выводится ΠΏΠΎΠ²Π΅Ρ€Ρ… ΡƒΠΆΠ΅ Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π½Π½ΠΎΠ³ΠΎ тСкста.

Π’Ρ‹Π²ΠΎΠ΄ гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ Π²Ρ‹Π²ΠΎΠ΄ гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ UTFT, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΠΎΠΏΠΈΠΊΡΠ΅Π»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄, массив 240×320 Ρ‚ΠΎΡ‡Π΅ΠΊ.

ΠœΠ΅Ρ‚ΠΎΠ΄ ОписаниС ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹
drawPixel(x, y) Π’Ρ‹Π²ΠΎΠ΄ пиксСля x, y ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° пиксСля
drawLine(x1,Β y1Β ,x2Β ,y2) Π’Ρ‹Π²ΠΎΠ΄ Π»ΠΈΠ½ΠΈΠΈ x1, y1 ΠΈ x2, y2 ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ Π»ΠΈΠ½ΠΈΠΈ
drawRect(x1,Β y1Β ,x2Β ,y2) Π’Ρ‹Π²ΠΎΠ΄ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° x1, y1 ΠΈ x2, y2 ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π΄Π²ΡƒΡ… ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½Ρ‹Ρ… ΡƒΠ³Π»ΠΎΠ²
drawFillRect(x1,Β y1Β ,x2Β ,y2) Π’Ρ‹Π²ΠΎΠ΄ Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° x1, y1 ΠΈ x2, y2 ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π΄Π²ΡƒΡ… ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½Ρ‹Ρ… ΡƒΠ³Π»ΠΎΠ²
drawCircle(x, y, r) Π’Ρ‹Π²ΠΎΠ΄ окруТности x, y ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Ρ†Π΅Π½Ρ‚Ρ€Π° окруТности, r радиус
drawfillCircle(x, y, r) Π’Ρ‹Π²ΠΎΠ΄ Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π½ΠΎΠΉ окруТности x, y ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Ρ†Π΅Π½Ρ‚Ρ€Π° окруТности, r радиус

Π’Ρ‹Π²Π΅Π΄Π΅ΠΌ ΠΈΡ… Π½Π° экран.

240x320_figure.ino
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
Β 
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΈΠ½ΠΎΠ²
// ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π»ΠΈΠ½ΠΈΠΈ SCK, SDI (MOSI), D/C, RESET, CS
UTFT myGLCD(TFT01_22SP, 9, 8, 12, 11, 10);
Β 
void setup()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD(0);
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
}
Β 
void loop()
{
  // устанавливаСм Ρ‡Ρ‘Ρ€Π½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(0, 0, 0);
  // Π²Ρ‹Π²ΠΎΠ΄ Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°
  myGLCD.fillRect(1, 1, 240, 320);
Β 
  // Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ 5 ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠ² Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Ρ†Π²Π΅Ρ‚Π°ΠΌΠΈ
  for (int i = 1; i < 6; i++) {
    switch (i) {
      case 1:
        myGLCD.setColor(255, 0, 255);
        break;
      case 2:
        myGLCD.setColor(255, 0, 0);
        break;
      case 3:
        myGLCD.setColor(0, 255, 0);
        break;
      case 4:
        myGLCD.setColor(0, 0, 255);
        break;
      case 5:
        myGLCD.setColor(255, 255, 0);
        break;
    }
    myGLCD.fillRect(40+(i*20), 30+(i*20), 100+(i*20), 90+(i*20));
  }
  delay(2000);
Β 
  // устанавливаСм Ρ‡Ρ‘Ρ€Π½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(0, 0, 0);
  // Π²Ρ‹Π²ΠΎΠ΄ Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°
  myGLCD.fillRect(1, 1, 240, 320);
Β 
  // Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ 5 ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠ² Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Ρ†Π²Π΅Ρ‚Π°ΠΌΠΈ
  for (int i = 1; i < 6; i++) {
    switch (i) {
      case 1:
        myGLCD.setColor(255, 0, 255);
        break;
      case 2:
        myGLCD.setColor(255, 0, 0);
        break;
      case 3:
        myGLCD.setColor(0, 255, 0);
        break;
      case 4:
        myGLCD.setColor(0, 0, 255);
        break;
      case 5:
        myGLCD.setColor(255, 255, 0);
        break;
    }
    myGLCD.fillCircle(170-(i*20), 60+(i*20), 30);
  }
  delay(2000);
}

ΠœΡ‹ рассмотрСли ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ рисования графичСских ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ². ΠšΡΡ‚Π°Ρ‚ΠΈ, для Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ UTFT сущСствуСт Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ UTFT_Geometry, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ позволяСт Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° дисплСй Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ (ΠΊΠΎΠ½Ρ‚ΡƒΡ€Π½Ρ‹Π΅ ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Π΅), Π΄ΡƒΠ³ΠΈ окруТностСй ΠΈ сСктора ΠΊΡ€ΡƒΠ³ΠΎΠ².

Π’Ρ‹Π²ΠΎΠ΄ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ

ΠœΠ΅Ρ‚ΠΎΠ΄ drawBitmap позволяСт Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° дисплСй ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ΅ растровоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π’ качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π·Π°Π΄Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° изобраТСния, Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΈ имя массива, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ хранится Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. ΠžΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ scale позволяСт ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ изобраТСния ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ Π½Π° дисплСй.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ для Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° дисплСй. Нам ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ графичСский Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ GIMP ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° ImageConverter565, которая поставляСтся вмСстС с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ ΠΈ располагаСтся Π² ΠΏΠ°ΠΏΠΊΠ΅ Tools.

  • Π’ графичСском Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ GIMP ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π½Π° дисплСС.

  • ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠΉΡ‚Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π΄ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² дисплСя, Π½Π΅ большС Ρ‡Π΅ΠΌ 240×320. Π‘ΠΎΠ²Π΅Ρ‚ΡƒΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, Π²Ρ‚ΠΎΡ€ΠΎΠΉ автоматичСски откалибруСтся сам. Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΏΠΎΡ€Ρ†ΠΈΠΈ изобраТСния.

  • Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ холста 240×320. Если всё сдСлано ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ холста.

  • Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ .jpeg ΠΈ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ImageConverter565.

  • Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 240×320 пиксСлСй Π·Π°ΠΉΠΌΠ΅Ρ‚ Π½Π΅ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ мСста Π² памяти ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, поэтому ΠΌΡ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΠΌ Π΅Π³ΠΎ Π² 2 Ρ€Π°Π·Π° (120×160 пиксСлСй) ΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. Для этого установитС Ρ„Π»Π°Π³ Β«Reduce size toΒ» ΠΈ Π·Π°Π΄Π°ΠΉΡ‚Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ (120×160).

  • Π’ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ Β«Save AsΒ» Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ Β«.cΒ»

  • Для AVR-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Π² ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ Β«Target BoardΒ» Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ Β«AVRΒ», для ARM-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ β€” Β«ARM/PIC32Β»

  • Π’ ΠΏΠΎΠ»Π΅ Β«Array NameΒ» Π·Π°Π΄Π°ΠΉΡ‚Π΅ имя ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Β«SaveΒ».

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€Π° Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ Β«.cΒ», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ информация ΠΎ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ ΠΈ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ этот Ρ„Π°ΠΉΠ» Π² ΠΏΠ°ΠΏΠΊΡƒ Π’Π°ΡˆΠ΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ массив ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ спСцификатора extern Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΌΡ‹ это Π΄Π΅Π»Π°Π»ΠΈ для ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ². Волько Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобках ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ массива Π² 16-Ρ€ΠΈΡ‡Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ находится Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ элСмСнтС массива, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Π² ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ конвСртирования Ρ„Π°ΠΉΠ» Π² любом тСкстовом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅. НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ послС копирования ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ массива Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΈ снова ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΡ€ΠΈ этом Ρ„Π°ΠΉΠ» массива откроСтся Π½Π° сосСднСй Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ рядом с тСкстом ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹Π²Π΅Π΄Π΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° дисплСй:

240x320_Bitmap.ino
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
Β 
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΈΠ½ΠΎΠ²
// ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π»ΠΈΠ½ΠΈΠΈ SCK, SDI (MOSI), D/C, RESET, CS
UTFT myGLCD(TFT01_22SP, 9, 8, 12, 11, 10);
Β 
// объявлСния встроСнного ΡˆΡ€ΠΈΡ„Ρ‚Π°
extern uint8_t BigFont[];
Β 
// объявлСния Π΄Π²ΡƒΡ… массив ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ
extern unsigned int amperka[0x400];
extern unsigned int raspberry[0x400];
Β 
void setup()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD();
}
Β 
void loop()
{
  // Π·Π°ΠΊΡ€Π°ΡˆΠΈΠ²Π°Π΅ΠΌ дисплСй Π±Π΅Π»Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ
  myGLCD.fillScr(255, 255, 255);
  int x = 0;
  for (int s = 0; s < 4; s++) {
    x += (s*32);
    myGLCD.drawBitmap(x, 0, 32, 32, amperka, s+1);
  }
  x = 0;
  for (int s = 4; s > 0; s--) {
    myGLCD.drawBitmap(x, 224-(s*32), 32, 32, raspberry, s);
    x += (s*32);
  }
Β 
  delay(1000);
}

Π₯арактСристики

  • НаимСнованиС: TFT01-22SP

  • ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€: ILI9340C

  • Π”ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒ: 2,2 дюйма

  • НапряТСниС ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅: 5 Π’

  • НапряТСниС сигналов: 3,3 Π’

  • Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅: 240 x 320 (RGB)

  • Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ: SPI

  • Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ: Ρ€Π°Π·ΡŠΡ‘ΠΌ для SD-ΠΊΠ°Ρ€Ρ‚Ρ‹

  • Π Π°Π·ΠΌΠ΅Ρ€ экрана: 37Γ—48 ΠΌΠΌ

  • Π Π°Π·ΠΌΠ΅Ρ€ модуля: 40Γ—67 ΠΌΠΌ

РСсурсы

Π—Π°ΠΌΠ΅Ρ‚ΠΊΠΈ Π½Π° полях

  • ΠŸΡ€ΠΈ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ корпусС Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π½Π°Π³Ρ€Π΅Π² экрана. НагрСв ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ, Ссли ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ подсвСтку экрана, ΠΈΠ»ΠΈ Π΄Π΅Π»Π°Ρ‚ΡŒ Π΅Ρ‘ ΠΌΠ΅Π½Π΅Π΅ яркой ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ PWM Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ транзистор Π² Ρ‚Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, ΠΊΠΎΠ³Π΄Π° экран Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ.

wiki.amperka.ru

Π¦Π²Π΅Ρ‚Π½ΠΎΠΉ графичСский TFT-экран 480Γ—320 [АмпСрка / Π’ΠΈΠΊΠΈ]

Π’ΠΈΠ΄Π΅ΠΎΠΎΠ±Π·ΠΎΡ€

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈ настройка

ΠžΠ±Ρ‰Π΅Π½ΠΈΠ΅ с TFT-экраном происходит Ρ‡Π΅Ρ€Π΅Π· 16-Π±ΠΈΡ‚Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΉ интСрфСйс.

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ Ρ„ΠΎΡ€ΠΌ-Ρ„Π°ΠΊΡ‚ΠΎΡ€Π° Arduino mega 2560, Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ дисплСй свСрху ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Β«Π±ΡƒΡ‚Π΅Ρ€Π±Ρ€ΠΎΠ΄Π°Β». Для ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ дисплСй задСйствуСт ΠΏΠΈΠ½Ρ‹: D25-D28, D32-D40, D44-D53. ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΈΠ½Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎ своСму ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΡŽ.

Для облСгчСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ с TFT-экраном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ UTFT, которая Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊΠ°ΠΊ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°ΠΌΠΈ, основанными Π½Π° AVR-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅, Ρ‚Π°ΠΊ ΠΈ с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°ΠΌΠΈ Π½Π° ARM-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅.

Π Π°Π±ΠΎΡ‚Π° с дисплССм

Π’Ρ‹Π²ΠΎΠ΄ тСкста

ΠŸΡ€ΠΎΡˆΠ΅ΠΉΡ‚Π΅ Arduino скСтчСм ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½Ρ‹ΠΌ Π½ΠΈΠΆΠ΅. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π½Π° экранС Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ надпись Β«HelloWorldΒ».

TFT_480x320_text_1.ino
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΈΠ½ΠΎΠ²
UTFT myGLCD(CTE32HR, 38, 39, 40, 41);
// объявлСния встроСнного ΡˆΡ€ΠΈΡ„Ρ‚Π°
extern uint8_t BigFont[];
Β 
void setup()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй
  myGLCD.InitLCD();
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Ρ‚ΠΈΠΏ ΡˆΡ€ΠΈΡ„Ρ‚Π°
  myGLCD.setFont(BigFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ Β«Hello, world!Β» Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ строки дисплСя
  myGLCD.print("Hello, world!", CENTER, 0);
}
void loop()
{
}

ΠœΠ΅Ρ‚ΠΎΠ΄ InitLCD – ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ дисплСй ΠΈ Π·Π°Π΄Π°Π΅Ρ‚ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ»ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ. Π’ качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° указываСтся ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ. Π‘ΡƒΠ΄ΡƒΡ‡ΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π±Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Π° устанавливаСт Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ. Если ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ PORTRAIT ΠΈΠ»ΠΈ 0 – Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Π½Π° Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°Ρ ориСнтация, Ссли ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ LANDSCAPE ΠΈΠ»ΠΈ 1 – Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Π°Ρ.

ΠœΠ΅Ρ‚ΠΎΠ΄ clrScr – ΠΎΡ‡ΠΈΡ‰Π°Π΅Ρ‚ дисплСй, стирая всю ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡƒΡŽ Π½Π° дисплСС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈ заливая дисплСй Ρ‡Π΅Ρ€Π½Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚.

ΠœΠ΅Ρ‚ΠΎΠ΄ print – Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° дисплСй тСкст, содСрТимоС символьной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ‚ΠΈΠΏΠ° String. Π’ качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ тСкст, ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° области ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ. Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Π²Ρ‹Π²ΠΎΠ΄Π° тСкстовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ X ΠΈ Y Π·Π°Π΄Π°ΡŽΡ‚ΡΡ Π² пиксСлях ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ‹ ΠΊΠ°ΠΊ явно, Ρ‚Π°ΠΊ ΠΈ Ρ‡Π΅Ρ€Π΅Π· цСлочислСнныС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ выраТСния. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚Ρ€ΠΈ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ для использования Π² качСствС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ X:

  • LEFT – тСкст выравниваСтся ΠΏΠΎ Π»Π΅Π²ΠΎΠΉ Π³Ρ€Π°Π½ΠΈΡ†Π΅ дисплСя

  • CENTER – тСкст выравниваСтся ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ дисплСя

  • RIGHT – тСкст выравниваСтся ΠΏΠΎ ΠΏΡ€Π°Π²ΠΎΠΉ Π³Ρ€Π°Π½ΠΈΡ†Π΅ дисплСя

ВстроСнныС ΡˆΡ€ΠΈΡ„Ρ‚Ρ‹

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° UTFT позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹ΠΌΠΈ ΡˆΡ€ΠΈΡ„Ρ‚Π°ΠΌΠΈ. Π¨Ρ€ΠΈΡ„Ρ‚Ρ‹ хранятся Π² Π²ΠΈΠ΄Π΅ массивов Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ ΠΊ тСксту ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π˜ΡΡ…ΠΎΠ΄Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ 3 ΡˆΡ€ΠΈΡ„Ρ‚Π°.

  • SmallFont – 95 символов 8Γ—12

  • BigFont – 95 символов 16Γ—16

  • SevenSegNumFont – 10 Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… символов 32Γ—50

Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ тСкст с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΡˆΡ€ΠΈΡ„Ρ‚Π°ΠΌΠΈ ΠΈ измСняСм ΠΈΡ… ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ Π½Π° дисплСС:

TFT_480x320_text_2.ino
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΈΠ½ΠΎΠ²
UTFT myGLCD(CTE32HR, 38, 39, 40, 41);
// объявлСния встроСнных ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ²
extern uint8_t SmallFont[];
extern uint8_t BigFont[];
extern uint8_t SevenSegNumFont[];
Β 
void setup()
{
}
Β 
void loop()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD(0);
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(BigFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ строки дисплСя
  myGLCD.print("CTE32HR", CENTER, 0);
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(SmallFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("Hello from Amperka!", CENTER, 100);
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ сСмисСгмСнтный ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(SevenSegNumFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("12345", CENTER, 200);
  // ΠΆΠ΄Ρ‘ΠΌ 1 сСкунду
  delay(1000);
Β 
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD(1);
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(BigFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ строки дисплСя
  myGLCD.print("Hello, user!", CENTER, 0);
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(SmallFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("The screen is 3.2 diagonal", CENTER, 100);
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ сСмисСгмСнтный ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(SevenSegNumFont);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("67890", CENTER, 200);
  // ΠΆΠ΄Ρ‘ΠΌ 1 сСкунду
  delay(1000);
}
БистСма кодирования Ρ†Π²Π΅Ρ‚ΠΎΠ²

Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Π·Π° Ρ†Π²Π΅Ρ‚Π½ΠΎΡΡ‚ΡŒ, Π΅ΡΡ‚ΡŒ Ρ‚Ρ€ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°: R,G,B. ДопустимыС значСния для ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² – ΠΎΡ‚ 0 Π΄ΠΎ 255. Π—Π°Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ†Π²Π΅Ρ‚Π° Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹:

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ†Π²Π΅Ρ‚Π° Π¦Π²Π΅Ρ‚
VGA_SILVER сСрСбряный
VGA_GRAY сСрый
VGA_WHITE Π±Π΅Π»Ρ‹ΠΉ
VGA_MAROON красно-ΠΊΠΎΡ€ΠΈΡ‡Π½Π΅Π²Ρ‹ΠΉ
VGA_RED красный
VGA_PURPLE ΠΏΡƒΡ€ΠΏΡƒΡ€Π½Ρ‹ΠΉ
VGA_FUCHSIA фуксия
VGA_GREEN Π·Π΅Π»Π΅Π½Ρ‹ΠΉ
VGA_LIME Π»Π°ΠΉΠΌ
VGA_NAVY Ρ‚Π΅ΠΌΠ½ΠΎ-синий
VGA_BLUE синий
VGA_TEAL синС-Π·Π΅Π»Π΅Π½Ρ‹ΠΉ
VGA_AQUA морская Π²ΠΎΠ»Π½Π°

Π”ΠΎΠ±Π°Π²ΠΈΠΌ красок Π² строку Β«HelloWorldΒ» ΠΈ Π²Ρ‹Π²Π΅Π΄Π΅ΠΌ Π΅Ρ‘ нСсколько Ρ†Π²Π΅Ρ‚Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ².

TFT_480x320_color_text.ino
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΈΠ½ΠΎΠ²
UTFT myGLCD(CTE32HR, 38, 39, 40, 41);
// объявлСния встроСнного ΡˆΡ€ΠΈΡ„Ρ‚Π°
extern uint8_t BigFont[];
void setup()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD();
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(BigFont);
  // устанавливаСм красный Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(VGA_RED);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("Hello, World!", CENTER, 0);
  // устанавливаСм синий Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(VGA_BLUE);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("Hello, World!", CENTER, 36);
  // устанавливаСм Π·Π΅Π»Ρ‘Π½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(VGA_GREEN);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("Hello, World!", CENTER, 72);
  // устанавливаСм сСрСбряный Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(VGA_SILVER);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("Hello, World!", CENTER, 108);
}
void loop()
{
}
ΠŸΠΎΠ²ΠΎΡ€ΠΎΡ‚ строки

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° print позволяСт ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ строки ΠΏΠΎΠ΄ ΡƒΠ³Π»ΠΎΠΌ ΠΎΡ‚ 0 Π΄ΠΎ 359 градусов. Π’Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ задаСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ (Π»Π΅Π²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΡƒΠ³ΠΎΠ»). НулСвоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡƒΠ³Π»Π° ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ, Π΄Π°Π»Π΅Π΅, ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ увСличСния ΡƒΠ³Π»Π°, происходит Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ тСкста ΠΏΠΎ часовой стрСлкС Π½Π° Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΡƒΠ³ΠΎΠ». ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ графичСский эффСкт:

TFT_480x320_rotate_text.ino
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΈΠ½ΠΎΠ²
UTFT myGLCD(CTE32HR, 38, 39, 40, 41);
// объявлСния встроСнного ΡˆΡ€ΠΈΡ„Ρ‚Π°
extern uint8_t BigFont[];
Β 
void setup()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD();
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(BigFont);
  // устанавливаСм Π·Π΅Π»Ρ‘Π½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(VGA_GREEN);
}
void loop()
{
  // ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку с ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π°ΠΌ Π½Π° 20 градусов
  for (int deg = 0; deg < 360; deg += 20) {
    String text = "Amperka";
    myGLCD.print(text, 240, 160, deg);
  }
}

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ Π½Π΅ ΡƒΠΌΠ΅ΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Π²Ρ‹Ρ…ΠΎΠ΄ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ дисплСя. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Π·Π° максимальной Π΄Π»ΠΈΠ½ΠΎΠΉ строки придСтся ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. Если строка окаТСтся слишком Π΄Π»ΠΈΠ½Π½ΠΎΠΉ, Ρ‚ΠΎ Π΅Π΅ «хвост» ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π²Π΅Π΄Π΅Π½ ΠΏΠΎΠ²Π΅Ρ€Ρ… ΡƒΠΆΠ΅ Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π½Π½ΠΎΠ³ΠΎ тСкста.

Π’Ρ‹Π²ΠΎΠ΄ гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ Π²Ρ‹Π²ΠΎΠ΄ гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ UTFT, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΠΎΠΏΠΈΠΊΡΠ΅Π»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄, массив 480Γ—320 Ρ‚ΠΎΡ‡Π΅ΠΊ:

ΠœΠ΅Ρ‚ΠΎΠ΄ ОписаниС ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹
drawPixel(x, y) Π’Ρ‹Π²ΠΎΠ΄ пиксСля x, y ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° пиксСля
drawLine(x1,Β y1Β ,x2Β ,y2) Π’Ρ‹Π²ΠΎΠ΄ Π»ΠΈΠ½ΠΈΠΈ x1, y1 ΠΈ x2, y2 ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ Π»ΠΈΠ½ΠΈΠΈ
drawRect(x1,Β y1Β ,x2Β ,y2) Π’Ρ‹Π²ΠΎΠ΄ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° x1, y1 ΠΈ x2, y2 ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π΄Π²ΡƒΡ… ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½Ρ‹Ρ… ΡƒΠ³Π»ΠΎΠ²
drawFillRect(x1,Β y1Β ,x2Β ,y2) Π’Ρ‹Π²ΠΎΠ΄ Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° x1, y1 ΠΈ x2, y2 ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π΄Π²ΡƒΡ… ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½Ρ‹Ρ… ΡƒΠ³Π»ΠΎΠ²
drawCircle(x, y, r) Π’Ρ‹Π²ΠΎΠ΄ окруТности x, y ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Ρ†Π΅Π½Ρ‚Ρ€Π° окруТности, r радиус
drawfillCircle(x, y, r) Π’Ρ‹Π²ΠΎΠ΄ Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π½ΠΎΠΉ окруТности x, y ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Ρ†Π΅Π½Ρ‚Ρ€Π° окруТности, r радиус

Π’Ρ‹Π²Π΅Π΄Π΅ΠΌ ΠΈΡ… Π½Π° экран.

TFT_480x320_figure.ino
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΈΠ½ΠΎΠ²
UTFT myGLCD(CTE32HR, 38, 39, 40, 41);
void setup()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD();
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
}
Β 
void loop()
{
  // устанавливаСм Ρ‡Ρ‘Ρ€Π½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(0, 0, 0);
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
Β 
  // Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ 5 ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠ² Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Ρ†Π²Π΅Ρ‚Π°ΠΌΠΈ
  for (int i = 1; i < 6; i++) {
    switch (i) {
      case 1:
        myGLCD.setColor(255, 0, 255);
        break;
      case 2:
        myGLCD.setColor(255, 0, 0);
        break;
      case 3:
        myGLCD.setColor(0, 255, 0);
        break;
      case 4:
        myGLCD.setColor(0, 0, 255);
        break;
      case 5:
        myGLCD.setColor(255, 255, 0);
        break;
    }
    myGLCD.fillRect(70+(i*20), 60+(i*20), 150+(i*20), 140+(i*20));
  }
  delay(2000);
Β 
  // устанавливаСм Ρ‡Ρ‘Ρ€Π½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(0, 0, 0);
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
Β 
  // Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ 5 окруТностСй Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Ρ†Π²Π΅Ρ‚Π°ΠΌΠΈ
  for (int i = 1; i < 6; i++) {
    switch (i) {
      case 1:
        myGLCD.setColor(255, 0, 255);
        break;
      case 2:
        myGLCD.setColor(255, 0, 0);
        break;
      case 3:
        myGLCD.setColor(0, 255, 0);
        break;
      case 4:
        myGLCD.setColor(0, 0, 255);
        break;
      case 5:
        myGLCD.setColor(255, 255, 0);
        break;
    }
    myGLCD.fillCircle(300-(i*20), 100+(i*20), 40);
  }
  delay(2000);
}

ΠœΡ‹ рассмотрСли ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ рисования графичСских ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ². ΠšΡΡ‚Π°Ρ‚ΠΈ, для Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ UTFT сущСствуСт Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ UTFT_Geometry, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ позволяСт Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° дисплСй Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ (ΠΊΠΎΠ½Ρ‚ΡƒΡ€Π½Ρ‹Π΅ ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Π΅), Π΄ΡƒΠ³ΠΈ окруТностСй ΠΈ сСктора ΠΊΡ€ΡƒΠ³ΠΎΠ².

Π’Ρ‹Π²ΠΎΠ΄ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ

ΠœΠ΅Ρ‚ΠΎΠ΄ drawBitmap позволяСт Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° дисплСй ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ΅ растровоС графичСскоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π’ качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π·Π°Π΄Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° изобраТСния, Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΈ имя массива, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ хранится Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. ΠžΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ scale позволяСт ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ изобраТСния ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ Π½Π° дисплСй.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ для Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° дисплСй. Для этого понадобится ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ряд дСйствий описанных Π½ΠΈΠΆΠ΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ графичСский Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ GIMP ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° ImageConverter565, которая поставляСтся вмСстС с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ ΠΈ располагаСтся Π² ΠΏΠ°ΠΏΠΊΠ΅ Tools.

  • Π’ графичСском Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ GIMP ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π½Π° дисплСС.

  • Π”Π°Π»Π΅Π΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠΉΡ‚Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎΠ± ΠΎΠ½Π° вписалась Π² дисплСй, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π΅ большС Ρ‡Π΅ΠΌ 480×320. Π‘ΠΎΠ²Π΅Ρ‚ΡƒΠ΅ΠΌ ΠΌΠ΅Π½ΡΡ‚ΡŒ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ откалибруСтся сам, Ρ‡Ρ‚ΠΎ Π±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΠ»Π°ΡΡŒ пропорция изобраТСния.

  • Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ холста 480×320, ΠΏΡ€ΠΈ это Ссли всё ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ сдСлали ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ холста.

  • Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ .jpeg ΠΈ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ImageConverter565.

  • Π€ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 480×320 пиксСлСй Π·Π°ΠΉΠΌΠ΅Ρ‚ Π½Π΅ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ мСста Π² памяти ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, поэтому ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½Π½ΠΎΠ΅ Π² 2 Ρ€Π°Π·Π° (240×160 пиксСлСй) ΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. Для этого установитС Ρ„Π»Π°Π³ Β«Reduce size toΒ» ΠΈ Π·Π°Π΄Π°ΠΉΡ‚Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ (240×160).

  • Π’ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ Β«Save AsΒ» Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ Β«.cΒ»

  • Если ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ AVR-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ, Ρ‚ΠΎ Π² ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ Β«Target BoardΒ» Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ Β«AVRΒ», Π° Ссли ARM-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ, Ρ‚ΠΎ β€” Β«ARM/PIC32Β»»

  • Π’ ΠΏΠΎΠ»Π΅ Β«Array NameΒ» Π·Π°Π΄Π°ΠΉΡ‚Π΅ имя ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Β«SaveΒ».

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€Π° Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ Β«.cΒ», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ информация ΠΎ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ ΠΈ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ этот Ρ„Π°ΠΉΠ» Π² ΠΏΠ°ΠΏΠΊΡƒ Π’Π°ΡˆΠ΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ массив ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ спСцификатора extern Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΌΡ‹ это Π΄Π΅Π»Π°Π»ΠΈ для ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ². Волько Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобках ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ массива Π² 16-Ρ€ΠΈΡ‡Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ находится Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ элСмСнтС массива, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Π² ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ конвСртирования Ρ„Π°ΠΉΠ» Π² любом тСкстовом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅. НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ послС копирования ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ массива Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΈ снова ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΡ€ΠΈ этом Ρ„Π°ΠΉΠ» массива откроСтся Π½Π° сосСднСй Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ рядом с тСкстом ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹Π²Π΅Π΄Π΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° дисплСй:

TFT_480x320_Bitmap.ino
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
Β 
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΈΠ½ΠΎΠ²
UTFT myGLCD(CTE32HR, 38, 39, 40, 41);
Β 
// объявлСния Π΄Π²ΡƒΡ… массив ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ
extern unsigned int amperka[0x1000];
extern unsigned int raspberry[0x1000];
Β 
void setup()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD();
}
Β 
void loop()
{
  // Π·Π°ΠΊΡ€Π°ΡˆΠΈΠ²Π°Π΅ΠΌ дисплСй Π±Π΅Π»Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ
  myGLCD.fillScr(255, 255, 255);
  // Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅
  int x = 0;
  for (int s = 0; s < 3; s++) {
    x += (s*96);
    myGLCD.drawBitmap(x, 0, 64, 64, amperka, s+1);
  }
  x = 0;
  for (int s = 3; s > 0; s--) {
    myGLCD.drawBitmap(x, 320-(s*64), 64, 64, raspberry, s);
    x += (s*64);
  }
Β 
  delay(1000);
}

Π’Ρ‹Π²ΠΎΠ΄ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ с SD-ΠΊΠ°Ρ€Ρ‚Ρ‹

Если Π²Π°ΠΌ Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ ΠΎΠ±ΡŠΡ‘ΠΌΠ° памяти ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° для хранСния ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈΡ… прямо с SD-ΠΊΠ°Ρ€Ρ‚Ρ‹. Для облСгчСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ c Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π½Π° дисплСй Π²Π°ΠΌ понадобится ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ UTFT_SdRaw ΠΈ SdFat.

ΠœΠ΅Ρ‚ΠΎΠ΄ load Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ UTFT_SdRawпозволяСт Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° дисплСй ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ΅ растровоС графичСскоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

myFiles.load(x, y, sizeX, sizeY, name, scale)

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

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ для Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° дисплСй. Для этого понадобится:

  • ГрафичСский Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ GIMP.
  • Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π° ImageConverter565, которая поставляСтся вмСстС с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ UTFT ΠΈ располагаСтся Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Tools.

Π”Π°Π»Π΅Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ряд дСйствий:

  1. Π’ графичСском Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ GIMP ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ.

  2. Π”Π°Π»Π΅Π΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠΉΡ‚Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎΠ± ΠΎΠ½ΠΎ вписалось Π² дисплСй, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π΅ большС Ρ‡Π΅ΠΌ 480×320.

  3. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ холста 480×320, ΠΏΡ€ΠΈ это Ссли всё ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ сдСлали ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ холста.

  4. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ .jpeg.

  5. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ImageConverter565.

  6. УстановитС Ρ„Π»Π°Π³ Β«Reduce size toΒ» ΠΈ Π·Π°Π΄Π°ΠΉΡ‚Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ (480×320).

  7. Π’ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ Β«Save AsΒ» Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ .raw

  8. Если ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ AVR-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ, Ρ‚ΠΎ Π² ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ Β«Target BoardΒ» Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ Β«AVRΒ», Π° Ссли ARM-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ, Ρ‚ΠΎ β€” Β«ARM/PIC32Β»»

  9. Π’ ΠΏΠΎΠ»Π΅ Β«Array NameΒ» Π·Π°Π΄Π°ΠΉΡ‚Π΅ имя изобраТСния ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Β«SaveΒ».

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€Π° Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .raw, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ информация ΠΎ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ ΠΈ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ этот Ρ„Π°ΠΉΠ» Π½Π° SD-ΠΊΠ°Ρ€Ρ‚Ρƒ. Π”Π°Π»Π΅Π΅ Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ SD-ΠΊΠ°Ρ€Ρ‚Ρƒ Π² слот с ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ стороны дисплСя ΠΈ ΠΏΡ€ΠΎΡˆΠ΅ΠΉΡ‚Π΅ Arduino скСтчСм ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½Ρ‹ΠΌ Π½ΠΈΠΆΠ΅.

TFT_480x320_SD_Bitmap.ino
/*
Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° скопируйтС Ρ„Π°ΠΉΠ» Β«Arduino.rawΒ» 
входящим Π² состав Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Β«UTFT_SdRawΒ» Π½Π° SD-ΠΊΠ°Ρ€Ρ‚Ρƒ
*/
Β 
#include <SPI.h>
// Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с SD-ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ
#include <SdFat.h>
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с дисплССм
#include <UTFT.h>
// Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π½Π° дисплСй с SD-ΠΊΠ°Ρ€Ρ‚Ρ‹
#include <UTFT_SdRaw.h>
Β 
// ΠΏΠΈΠ½ ChipSelect ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° SD-ΠΊΠ°Ρ€Ρ‚Π°
#define SD_CHIP_SELECT  53
Β 
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с SD-ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ
SdFat sd;
Β 
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса UTFT
// ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ дисплСя ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΈΠ½ΠΎΠ²
UTFT myGLCD(CTE32HR, 38, 39, 40, 41);
Β 
// объявлСния встроСнного ΡˆΡ€ΠΈΡ„Ρ‚Π°
extern uint8_t BigFont[];
Β 
// создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π½Π° дисплСй
UTFT_SdRaw myFiles(&myGLCD);
Β 
void setup()
{
  // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ дисплСй с Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ
  myGLCD.InitLCD();
  // ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ экран
  myGLCD.clrScr();
  // Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ большой ΡˆΡ€ΠΈΡ„Ρ‚
  myGLCD.setFont(BigFont);
Β 
  // ΠΆΠ΄Ρ‘ΠΌ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ SD-ΠΊΠ°Ρ€Ρ‚Ρ‹
  while (!sd.begin(SD_CHIP_SELECT)) {
    // устанавливаСм красный Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
    myGLCD.setColor(VGA_RED);
    // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
    myGLCD.print("SD Card failed!", CENTER, 100);
    delay(1000);
  }
Β 
  // устанавливаСм Π·Π΅Π»Ρ‘Π½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Β«Ρ‡Π΅Ρ€Π½ΠΈΠ»Β» для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΈ рисования
  myGLCD.setColor(VGA_GREEN);
  // ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строкС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
  myGLCD.print("SD Card initialised", CENTER, 100);
  // ΠΆΠ΄Ρ‘ΠΌ 1 сСкунду
  delay(1000);
Β 
  // Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ с SD-ΠΊΠ°Ρ€Ρ‚Ρ‹ Π½Π° дисплСй
  myFiles.load(0, 0, 480, 320, "Arduino.raw");
}
Β 
void loop()
{
}

Π₯арактСристики

  • НаимСнованиС: CTE32HR

  • ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€: HX8357B

  • Π”ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒ: 3,2 дюйма

  • Π Π°Π±ΠΎΡ‡Π΅Π΅ напряТСниС: 3,3-5 Π’

  • Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅: 480Γ—320 (RGB)

  • Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ: 16-Π±ΠΈΡ‚Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΉ интСрфСйс

  • Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ: Ρ€Π°Π·ΡŠΡ‘ΠΌ для SD-ΠΊΠ°Ρ€Ρ‚Ρ‹

  • Π Π°Π·ΠΌΠ΅Ρ€ экрана: 70Γ—43 ΠΌΠΌ

  • Π Π°Π·ΠΌΠ΅Ρ€ модуля: 89Γ—54 ΠΌΠΌ

РСсурсы

wiki.amperka.ru

Arduino часы Π½Π° LCD TFT 3,5″

Arduino часы Π½Π° LCD TFT 3,5"
БСгодня я Ρ…ΠΎΡ‡Ρƒ подСлится инструкциСй ΠΏΠΎ изготовлСния ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… часов с Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠΌ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π’ качСствС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Ρ€Π° Arduino Uno. Для отобраТСния часов, Π΄Π°Ρ‚Ρ‹ ΠΈ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ я Π±ΡƒΠ΄Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†Π²Π΅Ρ‚Π½ΠΎΠΉ LCD TFT экран. Π­ΠΊΡ€Π°Π½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Arduino, поэтому ΠΌΡ‹ обойдСмся Π±Π΅Π· модуля RTC.

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π°ΠΌ понадобится:
— Arduino Uno
— LCD TFT 3.5” Shield для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Arduino Uno
— Π”Π°Ρ‚Ρ‡ΠΈΠΊ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ ds18b20
— РСзистор 4.7 Ком 0.25 Π’Ρ‚
— РСзистор 62 Ом 2 ΡˆΡ‚
— Аккумулятор Ni-Mn, 1.2V, 1000mA 6 ΡˆΡ‚
— Π‘ΠΈΠ½ΠΈΠΉ свСтодиод 5ΠΌΠΌ 4 ΡˆΡ‚
— Π€Π°Π½Π΅Ρ€Π° Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½ΠΎΠΉ 10 ΠΌΠΌ
— НСмного Ρ‚ΠΎΠ½ΠΊΠΎΠ³ΠΎ пластика ΠΈΠ»ΠΈ ΠΊΠ°Ρ€Ρ‚ΠΎΠ½Π°
— НаТдачная Π±ΡƒΠΌΠ°Π³Π°
— Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ»ΠΎΠ±Π·ΠΈΠΊ
— Π’Π΅Ρ€ΠΌΠΎΠΊΠ»Π΅ΠΉ
— Паяльник
— ΠŸΡ€ΠΈΠΏΠΎΠΉ, ΠΊΠ°Π½ΠΈΡ„ΠΎΠ»ΡŒ
— Π˜Π·ΠΎΠ»Π΅Π½Ρ‚Π°
— Двусторонний скотч
— Π‘ΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°
— Акриловая краска
— ΠšΡ€Π°ΡΠΈΡ‚Π΅Π»ΠΈ для Π°ΠΊΡ€ΠΈΠ»ΠΎΠ²ΠΎΠΉ краски
— Π”Ρ€Π΅Π»ΡŒ
— Π‘Π²Π΅Ρ€Π»Π° ΠΏΠΎ Π΄Π΅Ρ€Π΅Π²Ρƒ 5 ΠΌΠΌ ΠΈ 3 ΠΌΠΌ
— Π‘Π°ΠΌΠΎΡ€Π΅Π·Ρ‹ ΠΏΠΎ Π΄Π΅Ρ€Π΅Π²Ρƒ 3 Ρ… 30 ΠΌΠΌ

Π¨Π°Π³ 1 ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° экрана.
Для Π½Π°Ρ‡Π°Π»Π° возьмСм экран, ΠΏΠ΅Ρ€Π΅Π΄ установкой Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ. Π’ ΠΌΠΎΠ΅ΠΌ случаС ΠΎΠ½ выглядит Ρ‚Π°ΠΊ:

Π£ вас ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ, ΠΈΡ… ΠΌΠ½ΠΎΠ³ΠΎ разновидностСй. ΠŸΠΎΠ΄ΡΠ²Π΅Ρ‚ΠΊΠ° экрана Π·Π°ΠΏΠΈΡ‚Π°Π½Π° Ρ‡Π΅Ρ€Π΅Π· стабилизатор Π½Π° 3.3 Π²ΠΎΠ»ΡŒΡ‚Π° ΠΈ рСзистор ΠΎΡ‚ 5 Π²ΠΎΠ»ΡŒΡ‚ с Arduino. Π­Ρ‚ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π²ΠΈΠ΄Π½ΠΎ Π½Π° Ρ„ΠΎΡ‚ΠΎ:

Вакая схСма Π΄Π΅Π»Π°Π΅Ρ‚ Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ подсвСткой, Π° ΠΎΠ½ΠΎ пригодится, Π΄Π΅Π»Π°Ρ‚ΡŒ мСньшС ΡΡ€ΠΊΠΎΡΡ‚ΡŒ Π½Π° Π½ΠΎΡ‡ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Для осущСствлСния возмоТности контроля яркости Ρ€Π°Π·Ρ€Π΅Π·Π°Π΅ΠΌ Π΄ΠΎΡ€ΠΎΠΆΠΊΡƒ ΠΎΠΊΠΎΠ»ΠΎ рСзистора ΠΈ ΠΏΡ€ΠΈΠΏΠ°ΠΈΠ²Π°Π΅ΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰ΠΈΠΉ Π²Ρ‹Ρ…ΠΎΠ΄ стабилизатора напряТСния ΠΈ рСзистор. ΠŸΡ€ΠΈΠΊΠ»Π΅ΠΈΠ²Π°Π΅ΠΌ свСрху ΠΈΠ·ΠΎΠ»Π΅Π½Ρ‚Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π±Ρ‹Π»ΠΎ случайных ΠšΠ—. ΠŸΠΎΡ‚ΠΎΠΌ ΠΌΡ‹ Ρ€Π°Π·Ρ€Π΅ΠΆΠ΅ΠΌ этот ΠΏΡ€ΠΎΠ²ΠΎΠ΄ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠΌ ΠΊ Arduino ΠΈΠ»ΠΈ просто поставим Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ Π² Ρ€Π°Π·Ρ€Ρ‹Π². Π’ ΠΈΡ‚ΠΎΠ³Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ получится Ρ‚Π°ΠΊ:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ экран Π³ΠΎΡ‚ΠΎΠ² ΠΊ установкС

Π¨Π°Π³ 2 ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Arduino Uno.
Π­ΠΊΡ€Π°Π½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Arduino, ΠΊΡ€ΠΎΠΌΠ΅ этого Π½Π° ΠΏΠ»Π°Ρ‚Π΅ с экраном часто Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ слот ΠΏΠΎΠ΄ SD ΠΊΠ°Ρ€Ρ‚Ρƒ. Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ соСдинСнии экрана ΠΈ Arduino ΠΎΡΡ‚Π°Π²ΡˆΠΈΠ΅ΡΡ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ Arduino становятся Π½Π΅ доступны. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½Π°Π΄ΠΎ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ Π°Π½Π°Π»ΠΎΠ³ Arduino Uno с ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹ΠΌΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ посадочными Π³Π½Π΅Π·Π΄Π°ΠΌΠΈ для Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ². Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΡ‹ смоТСм ΠΏΡ€ΠΈΠΏΠ°ΡΡ‚ΡŒ Π³Ρ€Π΅Π±Π΅Π½ΠΊΡƒ ΠΊ свободным Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ сторону. Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ откаТСмся ΠΎΡ‚ слота SD ΠΊΠ°Ρ€Ρ‚Ρ‹ Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ свободных Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ². РаспаиваСм Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ сторону ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π²Ρ‹Π²ΠΎΠ΄Ρ‹: D0, D1, D10, D11, D12, D13, A5. Π’Π°ΠΊΠΆΠ΅ с ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ стороны Π½Π°ΠΌ понадобятся Π²Ρ‹Π²ΠΎΠ΄Ρ‹ +5 Π²ΠΎΠ»ΡŒΡ‚, GND, RES. Для питания Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ni-Mn аккумуляторы, ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡ… Π·Π°Ρ€ΡΠΆΠ°Ρ‚ΡŒ, для этих Ρ†Π΅Π»Π΅ΠΉ ΠΏΡ€ΠΈΠΏΠ°ΠΈΠ²Π°Π΅ΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° ΠΊ Ρ€Π°Π·ΡŠΠ΅ΠΌΡƒ питания Arduino, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΡ‹ смоТСт ΠΈ Π·Π°Ρ€ΡΠΆΠ°Ρ‚ΡŒ аккумуляторы ΠΈ ΠΏΠΈΡ‚Π°Ρ‚ΡŒ Arduino Π²ΠΎ врСмя зарядки. Π’ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΈΡ‚ΠΎΠ³Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:



МоТно ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ корпусу.

Π¨Π°Π³ 3 Π˜Π·Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ корпуса.
НачнСм с изготовлСния корпуса для Π½Π°ΡˆΠΈΡ… часов. Π—Π° основу возьмСм Ρ„Π°Π½Π΅Ρ€Ρƒ Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½ΠΎΠΉ 10 ΠΌΠΌ. Π€ΠΎΡ€ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΎΠΉ ΠΈ, Ссли Π²Π°ΠΌ Π½Π΅ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ выбранная мною Ρ„ΠΎΡ€ΠΌΠ°, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ шаблон ΠΈ Π²Ρ‹Ρ€Π΅Π·Π°Ρ‚ΡŒ своСй Ρ„ΠΎΡ€ΠΌΠΎΠΉ. Но Ссли Π²Ρ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Ρƒ мСня, Ρ‚ΠΎΠ³Π΄Π° распСчатываСм ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π½Π° любом ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€Π΅ Π² ΠΌΠ°ΡΡˆΡ‚Π°Π±Π΅ 100%:

Π’Ρ‹Ρ€Π΅Π·Π°Π΅ΠΌ распСчатанный шаблон ΠΏΠΎ Π²Π½Π΅ΡˆΠ½Π΅ΠΌΡƒ ΠΊΡ€Π°ΡŽ. ΠŸΡ€ΠΈΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅ΠΌ шаблон ΠΊ Ρ„Π°Π½Π΅Ρ€Π΅, ΠΎΡ‡Π΅Ρ€Ρ‡ΠΈΠ²Π°Π΅ΠΌ ΠΈ Π²Ρ‹Ρ€Π΅Π·Π°Π΅ΠΌ, Π½Π° этот Ρ€Π°Π· ΠΈΠ· Ρ„Π°Π½Π΅Ρ€Ρ‹, Π΄Π²Π΅ Ρ‚Π°ΠΊΠΈΠ΅ Π΄Π΅Ρ‚Π°Π»ΠΈ. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π΄Π΅Ρ‚Π°Π»ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Ρ€Π΅Π·Π°Ρ‚ΡŒ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ нашСго экрана. Для этого Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅ΠΌ экран посСрСдинС нашСй Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎ сСрСдинС Π½Π°Π΄ΠΎ сам экран, ΠΏΠ»Π°Ρ‚Π° Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ находится наш экран Π½Π΅ симмСтрична. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ посСрСдинС Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅ΠΌ сам экран, Π° ΠΎΡ‡Π΅Ρ€Ρ‡ΠΈΠ²Π°Π΅Ρ‚ ΠΏΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΈ Π²Ρ‹Ρ€Π΅Π·Π°Π΅ΠΌ Π² Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ этот ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ:

Π”Π°Π»Π΅Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ экран ΠΈ Arduino Uno. ΠŸΡ€ΠΈΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅ΠΌ ΠΊ нашСй Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ ΠΈ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π΅ΠΌ Π½Π° Ρ„Π°Π½Π΅Ρ€Π΅ мСста Π²Ρ‹Ρ€Π΅Π·ΠΎΠ² ΠΏΠΎΠ΄ USB ΠΏΠΎΡ€Ρ‚ ΠΈ Ρ€Π°Π·ΡŠΠ΅ΠΌ питания Arduino. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π½ΠΎΠΆ ΠΏΡ€ΠΎΡ€Π΅Π·Π°Π΅ΠΌ ΠΏΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹ΠΌ линиям, Π½ΠΎ Π½Π΅ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°, Π° Π½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π½ΡƒΠΆΠ½ΡƒΡŽ Π³Π»ΡƒΠ±ΠΈΠ½Ρƒ:

КладСм Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ ΠΈΠ· Ρ„Π°Π½Π΅Ρ€Ρ‹ Π½Π° Ρ€ΠΎΠ²Π½ΡƒΡŽ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ, Π²Π½ΡƒΡ‚Ρ€ΡŒ ΠΊΠ»Π°Π΄Π΅ΠΌ экран. Ровная ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ Π½ΡƒΠΆΠ½Π° Ρ‡Ρ‚ΠΎΠ±Ρ‹ экран ΠΈ пСрСдняя Ρ‡Π°ΡΡ‚ΡŒ Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π² ΠΎΠ΄Π½ΠΎΠΉ плоскости. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Ρ€Π΅Π·Ρ‹ ΠΏΠΎΠ΄ USB ΠΈ Ρ€Π°Π·ΡŠΠ΅ΠΌ питания Arduino совпадали с ΠΈΡ… фактичСским располоТСниСм. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ‚Π΅Ρ€ΠΌΠΎΠΊΠ»Π΅Π΅Π²ΠΎΠΉ пистолСт ΠΏΡ€ΠΈΠΊΠ»Π΅ΠΈΠ²Π°Π΅ΠΌ экран ΠΊ Ρ„Π°Π½Π΅Ρ€Π΅, Π·Π°ΠΎΠ΄Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΊΠ»Π΅ΠΈΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° подсвСтки, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡ… случайно Π½Π΅ Π²Ρ‹Π΄Ρ€Π°Ρ‚ΡŒ:

Π‘ Π»ΠΈΡ†Π΅Π²ΠΎΠΉ стороны Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:

ΠŸΠΎΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Π½Π°ΡˆΡƒ Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ Π°ΠΊΡ€ΠΈΠ»ΠΎΠ²ΠΎΠΉ краской. Π― Π²Ρ‹Π±Ρ€Π°Π» Π°ΠΊΡ€ΠΈΠ»ΠΎΠ²ΠΎΡŽ краску Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° Π½Π΅ ΠΏΠ°Ρ…Π½Π΅Ρ‚ ΠΈ быстро сохнСт. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠ»Π΅Ρ€ ΠΏΡ€ΠΈΠ΄Π°Π΅ΠΌ Π±Π΅Π»ΠΎΠΉ краскС Π½ΡƒΠΆΠ½Ρ‹ΠΉ Π½Π°ΠΌ Ρ†Π²Π΅Ρ‚. МнС нравится Ρ„ΠΈΠΎΠ»Π΅Ρ‚ΠΎΠ²Ρ‹ΠΉ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΊΡ€Π°ΡΠΈΡ‚ΡŒ Π² любой ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ²ΡˆΠΈΠΉΡΡ Π²Π°ΠΌ Ρ†Π²Π΅Ρ‚:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅, Π² Π½Π΅ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Ρ€Π΅Π·Π°Ρ‚ΡŒ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 75 ΠΌΠΌ Π½Π° 35 ΠΌΠΌ, для доступа ΠΊ Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ Arduino. А Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π΄ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡΡ‚ΡŒ отвСрстия Π΄ΠΈΠ°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ 5 ΠΌΠΌ для свСтодиодов. И ΠΏΡ€ΠΎΡ€Π΅Π·ΡŒ для Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ. И отвСрстия 3 ΠΌΠΌ ΠΏΠΎΠ΄ саморСзы. Π’Π°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ красим Π²Ρ‚ΠΎΡ€ΡƒΡŽ:

Для соСдинСния этих частСй ΠΈΠ· Ρ„Π°Π½Π΅Ρ€Ρ‹ Ρ‚ΠΎΠΉ ΠΆΠ΅ Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Ρ‹ ΠΈΠ·Π³ΠΎΡ‚ΠΎΠ²ΠΈΠΌ Π΄Π²Π° ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 20 ΠΌΠΌ Π½Π° 40 ΠΌΠΌ ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ со стороной 20 ΠΌΠΌ. И просвСрливаСм Π² Π½ΠΈΡ… отвСрстия 3 ΠΌΠΌ ΠΏΠΎΠ΄ саморСзы:

Π¨Π°Π³ 4 Π­Π»Π΅ΠΊΡ‚Ρ€ΠΈΠΊΠ°.
Π‘Ρ‚Π°Π²ΠΈΠΌ Arduino Π½Π° мСсто:

ΠŸΡ€ΠΈΠΊΡ€ΡƒΡ‡ΠΈΠ²Π°Π΅ΠΌ наши ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° Ρ„ΠΎΡ‚ΠΎ:

Π‘Π΅Ρ€Π΅ΠΌ аккумуляторы, спаиваСм ΠΈΡ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎ Ρ‚Ρ€ΠΈ ΡˆΡ‚ΡƒΠΊΠΈ, Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° ΠΈ скручиваСм ΠΈΠ·ΠΎΠ»Π΅Π½Ρ‚ΠΎΠΉ. Π Π°Π·ΠΌΠ΅Ρ‰Π°Π΅ΠΌ ΠΈΡ… Π² Π½ΠΈΠΆΠ½ΠΈΡ… частях Π»ΠΈΡ†Π΅Π²ΠΎΠΉ Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ, с ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ стороны ΠΈ ΠΏΡ€ΠΈΠΊΠ»Π΅ΠΈΠ²Π°Π΅ΠΌ Π½Π° Ρ‚Π΅Ρ€ΠΌΠΎΠΊΠ»Π΅ΠΉ. ΠŸΡ€ΠΎΠ²ΠΎΠ΄ ΠΎΡ‚ минусового ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° Ρ€Π°Π·ΡŠΠ΅ΠΌΠ° питания Arduino ΠΏΡ€ΠΈΠΏΠ°ΠΈΠ²Π°Π΅ΠΌ ΠΊ минусу ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ‚Ρ€ΠΎΠΉΠΊΠΈ аккумуляторов. Плюс ΠΎΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ‚Ρ€ΠΎΠΉΠΊΠΈ ΠΏΡ€ΠΈΠΏΠ°ΠΈΠ²Π°Π΅ΠΌ ΠΊ минусу Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ‚Ρ€ΠΎΠΉΠΊΠΈ аккумуляторов. Плюс ΠΎΡ‚ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ‚Ρ€ΠΎΠΉΠΊΠΈ паяСм ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ· ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŽ. ΠŸΡ€ΠΎΠ²ΠΎΠ΄ ΠΎΡ‚ плюсового ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° Ρ€Π°Π·ΡŠΠ΅ΠΌΠ° питания Arduino паяСм ΠΊΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρƒ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ. ΠŸΡ€ΠΎΡˆΠ΅ говоря: всС аккумуляторы Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ соСдинСны ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, минус ΠΎΡ‚ Π½ΠΈΡ… припаян ΠΊ минусу Ρ€Π°Π·ΡŠΠ΅ΠΌΠ° питания Arduino, Π° плюс Ρ‡Π΅Ρ€Π΅Π· Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ ΠΊ ΠΏΠ»ΡŽΡΡƒ Ρ€Π°Π·ΡŠΠ΅ΠΌΠ° питания:

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ Π·Π°Π΄Π½Π΅ΠΉ части. Π’ ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Π½Π½Ρ‹Π΅ отвСрстия вставляСм свСтодиоды ΠΈ фиксируСм ΠΈΡ… Ρ‚Π΅Ρ€ΠΌΠΎΠΊΠ»Π΅Π΅ΠΌ. Π‘ΠΏΠ°ΠΈΠ²Π°Π΅ΠΌ ΠΈΡ… ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎ Π΄Π²Π° свСтодиода ΠΈ Π½Π΅ Π·Π°Π±Ρ‹Π²Π°Π΅ΠΌ ΠΏΡ€ΠΎ рСзисторы Π½Π° плясовой ΠΏΡ€ΠΎΠ²ΠΎΠ΄. ΠœΠΈΠ½ΡƒΡ ΠΎΡ‚ свСтодиодов ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΊ GND, плюс ΠΊ D11 Arduino.

Π’ Π²Π΅Ρ€Ρ…Π½Π΅Π΅ отвСрстиС вставляСм Π΄Π°Ρ‚Ρ‡ΠΈΠΊ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ ds18b20. Он ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ высокой Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ измСрСния, ΠΏΠΎΠ³Ρ€Π΅ΡˆΠ½ΠΎΡΡ‚ΡŒ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 0,5 Β°C. Π”Π°Ρ‚Ρ‡ΠΈΠΊ ΠΎΡ‚ΠΊΠ°Π»ΠΈΠ±Ρ€ΠΎΠ²Π°Π½ ΠΏΡ€ΠΈ ΠΈΠ·Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½ΠΈΠΈ, ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ настройки Π½Π΅ трСбуСтся. Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ измСрСния Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ -55 … + 125 Β°C. Π•ΡΡ‚ΡŒ Π΄Π²Π° Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹: с внСшним источником питания ΠΈ Β«ΠΏΠ°Ρ€Π°Π·ΠΈΡ‚Π½ΠΎΠ³ΠΎ питания». ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшнСС ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ этом ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Π΅Π΅. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Π’Π°ΠΊ ΠΆΠ΅ фиксируСм Π΅Π³ΠΎ Ρ‚Π΅Ρ€ΠΌΠΎΠΊΠ»Π΅Π΅ΠΌ. Π’ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΈΡ‚ΠΎΠ³Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ получится ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚ DQ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ° Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΊ D10 Arduino. НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΏΡ€ΠΈΠΏΠ°ΡΡ‚ΡŒ ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ рСзистор ΠΌΠ΅ΠΆΠ΄Ρƒ DQ ΠΈ +5(VDD).
ΠŸΠ΅Ρ€Π΅Π΄ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ сборкой Π΅Ρ‰Π΅ Ρ€Π°Π· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС Π±Ρ‹Π»ΠΎ припаяно ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ:

Π¨Π°Π³ 5 Π‘ΠΎΠ±ΠΈΡ€Π°Π΅ΠΌ всС вмСстС.
Аккуратно, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΠΎΡ€Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°, ΠΏΠ΅Ρ€Π΅Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ заднюю Ρ‡Π°ΡΡ‚ΡŒ ΠΈ ΠΊΠ»Π°Π΄Π΅ΠΌ Π΅Π΅ Π½Π° Π»ΠΈΡ†Π΅Π²ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ. Π’ мСстах крСплСния ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ΄Π΅Π»Ρ‹Π²Π°Π΅ΠΌ отвСрстия ΠΈ Π²ΠΊΡ€ΡƒΡ‡ΠΈΠ²Π°Π΅ΠΌ саморСзы, соСдиняя Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΎΠ±Π΅ части:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΠ· Ρ‚ΠΎΠ½ΠΊΠΎΠ³ΠΎ пластика Π²Ρ‹Ρ€Π΅Π·Π°Π΅ΠΌ полости Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½ΠΎΠΉ 35 ΠΌΠΌ. На двусторонний скотч ΠΊΠ»Π΅ΠΈΠΌ эти полости ΠΏΠΎ ΠΊΡ€ΡƒΠ³Ρƒ Π½Π° Π±ΠΎΠΊΠΎΠ²ΠΈΠ½Ρ‹ Π½Π°ΡˆΠΈΡ… часов:


Π’Π°ΠΊΠΆΠ΅ ΠΈΠ· Ρ‚ΠΎΠ½ΠΊΠΎΠ³ΠΎ пластика Π²Ρ‹Ρ€Π΅Π·Π°Π΅ΠΌ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ элСмСнты Π±ΡƒΠΌΠ°ΠΆΠ½ΠΎΠ³ΠΎ шаблона ΠΈ Π½Π°ΠΊΠ»Π΅ΠΈΠ²Π°Π΅ΠΌ ΠΈΡ… Π½Π° Π»ΠΈΡ†Π΅Π²ΡƒΡŽ сторону часов:

Для зарядки аккумуляторов ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ часов Π²ΠΎ врСмя зарядки Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ Π±Π»ΠΎΠΊ питания напряТСниСм 7.2 – 8 V, с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ° Π² 600 mA. Если Ρƒ вас Π±ΡƒΠ΄ΡƒΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ аккумуляторы, Ρ‚ΠΎ ΠΈ Π±Π»ΠΎΠΊ питания Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π±ΠΈΡ€Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Π³Π»Π°Π²Π½ΠΎΠ΅ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‚ΠΎΠΊ зарядки Π½Π΅ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π» 10% ΠΎΡ‚ Смкости аккумуляторов.

На этом сборка Π·Π°ΠΊΠΎΠ½Ρ‡Π΅Π½Π°, ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скСтч.

Π¨Π°Π³ 6 ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° срСды ΠΈ Π·Π°Π»ΠΈΠ²ΠΊΠ° скСтча.
Для рСдактирования ΠΈ Π·Π°Π»ΠΈΠ²ΠΊΠΈ скСтча Π²Π½Π°Ρ‡Π°Π»Π΅ Π½Π°Π΄ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Arduino IDE с ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ сайта:
www.Arduino.cc.

Π—Π°Ρ‚Π΅ΠΌ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с экраном Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° UTFT:

utft.rar [2.39 Mb] (скачиваний: 409)

Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ° Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° OneWire:

Для установки этих Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ распакуйтС Π°Ρ€Ρ…ΠΈΠ²Ρ‹ ΠΈ помСститС распакованныС Ρ„Π°ΠΉΠ»Ρ‹ Π² ΠΏΠ°ΠΏΠΊΡƒ Β«librariesΒ», Π½Π°Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ с установлСнной Arduino IDE. Или Π½Π΅ распаковывая скачанныС Π°Ρ€Ρ…ΠΈΠ²Ρ‹, Π² срСдС Arduino IDE Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ мСню Π‘ΠΊΠ΅Ρ‚Ρ‡ – ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ. Π’ самом Π²Π΅Ρ€Ρ…Ρƒ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΡƒΠ½ΠΊΡ‚ Β«Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ .Zip Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒΒ». НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ послС всСго этого ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Arduino IDE. Π‘ΠΊΠ΅Ρ‚Ρ‡ для часов:

Π”Π°Ρ‚Ρ‡ΠΈΠΊ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ One Wire ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ адрСс для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ устройства — 64-разрядный ΠΊΠΎΠ΄. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π½Π΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ этот адрСс, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ ΠΊ Arduino, Π·Π°Π»ΠΈΠ²Π°Π΅ΠΌ Π² Π½Π΅Π΅ скСтч находящийся Π² мСню Π€Π°ΠΉΠ» – ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ – Dallas Temperature – OneWireSearch. Π”Π°Π»Π΅Π΅ запускаСм Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ — ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΠΎΡ€Ρ‚Π°. Arduino Π΄ΠΎΠ»ΠΆΠ½Π° Π½Π°ΠΉΡ‚ΠΈ наш Π΄Π°Ρ‚Ρ‡ΠΈΠΊ, Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΅Π³ΠΎ адрСс ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ показания Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. ΠšΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ ΠΈΠ»ΠΈ просто записываСм адрСс вашСго Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°. ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ скСтч Ard_LCD_TFT_Term, ΠΈΡ‰Π΅ΠΌ строку:

byte addr[8]={0x28, 0xFF, 0xDD, 0x14, 0xB4, 0x16, 0x5, 0x97};//адрСс ΠΌΠΎΠ΅Π³ΠΎ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°

ЗаписываСм адрСс вашСго Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹ΠΌΠΈ скобками, замСняя адрСс ΠΌΠΎΠ΅Π³ΠΎ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°. ΠžΡΡ‚Π°Π»ΠΎΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π°Π»ΠΈΡ‚ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ скСтч. Π₯ΠΎΡ‡Ρƒ Π΅Ρ‰Π΅ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ просто часы Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ скучновато, Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ свой собствСнный скСтч. Π― ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ написания Π΄Ρ€ΡƒΠ³ΠΈΡ… скСтчСв для этих часов Π±ΡƒΠ΄Ρƒ ΠΈΡ… Π²Ρ‹ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ.

Доставка Π½ΠΎΠ²Ρ‹Ρ… самодСлок Π½Π° ΠΏΠΎΡ‡Ρ‚Ρƒ

ΠŸΠΎΠ»ΡƒΡ‡Π°ΠΉΡ‚Π΅ Π½Π° ΠΏΠΎΡ‡Ρ‚Ρƒ ΠΏΠΎΠ΄Π±ΠΎΡ€ΠΊΡƒ Π½ΠΎΠ²Ρ‹Ρ… самодСлок. Никакого спама, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΈΠ΄Π΅ΠΈ!

*Заполняя Ρ„ΠΎΡ€ΠΌΡƒ Π²Ρ‹ ΡΠΎΠ³Π»Π°ΡˆΠ°Π΅Ρ‚Π΅ΡΡŒ Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

Π‘Ρ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ΡΡŒ Π°Π²Ρ‚ΠΎΡ€ΠΎΠΌ сайта, ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠΉΡ‚Π΅ собствСнныС ΡΡ‚Π°Ρ‚ΡŒΠΈ, описания самодСлок с ΠΎΠΏΠ»Π°Ρ‚ΠΎΠΉ Π·Π° тСкст. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ здСсь.

usamodelkina.ru

КакиС Π±Ρ‹Π²Π°ΡŽΡ‚ Arduino LCD дисплСи β€” Arduino Mania

ΠŸΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Arduino, часто приходится ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ дисплСи для Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ДисплСи эти Π±Ρ‹Π²Π°ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ставит ΠΏΠ΅Ρ€Π΅Π΄ собой вопрос, β€” ΠΊΠ°ΠΊΠΎΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ? Π”Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся Π² этих нСпонятных Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°Ρ…: LCD, TFT, OLED

ВсС ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π² ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ΅ Arduino LCD дисплСи ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° Π΄Π²Π΅ основныС Π³Ρ€ΡƒΠΏΠΏΡ‹:

  • Π‘Π΅Π³ΠΌΠ΅Π½Ρ‚Π½Ρ‹Π΅ – экраны простого Ρ‚ΠΈΠΏΠ°, Π½Ρ‹Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² основном для отобраТСния нСбольшого количСства ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Π²Ρ€ΠΎΠ΄Π΅ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹.
  • LCD ΠΈΠ»ΠΈ Π–Πš-дисплСи (ТидкокристалличСскиС) – Π½Π° экраны такого Ρ€ΠΎΠ΄Π° ΡƒΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ вывСсти ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ побольшС. НапримСр, Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρƒ с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ словом (Temp β€” 16Π‘).

Π‘Π΅Π³ΠΌΠ΅Π½Ρ‚Π½Ρ‹ΠΉ дисплСй – это Ρ‚Π΅ΠΌΠ° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ, здСсь Π±ΡƒΠ΄Π΅ΠΌ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒΒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎ Π–Πš дисплСях.

Β 

Разновидности Arduino LCD дисплССв

Β 

Π’ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ – ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ… часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ экраны Ρ‚Ρ€Π΅Ρ… Π²ΠΈΠ΄ΠΎΠ²:

    • LCD — это ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΌΠΎΠ½ΠΎΡ…Ρ€ΠΎΠΌΠ½Ρ‹ΠΉ дисплСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ символы ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ количСства ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°. ΠžΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ lcd дисплСй arduino 1602. Π­ΠΊΡ€Π°Π½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π΄Π²Π΅ строки ΠΏΠΎ 16 символов каТдая. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ этого Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ с Π»ΠΈΡ…Π²ΠΎΠΉ для отобраТСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… Arduino для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…. Π•ΡΡ‚ΡŒ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ с ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ – lcd keypad shield.
    • TFT — это графичСский дисплСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ символы, Π½ΠΎ ΠΈ изобраТСния. ΠšΠ°Ρ‡Π΅ΡΡ‚Π²ΠΎ изобраТСния зависит ΠΎΡ‚ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ экрана. TFT экраны стоят Π½Π° порядок Π΄ΠΎΡ€ΠΎΠΆΠ΅, особСнно сСнсорныС. Но ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π²Ρ‹ΡˆΠ΅.ДисплСи Arduino LCD TFT ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ подходят для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² с построСниСм Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ². Π•ΡΡ‚ΡŒ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ с шилдов с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ SD – ΠΊΠ°Ρ€Ρ‚Ρ‹. БСнсорныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ…ΠΎΡ€ΠΎΡˆΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΎΠΊ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ шилдС с экраном, Ρ‡Ρ‚ΠΎ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ позволяСт ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ Π½Π° Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… Π²Ρ‹Ρ…ΠΎΠ΄Π°Ρ….
    • OLED — это Ρ‚ΠΎΡ‚ ΠΆΠ΅ TFT ΡΠΊΡ€Π°Π½Β Ρ‚ΠΎΠ»ΡŒΠΊΠΎ вмСсто ΠΆΠΈΠ΄ΠΊΠΈΡ… кристалов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ свСтодиоды, Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ большой ΡƒΠ³ΠΎΠ» ΠΎΠ±Π·ΠΎΡ€Π°, ΡΠΎΡ‡Π½ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΈ мСньшСС ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ энСргии. Однако, ΠΈΡ… Ρ†Π΅Π½Π° Π½Π° сСгодняшний дСнь ΠΎΡ‡Π΅Π½ΡŒ Π²Π΅Π»ΠΈΠΊΠ°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… Arduino для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ….

Π’ΠΈΠ΄Π΅ΠΎ проСктов с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ LCD дисплССв Ардуино

ΠΠ°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ свои ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ LCD 1602, Π²ΠΈΠ΄Π΅ΠΎ Π½ΠΈΠΆΠ΅ дСмонстрируСт, Ρ‡Ρ‚ΠΎ прСдставляСт ΠΈΠ· сСбя экранчик, Π² ΠΊΠΎΠ½Ρ†Π΅ Π²ΠΈΠ΄Π΅ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ дисплСй отобраТаСт символы.

ΠžΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ Π²ΠΈΠ΄Π΅ΠΎ дСмонстрации Ρ€Π°Π±ΠΎΡ‚Ρ‹ дисплСя arduino tft. ΠŸΠ°Ρ€Π΅Π½Π΅ΠΊ рассказываСт, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π²Ρ‹Π²ΠΎΠ΄Π° графичСской ΠΈ тСкстовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° экран. Π•Ρ‰Π΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π΅ тСкста Π² Arduino tft Π½Π° русском языкС. Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½ΠΎΠ΅ Π²ΠΈΠ΄Π΅ΠΎ, Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с OLED LCD Display Module I2C 0.96 Π² срСдС Arduino. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π°Ρ Π²ΠΈΠ΄Π΅ΠΎ инструкция ΠΏΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡŽ, ΠΎΡ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Π΄ΠΎ установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

К Π²Ρ‹Π±ΠΎΡ€Ρƒ экрана нуТно ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠ· Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. НапримСр, Ссли Π² ΠΏΠ»Π°Π½Π°Ρ… Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹, Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ TFT дисплСй, Ссли Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ ΠΏΠ°Ρ€Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, достаточно ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ arduino lcd 1602 ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ сСгмСнтным. OLED дисплСи Ардуино ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° остро встаСт ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° потрСблСния элСктроэнСргии.

ΠœΠ΅Ρ‚ΠΊΠΈ: ΠœΠ΅Ρ‚ΠΊΠΈ LCD LCD 1602 oled tft дисплСй

arduinomania.ru

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ TFT LCD ΠΊ Arduino

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ TFT LCD ΠΊ Arduino[Sep. 25th, 2013|01:32 pm]

CообщСство Π»ΡŽΠ±ΠΈΡ‚Π΅Π»Π΅ΠΉ Arduino


КоллСги, ΠΊΡ‚ΠΎ ΠΊΠ°ΠΊ справляСтся с ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ 2.2 TFT LCD дисплСя? Π’ΠΎΡ‚ описаниС, Ρ„ΠΎΡ‚ΠΎ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°.

Народ ΠΏΠΈΡˆΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ дисплСю Π½ΡƒΠΆΠ½Ρ‹ ΡƒΡ€ΠΎΠ²Π½ΠΈ 3.3 Π’. Π― Π·Π°ΠΏΠΈΡ‚Ρ‹Π²Π°ΡŽ Π΅Π³ΠΎ ΠΎΡ‚ ардуиновского 3.3 Π’, ΡΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ.

http://forum.arduino.cc/index.php?topic=181679.0 — Ρ‚ΡƒΡ‚ ΠΏΠΈΡˆΡƒΡ‚, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ΅Π½ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ 5 -> 3.3.

Π“Π΄Π΅ ΠΏΡ€Π°Π²Π΄Π° ΠΈ Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ?

Comments:

Ρƒ Π°Ρ€Π΄ΡƒΠΈΠ½Ρ‹ стабилизатор 3.3Π’ ΠΎΡ‡Π΅Π½ΡŒ слабый, скорСС всСго ΠΏΠΎΡ‚ΠΎΠΌΡƒ ΠΈ ΠΏΠΈΡˆΡƒΡ‚, Ρ‡Ρ‚ΠΎ Π½Π΅ тянСт ΠΎΠ½ Π² долгосрочной пСрспСктивС Ρ‚Π°ΠΊΠΎΠΉ дисплСй

o, ΠΊΡ‚ΠΎ ΡƒΠΌΠ΅Π΅Ρ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‚ΠΎΡ‚ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠΎ ΠΆΠΈΠ·Π½ΠΈ
я вопрос понял Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ πŸ™‚

Ссли дисплСй Π½Π΅ 5V-tolerant, Ρ‚ΠΎ Π½ΡƒΠΆΠ½Ρ‹ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ рСзисторныС Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ, ΠΈΠ½Π°Ρ‡Π΅ Π΅ΡΡ‚ΡŒ ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠΆΠ΅Ρ‡ΡŒ Π·Π°Ρ‰ΠΈΡ‚Π½Ρ‹Π΅ Π΄ΠΈΠΎΠ΄Ρ‹ Π²Ρ…ΠΎΠ΄ΠΎΠ²

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽ ΠΎΡ‚ 5 Π²ΠΎΠ»ΡŒΡ‚ Ρ‡Π΅Ρ€Π΅Π· Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ Π½Π° рСзисторах. Π‘ΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹Π΅ Π»ΠΈΠ½ΠΈΠΈ Ρ‚ΠΎΠΆΠ΅ Ρ‡Π΅Ρ€Π΅Π· Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ.

Π›Π°ΠΏΡˆΡƒ ΠΈΠ· рСзисторов Π½Π΅ хочСтся Π³ΠΎΡ€ΠΎΠ΄ΠΈΡ‚ΡŒ.

Π˜Ρ‰ΠΈΡ‚Π΅ Ρ‚ΠΎΠ³Π΄Π° LCD ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с уровнями 5Π². Π›Π°ΠΏΡˆΠ° кстати Π² smd Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ получаСтся вСсьма компактная.

UPD: выглядит ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Π²ΠΎΡ‚ Ρ‚Π°ΠΊ:

Edited at 2013-09-25 10:10 am (UTC)

Π° ΠΊΡ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» 5 Π² Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΊ 3.3 ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΡŽ?

ΠΏΡ€ΠΈ 5v-tolerant inputs Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ

3,3 Π’ Π½Π° Π°Ρ€Π΄ΡƒΠΈΠ½Π΅ Π²Ρ€ΠΎΠ΄Π΅ ΠΈΠ΄Π΅Ρ‚ с FT232? Π’Π°ΠΌ Ρ‚ΠΎΠΊΠΈ ΠΊΠΎΠΏΠ΅Π΅Ρ‡Π½Ρ‹Π΅, ΠΌΠΎΠΆΠ½ΠΎ Π΅Π³ΠΎ ΠΈ Π²Ρ‹ΠΆΠ΅Ρ‡ΡŒ Π½Π΅Π²Π·Π½Π°Ρ‡Π°ΠΉ. ΠŸΡ€ΠΈ этом сама ΠΏΠ»Π°Ρ‚Π° Ρƒ Вас питаСтся ΠΎΡ‚ USB 5Π’ ΠΈ соотвСтствСнно ΡΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹Π΅ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ ΠΈΠ΄ΡƒΡ‚ Ρ‚ΠΎΠΆΠ΅ 5Π’. Надо Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ 3,3 Π’ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ (LM1117) ΠΈ Π΄Π°, рСзисторныС Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ, Π»ΠΈΠ±ΠΎ стабилитроны малСнькиС ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ. НадСТнСС всСго ΠΌΠΈΠΊΡ€ΡƒΡ…Π°-ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ.

ru-arduino.livejournal.com

2.4 TFT Touch screen — Arduino

ДисплСй 2.4 TFT 240Ρ…320 сСнсорный + MicroSD


Β ΠœΠΎΠ΄ΡƒΠ»ΡŒ являСтся бСскорпусным Ρ†Π²Π΅Ρ‚Π½Ρ‹ΠΌ Π–ΠšΠ˜ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΎΠΌ QVGA с сСнсорным экраном, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌ диагональ 2,4 дюйма. Он ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ совмСстно с ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°ΠΌΠΈ Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΈ процСссорными систСмами. НСсмотря Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ отобраТСния ΠΏΠΎΠ»Π½ΠΎΡ†Π²Π΅Ρ‚Π½Ρ‹Ρ… Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΉ, основноС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ – ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ простой Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… с использованиСм 16 Ρ†Π²Π΅Ρ‚ΠΎΠ². На экран ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ:
Β 

Β 
ГрафичСских возмоТностСй ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° достаточно для создания изобраТСния ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ благодаря сСнсорным повСрхностям. ΠžΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΉ дисплСй 2.4 TFT 240Ρ…320 сСнсорный + MicroSD ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΈ ΠΈΠ½Π΄ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ значСния ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ устройства Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° ΠΏΡ€ΠΈΠ±ΠΎΡ€Π°. Π–ΠšΠ˜ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΈΠΌΠ΅Π΅Ρ‚ постоянно Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΡƒΡŽ подсвСтку. Π•ΡΡ‚ΡŒ ΠΎΠ΄Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ°. На ΠΏΠ»Π°Ρ‚Π΅ располоТСн ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ для SD ΠΊΠ°Ρ€Ρ‚Ρ‹.
Β 
Π₯арактСристики 2.4 TFT 240Ρ…320
Β 
ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅
Β Β Β Β Β Β Β Β Β Β Β  НапряТСниС 5 Π’
            Вок 300 мА
НапряТСниС Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… сигналов 5 ΠΈΠ»ΠΈ 3,3 Π’
Π”ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒ 2,4 дюйма
Π Π°Π·Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π°Ρ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ 320 X 240 Ρ‚ΠΎΡ‡Π΅ΠΊ с ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ
МаксимальноС количСство ΠΎΡ‚Ρ‚Π΅Π½ΠΊΠΎΠ² 262144
ΠŸΠΎΠ΄ΡΠ²Π΅Ρ‚ΠΊΠ° бСлая
Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ 8080
ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ объСм microSD ΠΊΠ°Ρ€Ρ‚Ρ‹ 32 Π“Π±
Π Π°Π·ΠΌΠ΅Ρ€Ρ‹ 71 x 52 x 7 ΠΌΠΌ
Β 
ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹
Β 

Π–ΠšΠ˜ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ 8 ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² модуля для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ 4 ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° для сигналов управлСния. БСнсорная Ρ‡Π°ΡΡ‚ΡŒ дисплСя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ 4 ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° совмСстно с Π–ΠšΠ˜. Π Π°Π±ΠΎΡ‚Π° с Micro SD ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ 4 ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°.
Β 
ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚
3.3VΒ Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅
5VΒ Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅
GNDΒ Β  Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅
J4-1                                        Кнопка
Β 
Β Β Β Β Β Β Β Β Β Β Β  Π–ΠšΠ˜ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΈ сСнсорная ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ
Β 
LCD_RDΒ Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π–ΠšΠ˜, Ρ‡Ρ‚Π΅Π½ΠΈΠ΅
LCD_WR TOUCH_YPΒ Β Β Β Β Β Β Β Β  ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π–ΠšΠ˜, запись ΠΈΠ»ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ сСнсорной повСрхности
LCD_RS TOUCH_XMΒ Β Β Β Β Β Β Β Β  ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π–ΠšΠ˜, ΠΊΠΎΠΌΠ°Π½Π΄Π°/Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ сСнсорной повСрхности
LCD_CSΒ Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π–ΠšΠ˜, Π²Ρ‹Π±ΠΎΡ€ устройства
LCD_RSTΒ Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  сброс
LCD_D2Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  Π΄Π°Π½Π½Ρ‹Π΅ Π–ΠšΠ˜
LCD_D3Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  Π΄Π°Π½Π½Ρ‹Π΅ Π–ΠšΠ˜
LCD_D4Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  Π΄Π°Π½Π½Ρ‹Π΅ Π–ΠšΠ˜
LCD_D5Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  Π΄Π°Π½Π½Ρ‹Π΅ Π–ΠšΠ˜
LCD_D6 / TOUCH XPΒ Β Β Β Β Β Β Β Β  Π΄Π°Π½Π½Ρ‹Π΅ Π–ΠšΠ˜ / Π΄Π°Π½Π½Ρ‹Π΅ сСнсорной повСрхности
LCD_D7 / TOUCH YMΒ Β Β Β Β Β Β Β  Π΄Π°Π½Π½Ρ‹Π΅ Π–ΠšΠ˜ / Π΄Π°Π½Π½Ρ‹Π΅ сСнсорной повСрхности
LCD_D0Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  Π΄Π°Π½Π½Ρ‹Π΅ Π–ΠšΠ˜
LCD_D1Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  Π΄Π°Π½Π½Ρ‹Π΅ Π–ΠšΠ˜
Β 
Β Β Β Β Β Β Β Β Β Β Β  Micro SD
Β 
SD_CSΒ Β Β Β Β Β Β Β Β Β Β  Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  Π²Ρ‹Π±ΠΎΡ€
SD_DI SD Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  Π²Ρ…ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ…
SD_DOΒ Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  Π²Ρ‹Ρ…ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ…
SD_SCKΒ Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β  Ρ‚Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…
Β 

ДисплСй 2.4 TFT 240Ρ…320 сСнсорный + MicroSD ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π² соСдинитСли Arduino.
Β 
ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Arduino UNO:
Β 

Β 
ΠŸΡ€ΠΈ установкС Π² ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ Arduino UNO ΠΏΠ΅Ρ€Π΅Π΄ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ слСдуСт ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ отсутствиС касания ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°ΠΌΠΈ ΠΏΠ»Π°Ρ‚Ρ‹ Ρ€Π°Π·ΡŠΠ΅ΠΌΠ° USB ΠΈ ΠΏΡ€ΠΈ нСобходимости Π½Π° ΠΏΠ»Π°Ρ‚Ρƒ ΠΏΡ€ΠΈΠΊΠ»Π΅ΠΈΡ‚ΡŒ изолятор.
Β 

Β 
Π‘Ρ…Π΅ΠΌΠ°
Β 

ДисплСй 2.4 TFT 240Ρ…320 сСнсорный + MicroSD.
Β 
ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅ 5 Π²ΠΎΠ»ΡŒΡ‚ поступаСт Π½Π° Ρ†Π΅ΠΏΠΈ схСмы ΠΈ микросхСму U1 стабилизатор напряТСния 3,3 Π²ΠΎΠ»ΡŒΡ‚Π°. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ сигналы проходят Ρ‡Π΅Ρ€Π΅Π· микросхСмы 74xx541 – Π±ΡƒΡ„Π΅Ρ€Ρ‹ шин Π΄Π°Π½Π½Ρ‹Ρ…. IC1 микросхСма ADS7843Β  – ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ сСнсорных экранов. Π­Ρ‚ΠΎ 12 Π±ΠΈΡ‚Π½Ρ‹ΠΉ АЦП с устройством Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ-хранСния, синхронным ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ интСрфСйсом ΠΈ Π½ΠΈΠ·ΠΊΠΎΠΎΠΌΠ½Ρ‹ΠΌΠΈ ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ управлСния сСнсорными ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°ΠΌΠΈ.
Основной ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ модуля – TFT1 совмСщСнный со спСциализированным ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ ТидкокристалличСский экран. Бсылки Π½Π° описаниС Π–ΠšΠ˜ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² Π² ΠΊΠΎΠ½Ρ†Π΅ страницы.
Β 
Кнопка
Β 
На ΠΊΡ€Π°ΡŽ ΠΏΠ»Π°Ρ‚Ρ‹ модуля располоТСна ΠΊΠ½ΠΎΠΏΠΊΠ°. ΠšΡ€ΠΎΠΌΠ΅ сСнсорной ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ дисплСй 2.4 TFT 240Ρ…320 сСнсорный + MicroSD ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ. Π•Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ с ΠΎΠ±Ρ‰ΠΈΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠΌ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 1 соСдинитСля J4. Π­Ρ‚ΠΎ располоТСнный с ΠΊΡ€Π°ΡŽ соСдинитСля J4 Π²ΠΎΠ·Π»Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° 3V3 нСподписанный ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚. Кнопка ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π½ΡƒΠΆΠ΄ ΠΊΠΎΠΌΠΏΠΎΠ½ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠ±ΠΎΡ€Π°. ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ совмСстно с Arduino ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 1 соСдинитСля J4 ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Π»ΠΈΠ½ΠΈΠΈ сброс. НаТатиС ΠΊΠ½ΠΎΠΏΠΊΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ сброс Arduino.
Β 
Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹
Β 
Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ обСспСчСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ модуля ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. Для этого ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. Π—Π° основу Π±Π΅Ρ€ΡƒΡ‚ написанныС для Arduino ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‚ ΠΈΡ… ΠΏΠΎΠ΄ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ срСдства Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠ±ΠΎΡ€Π°.
Когда ΠΌΡ‹ пытаСмся ΠΎΠ±ΡƒΠ·Π΄Π°Ρ‚ΡŒ дисплСй 2.4 TFT 240Ρ…320 сСнсорный + MicroSD ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹: Π±Π΅Π»Ρ‹ΠΉ экран, вСсь экран с ΡˆΡƒΠΌΠΎΠΌ, сСнсорныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈΠ»ΠΈ инвСртируСтся позиция ΠΏΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅ Y, ΠΈΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Ρ†Π²Π΅Ρ‚Π°. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² дисплСй Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ основного ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π–ΠšΠ˜: ST7781, Spfd5408, IL9341, Sitronix ST7783262K, S6D0154 ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. Π˜Ρ… описания Π² ΠΊΠΎΠ½Ρ†Π΅ страницы. ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго Π½ΡƒΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° дисплСя ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ Π² вашСм ΠΌΠΎΠ΄ΡƒΠ»Π΅. ΠœΠΈΠΊΡ€ΠΎΡΡ…Π΅ΠΌΠ° ΠΈ Π–ΠšΠ˜ экран это ΠΎΠ΄Π½ΠΎ устройство. Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ ΠΏΡƒΡ‚Π΅ΠΌ. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Arduino UNO ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ LCD_ID_Reader Version 1.2, которая Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ микросхСмы. LCD_ID_Reader Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ установки Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° опрСдСлСния Ρ‚ΠΈΠΏΠ° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ самурай, Ρ€Π΅Ρ‡ΡŒ ΠΎ Π½Π΅ΠΉ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ Π΄Π°Π»Π΅Π΅.
Β 
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Arduino
Β 
Для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² Π–ΠšΠ˜ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.
Β 
Для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° SPFD5408 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° JoaoLopesF. По сути это доработанная для SPFD5408 Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΎΡ‚ Adafruit. Π’ Π½Π΅ΠΉ Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠ°Π»ΠΈΠ±Ρ€ΠΎΠ²ΠΊΠΈ сСнсорного экрана.
Β 
Для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ²
S6D0154 диагональ 2,8 дюйма
ILI9488 диагональ 3,95 дюйма 320 x 480 Ρ‚ΠΎΡ‡Π΅ΠΊ
ILI9327 диагональ 3,6 дюйма
ILI9341
NT35702, совмСстим с ILI9327
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° самурай
По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ эта Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для экранов с диагональю 2,8 дюйма. На ΠΌΠ΅Π½ΡŒΡˆΠΈΡ… ΠΏΡ€ΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Ρ‡Π°ΡΡ‚ΡŒ изобраТСния. Для Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ 2,4 дюйма Π² Ρ„Π°ΠΉΠ»Π΅ TFTLCD-Library/Adafruit_TFTLCD.cpp Π½Π°Π΄ΠΎ Π½Π΅ΠΉΡ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ строки:
Β 
//#define TFTWIDTH 320
//#define TFTHEIGHT 480
Β 
ΠΈ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ символы коммСнтария Π² строках:
Β 
#define TFTWIDTH 240
Β #define TFTHEIGHT 320
Β 
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° опрСдСлСния Ρ‚ΠΈΠΏΠ° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π–ΠšΠ˜ – graphicstest. Π’ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ Ρ‚ΠΈΠΏ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π–ΠšΠ˜.
Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ сСнсорного экрана ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ #define YP A1 #define XM A2 #define YM 7 #define XP 6
Β 
Для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ²
ILI9325
ILI9328
И для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° с ΠΊΠΎΠ΄ΠΎΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ 0xC505
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° adafruit/TFTLCD-Library
Β 
Для ILI9325D Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° UTFT
Β 
Для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ST7781 ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ:
Smoke-And-Wires/TFT-Shield-Example-Code
adafruit/Adafruit-GFX-Library
adafruit/Touch-Screen-Library
Β 
Установка Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, тСстированиС, описаниС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΡˆΡ€ΠΈΡ„Ρ‚Ρ‹, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ наТатия, Ρ€Π°Π±ΠΎΡ‚Π° с ΠΌΠΈΠΊΡ€ΠΎSD ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ, ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ· Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° 24-bit Π² 16-bit здСсь
Β 
БСнсорная ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ
Β 

Β 
ДисплСй 2.4 TFT 240Ρ…320 сСнсорный + MicroSD ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Ρ‚Ρ€ΠΈ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹: ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ наТатия (X ΠΈ Y) ΠΈ Π΄Π°Π²Π»Π΅Π½ΠΈΠ΅ Z. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ рСзистивная тСхнология сСнсорного экрана.
Β 

Β 
ΠŸΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ состоит ΠΈΠ· Π΄Π²ΡƒΡ… ΠΏΠΎΠ»ΠΈΠΌΠ΅Ρ€Π½Ρ‹Ρ… слоСв, ΠΏΠΎΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… рСзистивным ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠΌ, Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠΌ Π² качСствС элСктродов. Π‘Π»ΠΎΠΈ ΡΠΊΠ»Π΅ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠΎ краям. Под ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ ΠΈΠ· микросхСмы IC1 для обнаруТСния наТатия. ΠœΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΏΡ€ΠΈΠ±ΠΎΡ€Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ 10-Π±ΠΈΡ‚Π½ΠΎΠ΅ число (0..1023) для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ оси. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ эта Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π° ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ Π² соотвСтствии с Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌΠΈ экрана.
Β 

ΠŸΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² сСнсорной повСрхности (Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ΡΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΎΠ±Ρ‰ΠΈΠΉ) ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΠ½ΠΊΠΈΠΉ ΡˆΠ»Π΅ΠΉΡ„ ΠΊ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ Π–ΠšΠ˜.
Β 
Для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° SPFD5408 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° 4-wire resistive touchscreensΒ . Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΠ°ΠΏΠΊΠΈ:
Β 

Β 
Для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π–ΠšΠ˜ ST7781 примСняСтся Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° контроля наТатия. Π’Π°ΠΊΠΆΠ΅ установитС. Π‘ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ ΠΈ Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€ΡƒΠΉΡ‚Π΅ дСмонстрационный ΠΊΠΎΠ΄ . Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΠ°ΠΏΠΊΡƒ SWIFT-Shield ΠΈΠ· ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ Π°Ρ€Ρ…ΠΈΠ²Π° Π² ΠΏΠ°ΠΏΠΊΡƒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Arduino.
Β 
ГрафичСский тСст
Β 
Для модуля с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ IL9341.
Β 

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ дисплСй 2.4 TFT 240Ρ…320 сСнсорный + MicroSD ΠΊ Arduino UNO. Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ adafruit/TFTLCD-Library ΠΈ Adafruit-GFX-Library.
Β 

Β 
ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ graphictest Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ adafruit/TFTLCD. На экранС Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²Ρ‹ΡˆΠ΅. Если дисплСй 2.4 TFT 240Ρ…320 сСнсорный + MicroSD Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΈΠ»ΠΈ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΡ‚Π°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ graphictest. ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ТСсткой установкС Ρ‚ΠΈΠΏΠ° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° дисплСя. Π‘Ρ‚Ρ€ΠΎΠΊΡƒ 60 Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π½Π°:
Β 
uint16_t identifier = 0x9341; //Need hardcode here (IC)
Β 
Для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π–ΠšΠ˜ SPFD5408.
Β 

Β 
Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π΄Π²Π° графичСских Ρ„Π°ΠΉΠ»Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° BMP со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ: 320 Ρ‚ΠΎΡ‡Π΅ΠΊ ΡˆΠΈΡ€ΠΈΠ½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ, Ρ†Π²Π΅Ρ‚ 24 Π±ΠΈΡ‚ ΠΈ объСм Π½Π΅ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°ΡŽΡ‰ΠΈΠΉ 250 ΠšΠ±Π°ΠΉΡ‚. Имя Ρ„Π°ΠΉΠ»Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· восьми латинских Π±ΡƒΠΊΠ². Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΊΠ°Ρ€Ρ‚Ρ‹ microSD. Если экспСримСнт ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Ρ‡Π½ΠΎ, Ρ‚ΠΎ Π½Π° ΠΊΠ°Ρ€Ρ‚Ρƒ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ. ВСст Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΡ… Π½Π° экран ΠΏΠΎΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎ.
Β 
Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ :
TFT-Shield-Example-Code
РаспакуйтС ΠΈ скопируйтС Π² ΠΏΠ°ΠΏΠΊΡƒ SWTFT-Shield Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Arduino.
Β 
Adafruit GFX graphics
ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠΉΡ‚Π΅ распакованныС ΠΏΠ°ΠΏΠΊΠΈ Π² Adafruit_GFX. Они Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ .cpp ΠΈ .h Ρ„Π°ΠΉΠ»Ρ‹.
Если имя ΠΏΠ°ΠΏΠΊΠΈ отличаСтся, Ρ‚ΠΎ Arduino Π½Π΅ распознаСт ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.
Β 
Arduino library resistive touchscreens
ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠΉΡ‚Π΅ Ρ€Π°ΡΠΊΡ€Ρ‹Ρ‚ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ Π² TouchScreen.
Β 

Β 
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΎΡ‚ΡΡŽΠ΄Π°
Β 
ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ USB-кабСль ΠΊ ПК ΠΈ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Arduino IDE. Π”Π°Π»Π΅Π΅ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Under Fileβ€”>Examples –> SWTFT-Shield.
Β 

Β 
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ².
Β 

Graphicstest
Β 

Graphicstest

Β 
Rotationtest.
ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ Arduino IDE ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ 9600 ΠΈ New Line Π² Π½ΠΈΠΆΠ½Π΅ΠΉ части ΠΎΠΊΠ½Π°. ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Send Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ изобраТСния.
Β 

Β 

Β 
Β 
Ttfbmp.
Π€Π°ΠΉΠ»Ρ‹ BMP записанныС Π½Π° micro SD ΠΊΠ°Ρ€Ρ‚Ρƒ Π±ΡƒΠ΄ΡƒΡ‚ выводится Π½Π° экран.
Β 

Β 
Ttfpaint.
ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ любой Ρ†Π²Π΅Ρ‚ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° сСнсорном экранС.


Β 
ΠŸΡ€ΠΎΠ΅ΠΊΡ‚: ΠžΡΡ†ΠΈΠ»ΠΎΠ³Ρ€Π°Ρ„ Π½Π° основС Arduino UNO R3 ΠΈ дисплСя 2.4 TFT 240Ρ…320

Π Π°Π±ΠΎΡ‚Π° совмСстно с Arduino Mega
Β Β Β Β Β Β Β Β Β Β Β  01
Β Β Β Β Β Β Β Β Β Β Β  02
Β Β Β Β Β Β Β Β Β Β Β  Π²ΠΈΠ΄Π΅ΠΎ
Β 
ОписаниС Π–ΠšΠ˜ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° Π½Π° основС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° SPFD5408A
Β 
Описания ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² Π–ΠšΠ˜
Β Β Β Β Β Β Β Β Β Β Β  SPFD5408A
Β Β Β Β Β Β Β Β Β Β Β  ILI9320
Β Β Β Β Β Β Β Β Β Β Β  ILI9325
Β Β Β Β Β Β Β Β Β Β Β  ILI9328
Β Β Β Β Β Β Β Β Β Β Β  ILI9341
Β Β Β Β Β Β Β Β Β Β Β  S6D1121

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Arduino для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ TFT дисплССв Π½Π° Ρ‡ΠΈΠΏΠ΅ ILI9341

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° UTFT для Ρ†Π²Π΅Ρ‚Π½Ρ‹Ρ… TFT дисплССв для Arduino

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Arduino для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ TFTLCD

Touch Screen Library

TFT LCD Library

GFX Library

Latest SD Card Library
Β 

it4it.club

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *