Kazalo:

Učinkovito in poceni: Zaslon s STM32L4: 13 korakov
Učinkovito in poceni: Zaslon s STM32L4: 13 korakov

Video: Učinkovito in poceni: Zaslon s STM32L4: 13 korakov

Video: Učinkovito in poceni: Zaslon s STM32L4: 13 korakov
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Julij
Anonim
Image
Image
Uvod
Uvod

Danes se bomo pogovarjali o treh temah, ki jih popolnoma obožujem: LCD -zaslon, ki porabi malo energije, STM32 z jedrom Arduino in Arduino Mega Pro Mini. To je nezmotljiva trojka za internet stvari. Nato vam bom predstavil šestmestni LCD zaslon HT1621 in ustvaril primer nadzora s kodo, ki deluje tako na Arduino Mega Pro Mini kot na STM32 L432KC. Pomembna podrobnost je, da je izvorna koda za dva mikrokrmilnika popolnoma enaka. Tudi pripenjanja ne bom spreminjal. To je absolutno fantastično!

1. korak: Uvod

Uvod
Uvod

LCD zaslon HT1621 ima zaslon, ki se običajno uporablja v multimetrih, elektronskih tehtnicah, elektronskih urah, termometrih in elektronskih merilnih napravah.

• Ima 6 številk s 7 segmenti

• Uporablja 3-žično komunikacijo SPI

• Ima osvetlitev ozadja, ki je primerna za temna okolja

• Njegova delovna napetost je 4,7 ~ 5,2 V.

• Porabi 4 mA z osvetlitvijo ozadja

Upoštevajte, da ima več kot ŠEST števk, TRI decimalna mesta in merilnik baterije s TRI črticami.

2. korak: Knjižnica za uporabo

Uporabili bomo uporabniško knjižnico github ANXZHU, ki je precej preprosta. V spodnji povezavi si jo lahko ogledate v izvirni različici:

github.com/anxzhu/segment-lcd-with-ht1621

Ime knjižnice je nekoliko čudno, zato sem se odločil, da ga preimenujem (datoteke, razredi, graditelji itd.). Prvotno ime je "A6seglcd". To ime sem zamenjal z "lcdlib".

3. korak: Knjižnica

Dodajte knjižnico "lcdlib".

Odprite povezavo in prenesite knjižnico.

Razpakirajte datoteko in jo prilepite v mapo knjižnice Arduino IDE.

C: / Programske datoteke (x86) / Arduino / knjižnice

4. korak: demonstracija

Demonstracija
Demonstracija

Arduino mega montaža

5. korak: demonstracija

Demonstracija
Demonstracija

SMT32 sklop

6. korak: STM32 NUCLEO-L432KC

STM32 NUKLEO-L432KC
STM32 NUKLEO-L432KC

Tukaj želim poudariti, da STM32-L432KC nima serijskega pretvornika USB. Namesto tega ima polni USB, ki uporablja STMicroelectronics ST-link protokol. Tako je precej izpopolnjen in omogoča zelo učinkovito odpravljanje napak, če uporabljate IR ali Microvision. Ker je Arduino Core (MBED, uporablja Microsoftovo domače orodje), uporablja visoko profesionalne prevajalnike. Ali moram še kaj povedati?

7. korak: Arduino Mega 2560 PRO MINI

Arduino Mega 2560 PRO MINI
Arduino Mega 2560 PRO MINI

Tudi to mi je všeč, saj je "čisti" in "pravi" Arduino. To je Mega, z veliko IO -ji. Ampak to je Mini, zato se prilega kamor koli. IO mi je všeč povsod. S tem rad povežem Led, SPI, i2c itd. V tem pogledu je ta Mega čudovita.

8. korak: Montaža

Montaža
Montaža

V našem sklopu je vrsta moškega zatiča na notranji strani, ženski pa na zunanji strani, kar olajša naše delo in povezavo s protoborom. Vzpostavimo povezavo SPI, pri čemer se spomnimo, da imata Arduino Mega in ta klon Arduino Nano isti pinning, ki je STM32-L432KC.

9. korak: Program

Naredili bomo zelo preprost program, v katerega bomo na zaslon zapisali različne simbole (črke, številke in točke).

Ne pozabite, da ta program deluje tako na Arduino Mega Pro Mini kot na STM32 L432KC.

10. korak: Knjižnice in spremenljivke

Nato bomo vključili knjižnico, ki je odgovorna za komunikacijo, in sprožili nadzor nad zaslonom. Funkcija "const char" razkrije matrično matriko. Skozi te vektorje se boste sklicevali na znak, ki se natisne na zaslonu.

#include // biblioteca para controle do display

lcdlib lcd; // trenutni nadzor ali prikaz /*0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, b, C, c, d, E, F, H, h, L, n, N, P, r, t, U, -, bat, pf, '', */ const char num = {0x7D, 0x60, 0x3E, 0x7A, 0x63, 0x5B, 0x5F, 0x70, 0x7F, 0x7B, 0x77, 0x4F, 0x1D, 0x0E, 0x6E, 0x1F, 0x17, 0x67, 0x47, 0x0D, 0x46, 0x75, 0x37, 0x06, 0x0F, 0x6D, 0x02, 0x80, 0xFF, 0x00}; / *indeksna številka 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 */

11. korak: Nastavitev

Za zagon nastavitve bomo definirali zatiče, izvedli začetno nastavitev in nastavili čiščenje zaslona. Ugotovili smo, da se na zaslonu prikaže "Hello", po določeni zamudi pa se sporočilo na zaslonu počisti.

void setup () {lcd.run (2, 3, 4, 5); // [cs wr data led+] definição dos pinos lcd.conf (); // konfiguracija inicial lcd.clr (); // limpa o display // escreve HELLO lcd.display (10, št. [17]); lcd.display (8, št. [15]); lcd.display (6, št. [19]); lcd.display (4, številka [19]); lcd.display (2, številka [0]); // fim HELLO zakasnitev (1000); lcd.clr (); // limpa o display}

12. korak: Zanka

Tukaj ustvarimo funkcijo, imenovano "writeLoop", ki bo na zaslon zapisala besedo LOOP, nato pa vse simbole našega niza. Imamo tudi funkcijo "writeBattery", ki natisne oznake baterij.

Končno imamo ukaz "lcd.dispnum", ki zapiše vrednost plavajoče vejice.

Korak: Prenesite datoteke

PDF

JAZ NE

Priporočena: