Individální projekty MPOA

Mikroprocesory s architekturou ARM

Uživatelské nástroje

Nástroje pro tento web


2017:e-ink

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
2017:e-ink [2018/01/15 01:59]
Branislav Michálek [ESP32-DevKitC]
2017:e-ink [2018/01/15 02:46] (aktuální)
Branislav Michálek [Zdroje]
Řádek 59: Řádek 59:
 frame_buffer = pvPortMallocCaps((EPD_WIDTH * EPD_HEIGHT / 8), MALLOC_CAP_DMA);​ frame_buffer = pvPortMallocCaps((EPD_WIDTH * EPD_HEIGHT / 8), MALLOC_CAP_DMA);​
 </​code>​ </​code>​
 +
 +----
  
 ==== Počasie z OpenWeatherMap ==== ==== Počasie z OpenWeatherMap ====
Řádek 142: Řádek 144:
     return 0;     return 0;
 </​code>​ </​code>​
 +
 +----
  
 ===== Čas a dátum pomocou SNTP ===== ===== Čas a dátum pomocou SNTP =====
Řádek 186: Řádek 190:
 } }
 </​code>​ </​code>​
 +
 +----
  
 ===== Formátovanie výstupu na displej ===== ===== Formátovanie výstupu na displej =====
Řádek 220: Řádek 226:
  
 Po aktualizácii zobrazenia je možné displej aj obvod ESP32 uviesť do režimu hlbokého spánku. U displeja sa toho dosiahne odoslaním potrebných príkazov volaním funkcie ''​EPD_Sleep''​. U obvodu ESP32 bolo v pláne využiť funkciu ''​esp_deep_sleep'',​ ktorá obvod uvedie do režimu hlbokého spánku na stanovenú dobu, po ktorej sa opäť automaticky preberie a vykoná svoju funkciu. Po aktualizácii zobrazenia je možné displej aj obvod ESP32 uviesť do režimu hlbokého spánku. U displeja sa toho dosiahne odoslaním potrebných príkazov volaním funkcie ''​EPD_Sleep''​. U obvodu ESP32 bolo v pláne využiť funkciu ''​esp_deep_sleep'',​ ktorá obvod uvedie do režimu hlbokého spánku na stanovenú dobu, po ktorej sa opäť automaticky preberie a vykoná svoju funkciu.
 +
 +----
  
 ====== Záver ====== ====== Záver ======
 +
 +Výsledkom riešenia projektu je informačný panel, ktorý zobrazuje informácie o aktuálnom počasí v užívateľom definovanom meste. Dáta vo formáte JSON sú získavané prostredníctvom http protokolu zo servera ''​openweathermap.org''​. Tie sú následne rozparsované a naformátované do výstupného frameu, ktorý je odoslaný do e-ink displeja prostredníctvom SPI rozhrania a zobrazený. Funkčnosť je možné overiť vo [[https://​drive.google.com/​open?​id=1Qaca2lGZD5fkr57FlzeoJnUczxQI-132|videoukážke]].
 +
 +Po úspešnom zobrazení aktuálneho počasia je displej uvedený do režimu hlbokého spánku, nie však obvod ESP32, nakoľko po prebudení z režimu hlbokého spánku (po volaní funkcie ''​esp_deep_sleep''​) došlo k nešpecifikovanej chybe vedúcej k zlyhaniu programu, ktorá pre časovú tieseň v závere projektu dosiaľ nebola odladená
 +
 +Definíciu mesta, pre ktoré sa má zobrazovať počasie, ako aj prístupových údajov do WiFi siete, do ktorej má byť obvod pripojený, API kľúča pre OpenWeatherMap a iných parametrov, je nutné vykonať priamo v zdrojovom kóde programu obvodu. Z dôvodu nutnosti zoznámiť sa s novým obvodom a jeho funkciami, vývojovým prostredím a preštudovať pomerne veľké množstvo dokumentácie,​ nezostal v rámci projektu čas na pôvodný zámer, ktorým bolo vykonávať všetku konfiguráciu prostredníctvom web stránky (bootstrap). Toto, spolu s ďalšími vecami, ako napr. rozšírenie zobrazenia o predpoveď počasia, jednoduché piktogramy, emailové notifikácie a pod., zostáva námetom pre ďalšiu prácu.
 +
 +[[https://​drive.google.com/​file/​d/​1Pg3luJ6izvvT_yll_Dd6A-uz28w3Sixp/​view?​usp=sharing|Zdrojové súbory]]
 +
 +----
 +====== Zdroje ======
 +KOLBAN, Niel. //​Kolban'​s book on ESP32// [[https://​leanpub.com/​ESP8266_ESP32]]\\
 +[[https://​github.com/​loboris/​ESP32_ePaper_example]]\\
 +[[https://​openweathermap.org/​current]]\\
 +[[https://​www.waveshare.com/​wiki/​4.2inch_e-Paper_Module]]
 +
  
2017/e-ink.1515977982.txt.gz · Poslední úprava: 2018/01/15 01:59 autor: Branislav Michálek