TM1637 7 segmenttinäyttö - saa sen toimimaan!: 5 vaihetta
TM1637 7 segmenttinäyttö - saa sen toimimaan!: 5 vaihetta
Anonim
TM1637 7 -segmenttinäyttö - saa sen toimimaan!
TM1637 7 -segmenttinäyttö - saa sen toimimaan!
TM1637 7 -segmenttinäyttö - saa sen toimimaan!
TM1637 7 -segmenttinäyttö - saa sen toimimaan!

Johdanto No, lopulta hajosin ja päätin kokeilla 7 segmentin näyttöä. Ohjelmoisin mieluummin TFT -kosketuksen tai pelkän TFT -näytön, koska ne ovat joustavia näyttämään paljon tietoa eri näytöillä. 7 -segmenttinen näyttö on niin rajoittava, vaikka sillä olisi laajennettuja numeroita. Uutena ajatuksena päätin kuitenkin tehdä maailmankellon näyttämään ajat ympäri maailmaa. Täydellinen sovellus edulliseen 4 -numeroiseen, 7 -segmenttiseen näyttöön! Joten lisää projektista sen edistyessä, mutta tässä on "löytöjäni" ja ajatuksiani RobotDynin TM1637 -näytöstä.

Vaihe 1: Osat

Osat: TM1637 -näytön kokeiluun tarvitset vain seuraavat asiat:

- TM1637 -näyttö

- RTC tai DHT tietojen lukemiseen - valinnaisesti ilman laitteistoa, tee yksinkertainen laskuri

- Arduino Uno, Mega tai Micro

- Muutama hyppyjohdin

Vaihe 2: Ohjelmistonäkökohtia

Ohjelmistonäkökohdat: Löysin 3 eri kirjastoa käytettäväksi TM1637: n kanssa

- TM1637.h - RobotDynin suosittelema, mutta vanhempi

- TM1637display.h -kirjasto - AVISHORPE näyttää olevan suosikki

- SevenSegmentTM1637.h - Breeme. Useimmat toiminnot ja mahdollisuudet.

Kokeile kaikkia ja katso mitä ajattelet, toistaiseksi olen eniten tyytyväinen TM1637 -näyttökirjastoon.

Vaihe 3: Ensimmäiset ajatukset

Alustavat ajatukset: Kun sain ensimmäisen kerran näyttöni, ostin sen yleisillä 7 -segmenttinäytöillä (12 johtoa) ja joillakin vuororekistereillä. Niiden käyttäminen oli enemmän työtä kuin tarvitsin ja rajoitti minut käyttämään Megaa maailmankellossani. TM1637-näyttö käyttää I2C: tä, joten jopa mikro käsittelee 4-5 näistä näytöistä, mutta vahvistan projektini kehittyessä! Mutta käyttämällä vain (2) GPIO -nastaa kutakin - se on suuri plus.

Laite on erittäin kustannustehokas, vain 1,50 dollaria suuremmalle (50x19 mm) näytölle RobotDyn.comissa.

Helppo asentaa ja käyttää projektissa. Hyvä koko, kirkas näyttö, jota voidaan säätää, 4 kiinnitysreikää (RobotDyn -versio), kaksipääinen pääsy, vain 4 liitäntää (5v, Gnd, Data, Clock), värivaihtoehdot (5) ja”yksinkertainen” ohjelmointi (lue…).

Vaihe 4: Ohjelmointi

Ohjelmointi
Ohjelmointi
Ohjelmointi
Ohjelmointi
Ohjelmointi
Ohjelmointi

Ohjelmointi Tähän mennessä olen ollut onnellisin TM1637display.h -kirjaston kanssa ja käyttänyt sitä saadakseni seuraavat tulokset ja löydökset. Nämä eivät todennäköisesti ole ainoita ongelmia, mutta asiat, joihin olen törmännyt ja löytänyt ratkaisuja.

Siitä ohjelmoinnista nyt. Kun liitin ensin näyttöni ja suoritin kaikkien kolmen kirjaston esimerkit, en saanut mitään. Ei näyttöä, ei lukemista, ei mitään. Itse asiassa se näytti jäädyttävän Arduinon ja kieltäytynyt tuottamasta edes sarjalähtöä. Olen vain valmistaja, mutta en varmasti voinut sotkea tätä yksinkertaista näyttöä! Tutkimuksen jälkeen löysin tietoa monesta paikasta, joten yritän välittää osan löytämistäni.

LCD -näytön tavoin voit tulostaa näyttöön kokonaislukujonon. On olemassa monimutkaisempia tapoja sijoittaa tiedot, mutta ne eivät ole välttämättömiä. Näyttö on rajoitettu merkkijonoilla ja merkeillä ja rajoittaa käytettävissä olevaa joukkoa, joten jos tarvitset tekstiä, nämä eivät ehkä ole paras ratkaisu.

Kaiken tyyppisen "viiveen" käyttäminen näyttää aiheuttavan näytön jäätymisen. Tämä voi olla ainutlaatuista RobotDyn -näytölle, koska muut näyttävät välttävän ongelman, mutta tämä ei ollut ainoa ongelma. Sen kiertämiseksi löysin 2 vaihetta. Ensin katkaisin laitteen takana olevat sisäänrakennetut kondensaattorit - joita olin liian laiska purkamaan. Toiseksi kommentoin kaikkia viivästyksiä. Menestys! Näyttö heräsi eloon. Nyt ei ole mitään tapaa asettaa ajoitusta (kuten laskuria) niin pieneksi kuin ihanteellinen, mutta haluan kellon ja/tai lämpömittarin, joten voin työskennellä tämän kanssa.

RobotDyn -näytössä desimaalipisteet eivät näytä olevan käytettävissä. En ole löytänyt varmaa ratkaisua - enkä tarvitse sitä - mutta ole tietoinen.

Kaksoispisteiden dokumentointi oli hankalaa, mutta löysin melko yksinkertaisen ratkaisun käyttämällä yhden rivin komentoa. En voi saada sitä vilkkumaan helposti, mutta jälleen kerran, sillä se ei ole ongelma projektilleni. Käytä 'display.showNumberDecEx (0, 64);' ja siellä on kaksoispiste.

Jotta näyttö näyttäisi tasaisen lukeman, käytin vain () -lausekkeita toistamaan tuloksen niin kauan kuin haluan sen näkyvän. Antaa vain lisää aliohjelmia soitettavaksi. Mutta otan voiton vastaan.

Eri värien saamiseksi sinun on tilattava väriä vastaava näyttö. Et voi muuttaa näytön väriä. Jos aiot käyttää niitä tällä tavalla, tilaa erä Amazonista, jossa on 5 eri värinäyttöä. RobotDynin avulla tilaat värin tai erän 1 väriä.

Vaihe 5: Johtopäätös

Johtopäätös Tähän mennessä olen löytänyt, mutta jos sinulla on ehdotuksia, otan mielelläni vastaan palautetta tai ehdotuksia. Opettelen edelleen näyttöä ja minulla on paljon opittavaa ja ymmärrettävää niistä. Kaikki muut muistiinpanot ovat tervetulleita. Kiitos ja toivon, että tämä auttoi muita 7 -segmentin näytöstä kiinnostuneita. Nauttia!

Suositeltava: