Sisällysluettelo:

Tehokas ja halpa: Näyttö STM32L4: 13 askelta
Tehokas ja halpa: Näyttö STM32L4: 13 askelta

Video: Tehokas ja halpa: Näyttö STM32L4: 13 askelta

Video: Tehokas ja halpa: Näyttö STM32L4: 13 askelta
Video: MITEN TYTÖT KÄY SALILLA | SKETSI 2024, Marraskuu
Anonim
Image
Image
Johdanto
Johdanto

Tänään puhumme kolmesta aiheesta, joita rakastan ehdottomasti: LCD -näyttö, joka kuluttaa vähän energiaa, STM32 Core Arduinon kanssa ja Arduino Mega Pro Mini. Tämä on erehtymätön esineiden internetin kolmikko. Esittelen sinulle kuusinumeroisen HT1621-LCD-näytön ja luon esimerkkiohjaimen koodilla, joka toimii sekä Arduino Mega Pro Minissä että STM32 L432KC: ssä. Huomionarvoista on, että kahden mikro -ohjaimen lähdekoodi on täsmälleen sama. En myöskään vaihda kiinnitystä. Se on aivan fantastista!

Vaihe 1: Johdanto

Johdanto
Johdanto

HT1621 -nestekidenäytössä on näyttö, jota käytetään yleisesti yleismittarissa, elektronisissa vaa'oissa, elektronisissa kelloissa, lämpömittarissa ja elektronisissa mittauslaitteissa.

• Siinä on 6 numeroa ja 7 segmenttiä

• Se käyttää 3-johtimista SPI-tiedonsiirtoa

• Siinä on taustavalo, joka sopii pimeään ympäristöön

• Sen käyttöjännite on 4,7 ~ 5,2 V.

• Se kuluttaa 4mA taustavalolla

Huomaa, että siinä on enemmän kuin KUUSI numeroa, KOLME desimaalia, ja paristomittari, jossa on KOLME palkkia.

Vaihe 2: Kirjasto käytettäväksi

Käytämme ANXZHU github -käyttäjäkirjastoa, joka on melko yksinkertainen. Se on nähtävissä alkuperäisessä versiossa alla olevasta linkistä:

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

Kirjaston nimi on hieman outo, joten päätin nimetä sen uudelleen (tiedostot, luokat, rakentajat jne.). Sen alkuperäinen nimi on "A6seglcd". Korvasin tämän nimen "lcdlib".

Vaihe 3: Kirjasto

Lisää kirjasto "lcdlib".

Avaa linkki ja lataa kirjasto.

Pura tiedosto ja liitä se Arduino IDE: n kirjastojen kansioon.

C: / Ohjelmatiedostot (x86) / Arduino / kirjastot

Vaihe 4: Esittely

Esittely
Esittely

Arduino mega kokoonpano

Vaihe 5: Esittely

Esittely
Esittely

SMT32 kokoonpano

Vaihe 6: STM32 NUCLEO-L432KC

STM32 NUCLEO-L432KC
STM32 NUCLEO-L432KC

Haluan korostaa tässä, että STM32-L432KC: ssä ei ole sarja-USB-muunninta. Sen sijaan siinä on täysi USB, joka käyttää STMicroelectronics ST-link -protokollaa. Siten se on melko kehittynyt ja mahdollistaa erittäin tehokkaan virheenkorjauksen, jos käytät IR- tai Microvision -tekniikkaa. Ja koska se on Arduino Core (MBED, käyttäen Microsoftin alkuperäistä työkalua), se käyttää erittäin ammattimaisia kääntäjiä. Tarvitseeko minun sanoa muuta?

Vaihe 7: Arduino Mega 2560 PRO MINI

Arduino Mega 2560 PRO MINI
Arduino Mega 2560 PRO MINI

Rakastan myös tätä, koska se on "puhdas" ja "todellinen" Arduino. Se on Mega, jossa on paljon IO: ita. Mutta se on Mini, joten se sopii mihin tahansa. Pidän IO: sta kaikkialla. Tämän kanssa haluan yhdistää Ledin, SPI: n, i2c: n jne. Tässä suhteessa tämä Mega on upea.

Vaihe 8: Kokoonpano

Kokoonpano
Kokoonpano

Kokoonpanossamme urospisteen rivi on sisäpuolella, kun taas naarastappi on uloimmalla puolella, mikä helpottaa työtämme ja yhdistämistä protoboardiin. Muodostamme SPI-yhteyden muistaen, että Arduino Megalla ja tällä Arduino Nano -kloonilla on sama kiinnitys, joka on STM32-L432KC.

Vaihe 9: Ohjelmoi

Teemme hyvin yksinkertaisen ohjelman, johon kirjoitamme erilaisia symboleja (kirjaimia, numeroita ja pisteitä).

Muista, että tämä ohjelma toimii sekä Arduino Mega Pro Minillä että STM32 L432KC: llä.

Vaihe 10: Kirjastot ja muuttujat

Lisäämme sitten viestinnästä vastaavan kirjaston ja suoritamme näytön hallinnan. "Const char" -toiminto paljastaa taulukkotaulukon. Näiden vektoreiden avulla voit viitata näytöllä tulostuvaan merkkiin.

#include // biblioteca para controle do display

lcdlib lcd; // instancia do controlador do display /*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 number = {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}; / *indeksinumero 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 */

Vaihe 11: Asennus

Aloittaaksesi asennuksen määritämme nastat, teemme alkuasetukset ja asetamme näytön puhdistuksen. Päätimme, että näytössä näkyy "Hei", ja tietyn viiveen jälkeen näyttöviesti tyhjennetään.

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

Vaihe 12: Silmukka

Tässä luomme toiminnon nimeltä "writeLoop", joka kirjoittaa sanan LOOP näyttöön ja kirjoittaa sitten kaikki saapumisesi symbolit. Meillä on myös "writeBattery" -toiminto, joka tulostaa akun merkit.

Lopuksi meillä on "lcd.dispnum" -komento, joka kirjoittaa liukulukuarvon.

Vaihe 13: Lataa tiedostot

PDF

INO

Suositeltava: