Indholdsfortegnelse:
- Trin 1: Baggrund
- Trin 2: GreenPAK Design
- Trin 3: Generering af digitalsignaler
- Trin 4: Segment Signal Generation
- Trin 5: ASM -konfiguration
- Trin 6: Test
Video: DIY 4xN LED Driver: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
LED -skærme bruges i vid udstrækning i systemer lige fra digitale ure, tællere, timere, elektroniske målere, grundlæggende lommeregnere og andre elektroniske enheder, der er i stand til at vise numerisk information. Figur 1 viser et eksempel på et 7-segment LED-display, der kan vise decimaltal og tegn. Da hvert segment på LED -displayet kan styres individuelt, kan denne kontrol kræve mange signaler, især for flere cifre. Denne instruktionsbog beskriver en GreenPAK ™ -baseret implementering til at køre flere cifre med et 2-leder I2C-interface fra en MCU.
Nedenfor beskrev vi de nødvendige trin for at forstå, hvordan GreenPAK -chippen er programmeret til at oprette 4xN LED -driveren. Men hvis du bare vil få resultatet af programmeringen, skal du downloade GreenPAK -software for at se den allerede gennemførte GreenPAK -designfil. Tilslut GreenPAK Development Kit til din computer, og tryk på programmet for at oprette den brugerdefinerede IC til 4xN LED -driveren.
Trin 1: Baggrund
LED -skærme er opdelt i to kategorier: Fælles anode og fælles katode. I en fælles anodekonfiguration er anodeterminalerne internt kortsluttet som vist i figur 2. For at tænde LED'en er den fælles anodeterminal forbundet til systemforsyningsspændingen VDD, og katodeterminalerne er forbundet til jord via strømbegrænsende modstande.
En fælles katodekonfiguration ligner en almindelig anodekonfiguration, undtagen at katodeterminalerne er kortsluttet som vist i figur 3. For at tænde for den fælles katod LED -skærm er de fælles katodterminaler forbundet til jord, og anodeterminalerne er forbundet til systemet forsyningsspænding VDD gennem strømbegrænsende modstande.
Et N-cifret multiplexet LED-display kan opnås ved at sammenkæde N individuelle 7-segment LED-displays. Figur 4 viser en forekomst af en 4x7 LED -skærm opnået ved at kombinere 4 individuelle 7 -segmentskærme i en fælles anodekonfiguration.
Som det ses i figur 4, har hvert ciffer en fælles anodestift / bagplan, der kan bruges til individuelt at aktivere hvert ciffer. Katodestifterne for hvert segment (A, B, … G, DP) skal være kortsluttet eksternt. For at konfigurere denne 4x7 LED-skærm kræver brugeren kun 12 pins (4-common pins for hvert ciffer og 8-segment pins) for at styre alle de 32 segmenter af det multipleksede 4x7 display.
GreenPAK -designet, detaljeret nedenfor, viser, hvordan man genererer styresignalerne til dette LED -display. Dette design kan udvides til at styre op til 4 cifre og 16 segmenter. Se venligst afsnittet Referencer for et link til GreenPAK -designfiler, der er tilgængelige på Dialogs websted.
Trin 2: GreenPAK Design
GreenPAK -designet vist i figur 5 omfatter både segment- og ciffer -signalgenerering i ét design. Segmentsignalerne genereres fra ASM, og ciffervalgssignalerne oprettes fra DFF -kæden. Segmentsignalerne er forbundet til segmentstifterne gennem strømbegrænsende modstande, men ciffervalgssignalerne er forbundet til displayets almindelige stifter.
Trin 3: Generering af digitalsignaler
Som beskrevet i afsnit 4 har hvert ciffer på et multiplekset display et individuelt bagplan. I GreenPAK genereres signalerne for hvert ciffer fra den interne oscillator-drevne DFF-kæde.
Disse signaler driver displayets almindelige stifter. Figur 6 viser ciffervalgssignalerne.
Kanal 1 (gul) - Pin 6 (ciffer 1)
Kanal 2 (grøn) - Pin 3 (ciffer 2)
Kanal 3 (blå) - Pin 4 (ciffer 3)
Kanal 4 (Magenta) - Pin 5 (ciffer 4)
Trin 4: Segment Signal Generation
GreenPAK ASM genererer forskellige mønstre til at drive segmentets signaler. En 7,5 ms tæller gennem ASM -tilstande. Da ASM er niveaufølsom, anvender dette design et kontrolsystem, der undgår muligheden for hurtigt at skifte gennem flere tilstande i løbet af den høje periode på 7,5 ms uret. Denne specifikke implementering er afhængig af på hinanden følgende ASM -tilstande kontrolleret af omvendte urpolariteter. Både segment- og cifersignalerne genereres af den samme 25 kHz interne oscillator.
Trin 5: ASM -konfiguration
Figur 7 beskriver tilstandsdiagrammet for ASM. Stat 0 skifter automatisk til stat 1. En lignende skifte sker fra stat 2 til stat 3, stat 4 til stat 5 og stat 6 til stat 7. Data fra stat 0, stat 2, stat 4 og stat 6 låses øjeblikkeligt vha. DFF 1, DFF 2 og DFF 7 som vist i figur 5, før ASM overgår til den næste tilstand. Disse DFF'er låser dataene fra ASM's jævne tilstande, som gør det muligt for brugeren at styre et udvidet 4x11/4xN (N op til 16 segmenter) display ved hjælp af GreenPAK's ASM.
Hvert ciffer på et 4xN -display styres af to tilstande i ASM. Stat 0/1, tilstand 2/3, stat 4/5 og stat 6/7 kontrollerer henholdsvis ciffer 1, ciffer 2, ciffer 3 og ciffer 4. Tabel 1 beskriver ASM -tilstande sammen med deres respektive RAM -adresser til at styre hver ciffer.
Hver tilstand i ASM RAM gemmer en byte data. Så for at konfigurere en 4x7 -skærm styres tre segmenter af ciffer 1 af tilstand 0 i ASM, og fem segmenter af ciffer 1 styres af tilstand 1 i ASM. Som et resultat opnås alle segmenter af hvert ciffer på LED -displayet ved at sammenkoble segmenterne fra deres tilsvarende to tilstande. Tabel 2 beskriver placeringen af hvert af Digit 1's segmenter i ASM RAM. På lignende måde omfatter ASM's stat 2 til og med stat 7 henholdsvis segmentplaceringerne for ciffer 2 til ciffer 4.
Som det ses af tabel 2, er OUT 3 til OUT 7 segmenter af tilstand 0 og OUT 0 til OUT 2 segmenter af tilstand 1 ubrugte. GreenPAK -designet i figur 5 kan styre et 4x11 -display ved at konfigurere segmenterne OUT 0 til OUT 2 af alle ulige tilstande i ASM. Dette design kan udvides yderligere til at styre et udvidet 4xN (N op til 16 segmenter) display ved hjælp af flere DFF -logiske celler og GPIO'er.
Trin 6: Test
Figur 8 viser testskemaet, der bruges til at vise decimaltal på 4x7-segment LED-displayet. En Arduino Uno bruges til I2C -kommunikation med GreenPAKs ASM RAM -registre. Yderligere oplysninger om I2C -kommunikation findes i [6]. Displayets almindelige anodestifter er forbundet til ciffervalgs -GPIO'erne. Segmentstifterne er forbundet til ASM via strømbegrænsende modstande. Den strømbegrænsende modstands dimensionering er omvendt proportional med lysstyrken på LED-displayet. Brugeren kan vælge styrken af strømbegrænsningsmodstandene afhængigt af den maksimale gennemsnitlige strøm af GreenPAK GPIO'er og maksimal DC -strøm på LED -displayet.
Tabel 3 beskriver decimaltal 0 til 9 i både binært og hexadecimalt format, der skal vises på 4x7 -displayet. 0 angiver, at et segment er ON, og 1 angiver, at segmentet er OFF. Som vist i tabel 3 kræves to bytes for at vise et tal på displayet. Ved at korrelere tabel 1, tabel 2 og tabel 3 kan brugeren ændre ASM's RAM -registre til at vise forskellige numre på skærmen.
Tabel 4 beskriver I2C -kommandostrukturen for ciffer 1 på 4x7 LED -displayet. I2C -kommandoerne kræver en startbit, kontrolbyte, ordadresse, databyte og stopbit. Lignende I2C -kommandoer kan skrives til ciffer 2, ciffer 3 og ciffer 4.
For eksempel for at skrive 1234 på 4x7 LED -displayet skrives følgende I2C -kommandoer.
[0x50 0xD0 0xF9 0xFF]
[0x50 0xD2 0xFC 0xA7]
[0x50 0xD4 0xF8 0xB7]
[0x50 0xD6 0xF9 0x9F]
Ved gentagne gange at skrive alle otte bytes i ASM kan brugeren ændre det viste mønster. Som et eksempel er en modkode inkluderet i ZIP -filen i applikationsnoten på Dialogs websted.
Konklusioner
GreenPAK -løsningen beskrevet i denne Instructable gør det muligt for brugeren at minimere omkostninger, komponentantal, bordplads og strømforbrug.
De fleste gange har MCU'er et begrænset antal GPIO'er, så afladning af LED -drivende GPIO'er til en lille og billig GreenPAK IC gør det muligt for brugeren at gemme IO'er for yderligere funktioner.
Desuden er GreenPAK IC'er lette at teste. ASM RAM kan ændres med et klik på et par knapper i GreenPAK Designer Software, hvilket angiver fleksible designændringer. Ved at konfigurere ASM'en som beskrevet i denne instruktionsbog kan brugeren styre fire N-segment LED-skærme med op til 16 segmenter hver.
Anbefalede:
DIY Laser Diode Driver -- Konstant strømkilde: 6 trin (med billeder)
DIY Laser Diode Driver || Konstant strømkilde: I dette projekt vil jeg vise dig, hvordan jeg hentede en laserdiode fra en DVD -brænder, som skulle have magt til at tænde en tændstik. For at forsyne dioden korrekt vil jeg også demonstrere, hvordan jeg bygger en konstant strømkilde, der leverer en præcis
Boomstick - Animeret LED -driver: 10 trin
Boomstick - Animeret LED Driver: Boomstick er et projekt til oprettelse af en animeret streng af programmerbare RGB LED'er, drevet af en lille Arduino, og reaktiv til musik. Denne vejledning fokuserer på en hardwarekonfiguration, som du kan samle for at køre Boomstick -softwaren. Denne h
ATTiny84-baseret 3A trin-ned LED-driver: 7 trin (med billeder)
ATTiny84-baseret 3A trin-ned LED-driver: Hvis du vil drive 10W LED'er, kan du bruge denne 3A LED-driver. Med 3 Cree XPL LED'er kan du opnå 3000 lumen
Enkel DIY -induktionsvarmer med ZVS -driver: 3 trin
Enkel DIY -induktionsvarmer med ZVS -driver: Hej. I denne instruktive vil jeg vise dig, hvordan du laver en simpel DIY Induktionsvarmer baseret på den populære ZVS (Zero Voltage Switching) driver
DIY High Current Motor Driver (h-bridge): 5 trin
DIY High Current Motor Driver (h-bridge): Projektet er at opgradere motorerne og elektronikken i denne Power Wheels-quad til børn. vi planlagde at opgradere til et 24v system med 2 nye traxxis 775 børstede motorer efter at have undersøgt kommercielle