Sisällysluettelo:

1602 LCD -kontrastinhallinta Arduinolta: 5 vaihetta
1602 LCD -kontrastinhallinta Arduinolta: 5 vaihetta

Video: 1602 LCD -kontrastinhallinta Arduinolta: 5 vaihetta

Video: 1602 LCD -kontrastinhallinta Arduinolta: 5 vaihetta
Video: 7 проектов. Сборка светодиодного ЖК-будильника с использованием DS1307 и Arduino | Урок 105 2024, Heinäkuu
Anonim
Image
Image
Tyypillinen käyttötapaus
Tyypillinen käyttötapaus

Työskennellessäni uuden projektin parissa törmäsin ongelmaan, jossa halusin ohjata 1602 LCD -näytön taustavaloa ja kontrastia Arduinon kautta, mutta näyttö oli todella välkkyvä.

Vaihe 1: Tyypillinen käyttötapaus

Tyypillinen käyttötapaus
Tyypillinen käyttötapaus

Tyypillisessä käyttötapauksessa näytön kontrastia säädetään muuttuvan vastuksen kautta taulukon mukaan. Tällöin vastuksen kautta voimme säätää jännitettä, joka näkyy V0 -nastassa, ja kontrastia säädetään vastaavasti. Arduinolla paras asia, jonka voimme lähettää, on eri syklin PWM -signaali, mutta valitettavasti moduuli ei ole tyytyväinen näyttämään sitä.

Vaihe 2: Esimerkissä käytetty koodi

Esimerkissä käytetty koodi
Esimerkissä käytetty koodi
Esimerkissä käytetty koodi
Esimerkissä käytetty koodi

Ennen kuin ryhdyn kaavioon, kuinka voimme korjata tämän, haluan selittää käyttämäni koodin.

Ensimmäinen asia, joka meidän on tehtävä, on sisällyttää nestekiden kirjasto, jotta voimme muodostaa yhteyden näyttöön. Seuraavaksi asetamme LCD -näytön nastat, joihin näyttö on kytketty, ja lisäksi määritämme nastat, joihin taustavalo ja kontrastinapit on kytketty. Näytön kontrastin säätötappi on V0 ja se on liitetty Arduinon nastaan 6 ja taustavalon ohjaustappi on merkitty A: ksi ja koska tämä on pohjimmiltaan LED, se on kytketty 220 ohmin vastuksen kautta Arduinon nastaan 10.

Asetustoiminnossa asetamme ensin näytön kirkkauden maksimiin ja aloitamme sitten viestinnän nestekidenäytön kanssa. Varmistaaksemme, että se toimii oikein, näytämme viestin "hei maailma" ja odotamme noin puoli sekuntia, jotta voimme varmistaa, että lähtö on kunnossa.

Hyvin usein V0 -nastan tilasta riippuen saatat kohdata ongelman, ettei mitään näytetä, vaikka odotukset olisivat erilaiset. Syynä tähän on kontrastin pin arvo. Jos kontrasti on asetettu liian suureksi, näyttö on tuskin näkyvissä, joten meidän on vähennettävä sitä.

Koodin silmukkaosassa poistamme ensin nestekidenäytön sisällön ja koska muutamme ohjelmallisesti kontrastia, näytämme tekstin ja silmukassa päivitämme nastan ulostulon ja näytämme nykyisen arvon toiselle riville.

Vaihe 3: Ota alipäästösuodatin käyttöön

Ota käyttöön alipäästösuodatin
Ota käyttöön alipäästösuodatin
Ota käyttöön alipäästösuodatin
Ota käyttöön alipäästösuodatin
Ota käyttöön alipäästösuodatin
Ota käyttöön alipäästösuodatin

Kuten huomaat, tämä näyttää toimivan, mutta näyttö on välkkyvä. Syynä tähän on se, että näyttö odottaa kiinteää jännitettä, mutta sen sijaan se saa PWM -signaalin Arduinolta. Tämän korjaamiseksi lisäämme hyvin yksinkertaisen alipäästösuodattimen, jotta lähtöjännite voidaan suodattaa ja saamme suhteellisen vakaan lähdön.

Alipäästösuodatin koostuu 1 kOhm: n vastuksesta, joka toisella puolella on kytketty Arduinon nastaan 6 ja sitten näytön V0: een. 10 uF: n kondensaattori on liitetty negatiivisella puolella maadoitukseen ja positiivinen V0 -napaan. Vastus lataa kondensaattorin PWM -pulsseilla ja käyttöjaksoista riippuen se ladataan eri jännitteeseen.

Vaihe 4: Ohjelmoi taustavaloa

Ohjaa taustavaloa ohjelmallisesti
Ohjaa taustavaloa ohjelmallisesti

Samoin kuin kontrastin asettamisessa, voimme tehdä saman taustavalon tapille ilman alipäästösuodattimen lisäämistä, koska taustavalon LED ei ole näkyvissä, kun se kytketään päälle ja pois päältä niin nopeasti.

Vaihe 5: Nauti

Nauttia!
Nauttia!

Toivon, että tämä hyvin yksinkertainen temppu auttaa sinua seuraavassa projektissasi. Jos pidit tästä ohjeesta, voit seurata minua ja tilata YouTube -kanavani.

Maista koodi YouTubessa!

Kippis!

Suositeltava: