Sisällysluettelo:

Staattisen LCD -ohjaimen tekeminen I²C -liitännällä: 12 vaihetta
Staattisen LCD -ohjaimen tekeminen I²C -liitännällä: 12 vaihetta

Video: Staattisen LCD -ohjaimen tekeminen I²C -liitännällä: 12 vaihetta

Video: Staattisen LCD -ohjaimen tekeminen I²C -liitännällä: 12 vaihetta
Video: Изучите Arduino за 30 минут: примеры и проекты 2024, Heinäkuu
Anonim
Staattisen LCD -ohjaimen tekeminen I²C -liitännällä
Staattisen LCD -ohjaimen tekeminen I²C -liitännällä

Nestekidenäyttöjä (LCD) käytetään laajalti kaupallisiin ja teollisiin sovelluksiin niiden hyvien visuaalisten ominaisuuksien, edullisen hinnan ja alhaisen virrankulutuksen vuoksi. Nämä ominaisuudet tekevät nestekidenäytöstä vakioratkaisun paristokäyttöisille laitteille, kuten kannettaville laitteille, laskimille, kelloille, radioille jne.

Jotta nestekidenäytön näyttöä voidaan ohjata oikein, nestekidenäytön elektronisen ohjaimen on luotava sopivat jänniteaaltomuodot nestekidenäytöille. Aaltomuotojen tulisi olla AC (vaihtovirta), koska DC (tasavirta) jännitteet vahingoittavat laitetta pysyvästi. Asianmukainen ohjain toimittaisi nämä signaalit nestekidenäyttöön pienimmällä virrankulutuksella.

On olemassa kahdenlaisia nestekidenäyttöjä, Staattinen, joissa on vain yksi taustalevy ja yksi tappi yksittäisten segmenttien hallintaan, ja Multiplexed, joissa on useita taustalevyjä ja useita segmenttejä, jotka on kytketty kullekin tapille.

Tämä opas esittelee yhden staattisen LCD -ohjaimen suunnittelun SLG46537V GreenPAK ™ -laitteen kanssa. Suunniteltu LCD -ohjain ajaisi jopa 15 nestekidenäytön segmenttiä käyttämällä muutamaa virran virran mikroampeeria ja tarjoaa I²C -liitännän ohjaukseen.

Seuraavissa osioissa näytetään:

● perustiedot LCD -näytöistä;

● SLG46537V GreenPAK LCD -ohjaimen yksityiskohtainen suunnittelu;

● kuinka ajaa seitsemän segmentin 4-numeroisella staattisella nestekidenäytöllä kahdella GreenPAK-laitteella.

Alla kuvattiin vaiheet, jotka tarvitsivat ymmärtääksesi, miten ratkaisu on ohjelmoitu luomaan staattinen LCD -ohjain, jossa on I²C -liitäntä. Jos haluat vain saada ohjelmoinnin tuloksen, lataa GreenPAK -ohjelmisto nähdäksesi jo valmistuneen GreenPAK -suunnittelutiedoston. Liitä GreenPAK -kehityssarja tietokoneeseesi ja napsauta ohjelmaa luodaksesi staattisen LCD -ohjaimen, jossa on I²C -liitäntä.

Vaihe 1: Nestekidenäyttöjen perusteet

Nestekidenäytön perusteet
Nestekidenäytön perusteet
Nestekidenäytön perusteet
Nestekidenäytön perusteet

Nestekidenäyttö (LCD) on tekniikka, joka ei säteile valoa, vaan se ohjaa vain ulkoisen valonlähteen kulkua. Tämä ulkoinen valonlähde voi olla käytettävissä oleva ympäristön valo heijastavalla näyttötyypillä tai taustavalon ledin tai lampun valo läpäisevällä näyttötyypillä. Nestekidenäytöt on valmistettu kahdesta lasilevystä (ylä- ja alaosa), niiden välissä ohut kerros nestekiteitä (LC) ja kaksi valopolarisaattoria (sovellushuomautus AN-001-LCD-tekniikan perusteet, Hitachi, sovellushuomautus AN-005-näyttö Polarisointi on kevyt sähkömagneettisen kentän valosuodatin. Vain oikeassa sähkömagneettisessa kentässä olevat valokomponentit kulkevat polarisaattorin läpi, kun taas muut komponentit ovat tukossa.

Nestekide on orgaaninen materiaali, joka kiertää valon sähkömagneettista kenttää 90 astetta tai enemmän. Kuitenkin, kun sähkökenttä kohdistetaan LC: hen, se ei enää pyöritä valoa. Kun näytön ylä- ja alaosaan on lisätty läpinäkyviä elektrodeja, on mahdollista ohjata, milloin valo kulkee läpi ja milloin ei, ulkoisen sähkökentän lähteen avulla. Kuva 1 (katso sovellushuomautus AN-001-LCD-tekniikan perusteet, Hitachi) yllä kuvaa tätä ohjausta. Kuvassa 1 näyttö on pimeä, kun sähkökenttää ei ole. Tämä johtuu siitä, että molemmat polarisaattorit suodattavat valon samaan suuntaan. Jos polarisaattorit ovat ortogonaalisia, näyttö on pimeä, kun sähkökenttä on läsnä. Tämä on heijastavien näyttöjen yleisin tilanne.

Pienintä sähkökenttää tai jännitettä LCD: n ohjaamiseksi kutsutaan ON -kynnykseksi. LC vaikuttaa vain jännitteeseen, ja LC -materiaalissa ei ole juurikaan virtaa. Nestekidenäytön elektrodit muodostavat pienen kapasitanssin, ja tämä on kuljettajan ainoa kuorma. Tästä syystä nestekidenäyttö on pienitehoinen laite visuaalisten tietojen näyttämiseksi.

On kuitenkin tärkeää huomata, että nestekidenäyttö ei voi toimia tasavirralla (DC) liian pitkään. DC-jännitteen käyttö aiheuttaa kemiallisia reaktioita LC-materiaalissa ja vahingoittaa sitä pysyvästi (Sovellushuomautus AN-001-LCD-tekniikan perusteet, Hitachi). Ratkaisu on käyttää vaihtoehtoista jännitettä (AC) nestekidenäyttöjen elektrodeissa.

Staattisissa nestekidenäytöissä taustalevyelektrodi on rakennettu yhteen lasiin ja yksittäiset LCD -segmentit tai pikselit asetetaan toiseen lasiin. Tämä on yksi yksinkertaisimmista LCD -tyypeistä ja paras kontrastisuhde. Tämäntyyppinen näyttö vaatii kuitenkin yleensä liikaa nastoja kunkin yksittäisen segmentin ohjaamiseen.

Yleensä kuljettajan ohjain tuottaa neliöaaltosignaalin taustalevylle ja kellosignaalin etutasossa oleville segmenteille yhdessä. Kun taustalevyn kello on segmenttikellon kanssa samassa vaiheessa, molempien tasojen välinen keskimääräisen neliön (RMS) jännite on nolla ja segmentti on läpinäkyvä. Jos RMS -jännite on korkeampi kuin LCD ON -kynnys, segmentti muuttuu tummaksi. Aaltomuodot taustalevylle, päälle ja pois segmentille on esitetty kuvassa 2. Kuten kuviosta voidaan nähdä, ON-segmentti on vaiheen ulkopuolella taustalevyn signaaliin nähden. Pois päältä -segmentti on vaiheessa suhteessa taustalevyn signaaliin. Käytetty jännite voi olla 3–5 volttia edullisia ja pienitehoisia näyttöjä varten.

Nestekidenäytön taustalevyn ja segmenttien kellosignaali on yleensä alueella 30 - 100 Hz, joka on minimi taajuus välttääkseen visuaalisen välkkymisen LCD -näytössä. Korkeampia taajuuksia vältetään koko järjestelmän virrankulutuksen vähentämiseksi. Nestekidenäytöstä ja ohjaimista koostuva järjestelmä kuluttaa vähän virtaa mikroampeerien suuruusluokassa. Siksi ne sopivat täydellisesti pienitehoisiin ja akkuvirtalähteisiin.

Seuraavissa osissa esitetään yksityiskohtaisesti LCD -staattinen ohjain, jossa on GreenPAK -laite, joka voi tuottaa taustalevyn kellosignaalin ja yksittäisen segmentin kellosignaalin kaupalliselle nestekidenäytölle.

Vaihe 2: GreenPAK Designin peruslohkokaavio

GreenPAK Designin peruslohkokaavio
GreenPAK Designin peruslohkokaavio
GreenPAK Designin peruslohkokaavio
GreenPAK Designin peruslohkokaavio

Lohkokaavio, joka havainnollistaa GreenPAK -rakennetta, on esitetty kuvassa 3. Suunnittelun peruslohkot ovat I²C -liitäntä, lähtösegmentin ohjain, sisäinen oskillaattori ja taustalevyn kellon lähteen valitsin.

I²C -liitäntälohko ohjaa jokaista yksittäistä segmenttilähtöä ja nestekidenäytön taustalevyn kellolähdettä. I²C -liitäntälohko on ainoa järjestelmän tulo segmenttilähdön ohjaukseen.

Kun sisäisen segmentin ohjauslinja on asetettu (korkea taso), vastaava LCD -segmentti on tumma läpinäkymätön. Kun sisäisen segmentin ohjauslinja nollataan (matala taso), vastaava LCD -segmentti on läpinäkyvä.

Jokainen sisäisen segmentin ohjauslinja on kytketty lähtöohjaimeen. Lähtösegmentin ohjainlohko luo vaiheen kellosignaalin suhteessa taustalevyn kelloon läpinäkyville segmenteille. Pimeillä segmenteillä tämä signaali on vaiheen ulkopuolella suhteessa taustalevyn kelloon.

Taustakellon lähde on valittu myös I²C -liitännällä. Kun sisäinen taustalevyn kellolähde on valittu, sisäinen oskillaattori kytkeytyy päälle. Sisäinen oskillaattori tuottaa 48 Hz: n kellotaajuuden. Lähtösegmentin ohjainlohko käyttää tätä signaalia, ja se on osoitettu taustalevyn kellon ulostulonapille (GreenPAK -nasta 20).

Kun ulkoinen taustalevyn kellolähde on valittu, sisäinen oskillaattori kytkeytyy pois päältä. Lähtösegmentin ohjaimen viite on ulkoinen taustalevyn kellotulo (GreenPAK -nasta 2). Tässä tapauksessa taustalevyn kellon ulostulonasta voidaan käyttää segmentin lisälinjana, segmentti OUT15.

Samalla I²C -linjalla voidaan käyttää useampaa kuin yhtä GreenPAK -laitetta. Tätä varten jokainen laite on ohjelmoitava eri I²C -osoitteella. Tällä tavalla on mahdollista laajentaa käytettävien LCD -segmenttien määrää. Yksi laite on määritetty tuottamaan taustalevyn kellolähde, joka ajaa 14 segmenttiä, ja toiset on määritetty käyttämään ulkoista taustalevyn kellolähdettä. Jokainen lisälaite voisi ajaa tällä tavalla enemmän kuin 15 segmenttiä. Voit liittää jopa 16 laitetta samaan I²C -linjaan ja sitten ohjata jopa 239 LCD -segmenttiä.

Tässä Instructable -ohjelmassa tätä ideaa käytetään ohjaamaan 29 LCD -segmenttiä kahdella GreenPAK -laitteella. Laitteen pinout -toiminnot on esitetty yhteenvetona taulukossa 1.

Vaihe 3: Suunnittele virrankulutus

Tärkeä huolenaihe tässä suunnittelussa on nykyinen kulutus, jonka pitäisi olla mahdollisimman pieni. GreenPAK -laitteen arvioitu lepovirta on 0,75 µA 3,3 V: n syöttökäytössä ja 1,12 µA 5 V: n syöttökäytössä. Sisäisen oskillaattorin virrankulutus on 7,6 µA ja 8,68 µA 3,3 V: n ja 5 V: n virransyöttökäytössä. Sen ei odoteta lisäävän merkittävästi virrankulutusta kytkentähäviöistä, koska tämä malli toimii alhaisella kellotaajuudella. Tämän rakenteen arvioitu enimmäisvirta on pienempi kuin 15 µA, kun sisäinen oskillaattori on päällä, ja 10 µA, kun sisäinen oskillaattori on pois päältä. Molemmissa tilanteissa kulunut mitattu virta näkyy kohdassa Testitulokset.

Vaihe 4: GreenPAK -laitteen kaavio

GreenPAK -laitteen kaavio
GreenPAK -laitteen kaavio

GreenPAK -ohjelmistolla suunniteltu projekti on esitetty kuvassa 4. Tätä kaaviokuvaa kuvataan käyttäen peruslohkokaavioita viitteenä.

Vaihe 5: I²C -käyttöliittymä

I²C -käyttöliittymä
I²C -käyttöliittymä
I²C -käyttöliittymä
I²C -käyttöliittymä

I²C -liitäntälohkoa käytetään laitteen toiminnanohjauksen pääohjauslohkona. Lähikuva lohkoyhteyksistä ja määritetyistä ominaisuuksista on esitetty kuvassa 5.

Tämä lohko on liitetty PIN 8: een ja PIN 9: ään, jotka ovat I²C SCL- ja SDA -nastoja. Laitteen sisällä I²C -lohkossa on 8 virtuaalituloa. Kunkin virtuaalitulon alkuarvo näkyy ominaisuusikkunassa (katso kuva 5). Virtuaalituloja OUT0 - OUT6 käytetään segmentin ohjauslinjoina. Nämä ohjauslinjat vastaavat segmenttilähtöä 1 - segmenttilähtöä 7 ja on kytketty segmenttilähdön ohjaimeen. Virtuaalituloa OUT7 käytetään taustalevyn kellolähteen valitsinlinjan ohjaimena verkkonimellä BCKP_SOURCE. Tätä verkkoa käyttävät muut lohkot suunnittelussa. I²C -ohjauskoodille on määritetty eri arvo kullekin projektin IC: lle.

Asynchronous State Machine (ASM) -ulostulossa on saatavana vielä 8 sisäisen segmentin ohjauslinjaa, kuten yllä olevassa kuvassa 6 esitetään. Segmentin tulostusriviä 8 (SEG_OUT_8 ominaisuusikkunassa) segmentin tulostuslinjan 15 (SEG_OUT_15) kautta ohjataan ASM -lähdöllä tilassa 0. ASM -lohkossa ei ole tilasiirtymää, se on aina tilassa 0. ASM: n lähdöt ovat kytketty segmentin lähtöohjaimiin.

Segmentin lähtöohjaimet tuottavat laitteen lähtösignaalin.

Vaihe 6: Lähtösegmentin ohjain

Lähtösegmentin ohjain on lähinnä XUT -logiikkaportiksi määritetty LUT (Lookup table). Jokaisen lähtösegmentin on oltava XOR -portti, joka on kytketty segmentin ohjauslinjaan ja taustalevyn kelloon (BCKP_CLOCK). XOR-portti on vastuussa vaihe- ja vaiheen ulkopuolisen signaalin tuottamisesta ulostulosegmentille. Kun segmentin ohjauslinja on korkealla tasolla, XOR-portin ulostulo kääntää taustalevyn kellosignaalin ja muodostaa vaiheen ulkopuolisen signaalin segmenttitapille. Tässä tapauksessa LCD -taustalevyn ja LCD -segmentin välinen jänniteero asettaa LCD -segmentin tummaksi segmentiksi. Kun segmenttien ohjauslinja on matalalla tasolla, XOR-portin lähtö seuraa taustalevyn kellosignaalia ja luo sitten vaihesignaalin segmenttitapille. Koska tässä tapauksessa LCD -taustalevyn ja segmentin väliin ei syötetä jännitettä, segmentti on läpinäkyvä valolle.

Vaihe 7: Sisäinen oskillaattori ja taustalevyn kellon lähteen ohjaus

Sisäinen oskillaattori ja taustalevyn kellon lähteen ohjaus
Sisäinen oskillaattori ja taustalevyn kellon lähteen ohjaus

Sisäistä oskillaattoria käytetään, kun I²C -liitännän signaali BCKP_CLOCK on asetettu korkealle. Lähikuva kellon lähteen ohjauskaaviosta on esitetty yllä olevassa kuvassa 7.

Oskillaattori on konfiguroitu 25 kHz: n RC -taajuudeksi, ja korkein lähtöjakaja on käytettävissä oskillaattorissa OUT0 (8/64). Koko kokoonpano näkyy kuvan 7 ominaisuusikkunassa. Tällä tavalla sisäinen oskillaattori tuottaa 48 Hz: n kellotaajuuden.

Oskillaattori on aktiivinen vain, kun BCKP_SOURCE -signaali on korkealla tasolla yhdessä POR -signaalin kanssa. Tämä ohjaus tehdään yhdistämällä nämä kaksi signaalia 4-L1 LUT: n NAND-porttiin. NAND -lähtö kytketään sitten oskillaattorin virrankatkaisun ohjaustapin tuloon.

Signaali BCKP_SOURCE ohjaa 3-L10 LUT: lla rakennettua MUX-laitetta. Kun BCKP_SOURCE -signaali on alhaisella tasolla, taustalevyn kellolähde tulee PIN2 -koodista. Kun tämä signaali on korkealla tasolla, taustalevyn kellolähde tulee sisäisestä oskillaattorista.

Vaihe 8: Taustalevyn kellon lähtö tai segmentin 15 ulostulonapin ohjaus

Taustalevyn kellon lähtö tai segmentin 15 ulostulonapin ohjaus
Taustalevyn kellon lähtö tai segmentin 15 ulostulonapin ohjaus

Tässä mallissa olevalla nastalla 20 on kaksitoiminen toiminto, joka riippuu valitusta taustalevyn kellolähteestä. Tämän nastan toimintaa ohjataan yhdellä 4-tulolla LUT, kuten kuvassa 8. 4-bittisellä LUT: lla on mahdollista liittää XOR-portin toiminta lähtöön MUX. Kun BCKP_SOURCE -signaali on korkealla tasolla, LUT -lähtö seuraa sisäistä oskillaattorikelloa. Sitten nasta 20 toimii taustalevyn kellolähtönä. Kun BCKP_SOURCE -signaali on alhaisella tasolla, LUT -lähtö on XOR -operaatio välillä SEG_OUT_15, ASM -lähdöstä ja taustalevyn kellosignaalista. 4-bittinen LUT-kokoonpano tämän toiminnon suorittamiseksi on esitetty kuvassa 8.

Vaihe 9: LCD -järjestelmän prototyyppi

LCD -järjestelmän prototyyppi
LCD -järjestelmän prototyyppi
LCD -järjestelmän prototyyppi
LCD -järjestelmän prototyyppi

GreenPAK -suunnitteluratkaisun käytön osoittamiseksi leipälevylle koottiin LCD -järjestelmän prototyyppi. Prototyypin osalta seitsemän segmentin 4-numeroista staattista nestekidenäyttöä ohjaavat kaksi GreenPAK-laitetta DIP-kortilla. Yksi laite (IC1) käyttää sisäistä oskillaattoria LCD -taustalevyn ohjaamiseen ja toinen laite (IC2) käyttää tätä signaalia taustalevyn tuloreferenssinä. Molempia IC: itä ohjataan I²C -liitännän kautta STM32F103C8T6 -mikrokontrollerilla (MCU) minimikehityskortilla.

Kuva 9 esittää kaaviota kahden GreenPAK -piirin, LCD -näytön ja MCU -kortin välisistä yhteyksistä. Kaaviossa GreenPAK -laite, jossa on U1 (IC1) -viite, ajaa LCD -numerot yksi ja kaksi (nestekidenäyttö vasen puoli). GreenPAK -laite, jossa on U2 (IC2) -viite, ajaa LCD -numerot kolme ja neljä sekä COL -segmentti (LCD oikea puoli). Molempien laitteiden virtalähde tulee mikro -ohjaimen kehityskortin säätimestä. Jokaisen GreenPAK -laitteen virtalähteen ja VDD -nastojen väliin lisätään kaksi irrotettavaa hyppyjohtoa virtamittausta varten yleismittarilla.

Kuva kootusta prototyypistä on esitetty kuvassa 10.

Vaihe 10: LCD -ohjauksen I²C -komennot

I²C LCD -ohjauksen komennot
I²C LCD -ohjauksen komennot
I²C LCD -ohjauksen komennot
I²C LCD -ohjauksen komennot
I²C LCD -ohjauksen komennot
I²C LCD -ohjauksen komennot

Leipälevyn kaksi GreenPAK -laitetta on ohjelmoitu samalla rakenteella, paitsi Control Byte -arvolla. IC1: n ohjaustavu on 0 (I²C -osoite 0x00), kun taas I²C -ohjaustavu on 1 (I²C -osoite 0x10). Näyttösegmenttien ja laiteajureiden väliset yhteydet on esitetty yhteenvetona yllä olevassa taulukossa.

Liitännät valittiin tällä tavalla selkeämmän kaavion luomiseksi ja leipälevyliitosten kokoamisen yksinkertaistamiseksi.

Segmentin lähtöä ohjataan I²C -kirjoituskomennoilla I²C -virtuaalituloille ja ASM -lähtörekistereille. Kuten sovellushakemuksessa AN-1090 Simple I²C IO -ohjaimet, joissa on SLG46531V (ks. Sovellushuomautus AN-1090 Simple I²C IO -ohjaimet, joissa SLG46531V, Dialog Semiconductor), I²C-kirjoituskomento on rakennettu seuraavasti:

● Käynnistä;

● Ohjaustavu (R/W -bitti on 0);

● Word -osoite;

● Tiedot;

● Pysäytä.

Kaikki I²C -kirjoituskomennot tehdään Word -osoitteisiin 0xF4 (I²C -virtuaalitulot) ja 0xD0 (ASM -lähtötila 0). Taulukossa 3 on yhteenveto komennoista, jotka kirjoitetaan IC1: een ja ohjataan nestekidenäytön numeroita 1 ja 2. Komentosarjan esityksessä avoin hakasulku "[" tarkoittaa käynnistyssignaalia ja sulkeva hakasulku "]" tarkoittaa pysäytyssignaalia.

Kaksi tavua yllä ohjaavat LCD -numeron 1 ja numeron 2 segmenttejä yhdessä. Tässä lähestymistapana on käyttää yksittäistä hakutaulukkoa (LUT) ohjelmistossa kullekin numerolle ottaen huomioon molempien tavujen segmentit. Hakutaulukon tavuarvot on sekoitettava bittikohtaisella TAI -toiminnolla ja lähetettävä sitten IC: lle. Taulukko 4 esitti tavu0- ja tavu1 -arvot kullekin numeeriselle arvolle, joka tulisi kirjoittaa kuhunkin näyttöön.

Jos esimerkiksi haluat kirjoittaa numeroon 1 numeron 3 ja numeroon 2 numeron 4, tavu0 on 0xBD (0x8D bittikohtaisesti TAI 0xB0) ja tavu 1 on 0x33 (0x30 bittiä TAI 0x03).

Komento kirjoittaa IC2: een ja ohjata numeroa 3 ja 4 on kuvattu taulukossa 5.

Numeroiden 3 ja 4 ohjauslogiikka on kuin numeroiden 1 ja 2 ohjaus. Taulukossa 6 on esitetty näiden kahden numeron LUT.

IC2: n ero on COL -segmentti. Tätä segmenttiä hallitsee Byte1. Jos haluat asettaa tämän segmentin tummaksi, sinun on suoritettava bittikohtainen TAI -toiminto tavun1 ja arvon 0x40 välillä.

Vaihe 11: LCD -testin I²C -komennot

I²C LCD -testin komennot
I²C LCD -testin komennot

LCD -testiä varten kehitettiin laiteohjelmisto C -kielellä MCU -kortille. Tämä laiteohjelmisto lähettää komentosarjan molemmille leipälevyn IC -laitteille. Tämän laiteohjelmiston lähdekoodi on Liite -osiossa. Koko ratkaisu on kehitetty Atollic TrueStudion avulla STM32 9.0.1 IDE: lle.

Komentojen järjestys ja näytössä näkyvät arvot on esitetty yhteenvetona taulukossa 7 edellä.

Vaihe 12: Testitulokset

Testitulokset
Testitulokset
Testitulokset
Testitulokset

Prototyyppitesti koostuu näyttöarvojen tarkistamisesta MCU -komennon jälkeen ja virta -altaan mittaamisesta kullakin IC: llä käytön aikana.

Kuvat kunkin nestekidenäytön kullekin komennolle on esitetty taulukossa 8 edellä.

Kunkin laitteen virranpoisto mitattiin yleismittarilla alimmalla 200 µA virta -alueella. Kuvat kunkin laitteen mitatusta virrasta käynnistyksen ja normaalikäytön aikana on esitetty taulukossa 9.

Johtopäätös ja tulokset

Esitettiin pienitehoisen staattisen LCD -ohjaimen suunnittelu GreenPAK -laitteella. Tämä malli osoittaa selvästi yhden GreenPAK -laitteiden suurimmista ominaisuuksista: niiden alhaisen lepovirran. Koska GreenPAK-laitteet ovat laitteistopohjainen ratkaisu, on mahdollista työskennellä matalilla taajuuksilla, tässä tapauksessa 48 Hz. MCU -pohjainen ratkaisu vaatii korkeampaa toimintataajuutta, myös ajoittain lyhyitä aikoja, ja sitten se kuluttaa enemmän tehoa. Ja kun verrataan GreenPAK -laitetta CPLD: hen (Complex Programmable Logic Device), on selvää, että yleensä CPLD: n lepovirta on suurempi kuin 20 µA.

On mielenkiintoista huomata, että tätä suunnittelua voitaisiin helposti muokata, jotta se sopisi paremmin tietyn projektin vaatimuksiin. Hyvä esimerkki on segmenttien ohjaimien pinout. Ne voidaan helposti vaihtaa yksinkertaistamaan piirilevyä ja ohjelmistokehitystä samanaikaisesti. Tämä on mielenkiintoinen ominaisuus, kun laitetta verrataan valmiiseen ASIC-järjestelmään (Application Specific Integrated Circuit). Yleensä ASIC: t on suunniteltu sopimaan monenlaisiin sovelluksiin, ja alustava ohjelmistorutiini on kirjoitettava IC: n määrittämiseksi oikein ennen käyttöä. Konfiguroitava laite voitaisiin suunnitella käynnistymään käyttövalmiiksi virran kytkemisen jälkeen. Tällä tavalla on mahdollista lyhentää ohjelmiston kehitysaikaa IC: n alkuasetuksille.

Sovelluksen lähdekoodi löytyy täältä liitteestä A.

Suositeltava: