Talaan ng mga Nilalaman:

ESP32 Photo Clock: 9 Mga Hakbang (na may Mga Larawan)
ESP32 Photo Clock: 9 Mga Hakbang (na may Mga Larawan)

Video: ESP32 Photo Clock: 9 Mga Hakbang (na may Mga Larawan)

Video: ESP32 Photo Clock: 9 Mga Hakbang (na may Mga Larawan)
Video: Learn Arduino in 30 Minutes: Examples and projects 2024, Hulyo
Anonim
Image
Image
ESP32 Photo Clock
ESP32 Photo Clock

Ipinapakita ng mga itinuturo na ito kung paano gamitin ang ESP32 at LCD upang makagawa ng isang orasan ng larawan. Sa Japanese, tinatawag itong BiJin ToKei (美人 時 計).

Hakbang 1: Ano ang BiJin ToKei?

Ano ang BiJin ToKei?
Ano ang BiJin ToKei?

BiJin ToKei (美人 時 計) simula simula 2009, nakakahanap sila ng iba`t ibang kagandahang may hawak na oras ng oras ng pag-uulat ng board bawat minuto. Nagbibigay ang BiJin ToKei ng application ng web at bersyon ng mobile app. Matapos ang mga taong ito, mahahanap mo ang maraming variant sa web ngayon.

Ref.:

www.bijint.com

ja.wikipedia.org/wiki/BIJIN%26Co.

itunes.apple.com/us/app/bijin-tokei-plus/i…

deadoralive.wikia.com/wiki/Bijin_Tokei

twitter.com/search?q=%23bijintokei

Hakbang 2: Bakit ang ESP32?

Bakit ang ESP32?
Bakit ang ESP32?

Orihinal na nagbibigay ang BiJin ToKei ng application ng web at bersyon ng mobile app. Ito ay isang magandang orasan, ngunit napakahirap ialay ang isang desktop screen o mobile phone bilang isang orasan sa pangmatagalan.

Paano ang tungkol sa ESP32 at isang maliit na LCD, nagkakahalaga lamang ito ng halos 10 USD, ang presyong ito ay makatuwirang nagkakahalaga upang magawa ito.

Hakbang 3: Paghahanda

Paghahanda
Paghahanda
Paghahanda
Paghahanda
Paghahanda
Paghahanda

Board ng ESP32

Ang anumang ESP32 development board na may mga breakout na SPI ay dapat na ok.

LCD

Maaaring suportahan ng ESP32_TFT_Library ang ILI9341, ILI9488, ST7789V at ST7735. Sa oras na ito ay gumagamit ako ng isang 2.4 ST7789V LCD, numero ng modelo na JLX240-00302-BN. Ang modelong ito ay dinisenyo para sa SPI lamang, kaya mayroon lamang itong 10 mga pin (talagang 9 na mga pin). Maaari itong makatulong na mas madali ang paghihinang.

Update: Sinubukan ko rin ang isang 3.2 LCD, numero ng modelo na JLX320-00202

Stand Stand

Maaari mong magamit muli ang anumang lumang materyal sa kamay bilang isang simpleng paninindigan, hal. isang mobile stand. Mayroon akong isang putol na may-ari ng name tag, prefek na gawin ang trabahong ito!

Ang iba pa

Isang resistor na 10 Ohm at ilang pinahiran na wire ng tanso.

Hakbang 4: Disenyo

Disenyo
Disenyo

Ang isang orasan ng larawan ay nangangailangan ng kakayahang magpakita ng larawan. Ang larawan sa www.bijint.com ay nasa format na-j.webp

Ang ESP32 ay ang unang chip ng libangan na may kumpletong solusyon para sa pagpapakita ng imahe ng-j.webp

Kaya't ang proyektong ito ay nagsisimula sa Loboris's ESP32_TFT_library.

Narito ang daloy ng programa:

  1. Ikonekta ang WiFi
  2. Kumuha ng kasalukuyang oras gamit ang NTP protocol
  3. Pag-isipan ang string ng oras at minuto upang mabuo ang kasalukuyang URL ng larawan ng oras at pagkatapos ay makuha ito mula sa www.bijint.com bawat minuto
  4. I-save ang larawan-j.webp" />
  5. Ipakita ang file na jpg

Update: sinusuportahan din ng pinakabagong code ang direktang pag-decode ng tugon sa-j.webp

Disenyo tungkol sa mga detalye:

  1. Ang koneksyon sa WiFi at Internet ay hindi 100% maaasahan at hindi ko nais na ang pag-freeze ng orasan sa isang maling oras, kaya sa sandaling nakatagpo ng anumang error (hal. Nabigo ang DNS lookup, nabigo ang NTP, nabigo sa pag-download) ang program trigger ay muling simulang at gawin itong muli.
  2. Ang bawat minuto ay may isang solong oras ng larawan ay nangangahulugang 1440 mga larawan sa isang araw, ang built-in na flash ng ESP32 ay hindi magkakasya sa daan-daang mga larawan ng MB. Kaya't hindi mai-prefetch ng orasan ang lahat ng mga larawan, ngunit maaari itong makuha ang larawan sa bawat oras, ipakita ito at pagkatapos linisin ito.
  3. Madaling magod ang flash mula sa kasunod na pag-o-overtake, kaya paikutin ng programa ang mga file ng cache upang maiwasan ang pagsusulat sa parehong lugar bawat minuto.
  4. Ang laki ng larawan ay mas malaki kaysa sa resolusyon ng LCD, kaya kinakailangan na pag-urongin ang larawan sa kalahating laki upang maipakita.
  5. Ang pag-aayos ng built-in na timezone ng ESP-IDF ay hindi gagana tulad ng inaasahan, kaya kailanganing ayusin ang timezone gamit ang pasadyang code.
  6. Ang oras ng pag-download ng file ay nangangailangan ng 10-50 segundo (nakasalalay sa laki ng file at network), kaya't may advanced akong 20 segundo (mai-configure) mula sa totoong oras upang mapagtagumpayan ang pagkaantala na ito.

Hakbang 5: Mag-download, Mag-compile, Mag-flash at Patakbuhin ang Program

Mag-download, Mag-compile, Mag-flash at Patakbuhin ang Program
Mag-download, Mag-compile, Mag-flash at Patakbuhin ang Program

Pag-set up ng ESP-IDF (kung hindi pa):

  • Gabay sa Pag-setup ng Windows
  • Gabay sa Pag-setup ng Mac OS
  • Gabay sa Pag-setup ng Linux

I-download ang source code dito:

github.com/moononournation/ESP32_BiJin_ToK…

Pag-configure:

gumawa ng menuconfig

  • config serial port

    1. piliin ang "Serial Flasher Config"
    2. piliin ang "Default na serial port"
    3. punan ang serial port ng ESP32 board, hal. COM6 sa Windows; /dev/cu. SLAB_USBtoUART sa macOS
  • config WiFi

    1. piliin ang "BiJin Tokei Configuration"
    2. punan ang iyong sariling "WiFi SSID" at "WiFi Password"

Pagpapasadya

Binago ang "partitions.csv", ayusin ang laki ng imbakan. (maximum na 0x100000 para sa 2M at 0x300000 para sa 4M)

imbakan, data, spiff, 0x100000, 0xF0000,

Binago ang "main / bijin_tokei.c"

tukuyin kung gaano karaming mga file ng cache ang gagamitin, nakasalalay sa laki ng imbakan ng SPIFFS. O itakda sa 0 para sa direktang pag-decode ng tugon sa-j.webp" />

# tukuyin ang CACHE_COUNT 0

Piliin at i-unsment ang isa sa mga TOKEI LIST URL o punan ang iyong sariling URL:

static const char * REQUEST_FORMAT =

Compile, flash at patakbuhin ang programa:

gumawa ng flash monitor

Hakbang 6: Trabaho sa Paghinang

Trabaho ng Paghinang
Trabaho ng Paghinang
Trabaho ng Paghinang
Trabaho ng Paghinang
Trabaho ng Paghinang
Trabaho ng Paghinang

Idikit ang board ng ESP32 sa likod ng LCD at paghihinang na may pinahiran na tanso na tanso.

Ang koneksyon ay napaka-simple ngunit ang mga LCD na pin ay karaniwang napaka payat, mag-ingat na huwag i-mesh ito.

Narito ang buod ng koneksyon:

ESP32 GND -> LCD -ve

-> LCD LED -ve ESP32 3v3 -> LCD + ve -> 10 Ohm resistor -> LCD LED + ve ESP32 GPIO16 -> LCD RS (DC) ESP32 GPIO23 -> LCD SDA (SPI MOSI) ESP32 GPIO05 -> LCD CS ESP32 GPIO17 -> LCD RST ESP32 GPIO18 -> LCD CL (SPI CLK)

Mga Tip: Ang linya ng kuryente ay nangangailangan ng mas makapal na kawad upang matupad ang kasalukuyang daloy ngunit nangangailangan ito ng higit na pagsisikap upang ayusin ang posisyon; ang ibang mga linya ng signal ay maaaring gumamit ng mas payat na kawad at madali ang gawaing paghihinang.

Hakbang 7: Suriin at Ilagay ang LCD sa Stand

Suriin at Ilagay ang LCD sa Stand
Suriin at Ilagay ang LCD sa Stand
Suriin at Ilagay ang LCD sa Stand
Suriin at Ilagay ang LCD sa Stand
Suriin at Ilagay ang LCD sa Stand
Suriin at Ilagay ang LCD sa Stand

Suriin nang tama ang pagpapatakbo ng programa at pagkatapos ay ayusin ito sa stand.

Hakbang 8: Maligayang Oras

Masayang oras!
Masayang oras!

Panahon na upang ilagay ito sa iyong desktop at ipakita sa iyong kaibigan kung ano ang nagawa mo!

Hakbang 9: Ano ang Susunod?

  • Subukan ang iba pang pagkakaiba-iba ng BiJin ToKei
  • Random na paikutin ang mga napiling pagkakaiba-iba
  • Gumawa ng tailor ang iyong sariling mga larawan
  • Ipakita ang oras sa malaking laki ng font kung sakaling hindi ma-load ang larawan
  • Subukan ang mas malaking screen, hal. ili9488 (320 x 480)

Inirerekumendang: