Prikazivanje alfanumeričkih znakova na 7-segmentnom LED-u je temeljni, ali fascinantan aspekt elektronike. Kao dobavljač LED 7 segmenta, svjedočio sam iz prve ruke raznolike primjene i važnost razumijevanja kako učinkovito iskoristiti ove komponente. U ovom blogu, ulazit ću u intrikcije prikazivanja alfanumeričkih znakova na 7-segmentnim LED-ima, od osnova kako rade na praktičnim strategijama provedbe.
Razumijevanje osnova 7-segmentnih LED-ova
7-segmentni LED uređaj je prikaz koji se sastoji od sedam pojedinačnih LED segmenata raspoređenih u određenom obrascu, obično u obliku cifre 8. Ovi segmenti su označeni od a do g, a mogu se formirati različitih kombinacija, a mogu se formirati različite kombinacije, raznih brojeva i nekih slova. Postoje dvije glavne vrste 7-segmentnih LED-a: uobičajena katoda i uobičajena anoda.
U zajedničkom katodnom 7-segmentnom LED-u, sve katode (negativne terminale) pojedinačnih segmenata povezane su zajedno i utemeljene. Da biste osvijetlili određeni segment, na odgovarajuću anodu primjenjuje se visoka logička razina (obično 5V). Suprotno tome, u zajedničkom 7-segmentnom LED-u, sve anode (pozitivni terminali) povezani su zajedno i isporučuju se sa pozitivnim naponom. Da biste aktivirali segment, na katodu se primjenjuje niska logička razina (obično 0V).
Mapiranje alfanumeričkih znakova na 7-segmentne obrasce
Prvi korak u prikazu alfanumeričkih znakova na 7-segmentnom LED-u je razumjeti obrasce segmenta potrebnih za svaki znak. Za brojeve 0 do 9, uzorci su relativno jednostavni. Na primjer, za prikaz broja 0, segmenti A, B, C, D, E i F osvijetljeni su, dok segment g ostane isključen. Sljedeća tablica prikazuje obrasce segmenta za brojeve 0 do 9:
| Broj | Uzorak segmenta (AG) |
|---|---|
| 0 | 11111110 |
| 1 | 0110000 |
| 2 | 1101101 |
| 3 | 1111001 |
| 4 | 0110011 |
| 5 | 1011011 |
| 6 | 1011111 |
| 7 | 1110000 |
| 8 | 11111111 |
| 9 | 1111011 |
Pored brojeva, 7-segmentnih LED-ova mogu također prikazati neka slova. Međutim, zbog ograničenog broja segmenata, ne mogu se sva pisma mogu tačno zastupljena. Najčešće prikazana slova uključuju A, B, C, D, E, F, F, H, L, P i U. Evo segmentnih obrazaca za ta slova:
| Pismo | Uzorak segmenta (AG) |
|---|---|
| A | 1110111 |
| B | 0011111 |
| C | 1001110 |
| D | 0111101 |
| I | 1001111 |
| F | 1000111 |
| H | 0110111 |
| L | 0001110 |
| Str | 1100111 |
| U | 0111110 |
Vožnja 7-segmentnih LED-ova sa mikrokontrolerima
Za prikaz alfanumeričkih znakova na 7-segmentnom LED, mikrokontroler se obično koristi za kontrolu osvjetljenja segmenata. Mikrokontroleri poput Arduino, Raspberry PI i PIC popularni su izbori zbog svoje jednostavnosti upotrebe i dostupnosti programskih biblioteka.


Osnovni proces vožnje 7-segmentnog LED-a s mikrokontrolerom uključuje sljedeće korake:
- Konfiguracija pina: Spojite pojedinačne segmente 7-segmenta dovele do odgovarajućih izlaznih iglica mikrokontrolera. Ako koristite uobičajenu katodnu LED, segmenti su povezani sa izlaznim iglema mikrokontrolera putem ograničavanja struje. Ako koristite zajedničku anodnu LED, segmenti su povezani na izlazne igle mikrokontrolera putem tranzistora ili međuspremnika za pružanje dovoljne struje.
- Mapiranje karaktera: Kreirajte niz ili pretraživačku tablicu koja pohranjuje obrasve segmenta za svaki alfanumerički znak. Ova tablica se može koristiti za brzo preuzimanje odgovarajućeg obrasca na osnovu prikaza znaka koji se prikazuje.
- Funkcija prikaza: Napišite funkciju koja uzima lik kao ulaz i postavlja izlazne igle mikrokontrolera na odgovarajući obrazac segmenta. Ova se funkcija može nazvati kad god treba prikazati novi lik.
Evo primjera Arduino kod koji pokazuje kako prikazati brojeve 0 do 9 na zajedničkom katodnom 7-segmentnom LED-u:
// definirati igle povezane na segmente Const Int Segmentpins [] = {2, 3, 4, 5, 6, 7, 8}; // obrasci segmenta za brojeve 0 do 9 const bajt digitpatterns [] = {B1111110, // 0 B1101101, // 2 B1111001, // 3 B1011011, // 6 B1110000, // 7 B1110000, // 8 B1111111 // 8 B1111011 // 9}; nevaljana podešavanja () {// Podesite segmentni igle kao izlaz za (Int I = 0; i <7; i ++) {pinmode (segmentpini [I], izlaz); }} Void petlja () {// Prikažite brojeve 0 do 9 s 1-sekundom kašnjenjem između svakog broja za (Int I = 0; I <10; i ++) {displaydigit (I); kašnjenje (1000); }} Void DisplayDigit (Int cifra) {// Nabavite uzorak segmenta za cifreni bajtni uzorak = DigitPatterns [Digit]; // postavite segmentne pinove prema uzorku za (int i = 0; i <7; i ++) {digitalwrite (segmentpini [i], bitread (uzorak, i); }}
Multipleksiranje više 7-segmentnih LED-ova
U mnogim se aplikacijama više od 7 segmenta koristi za prikaz višecifrenih brojeva ili poruka. Međutim, pokretajući svaki LED individualno zahtijevalo bi veliki broj izlaznih igle na mikrokontroleru. Da biste prevladali ovo ograničenje, obično se koristi tehnika zvana multipleksiranje.
Multipleksiranje uključuje brzo prebacivanje između pojedinih LED-ova, osvjetljavajući svaku u nizu kratko vreme. Budući da ljudsko oko ima upornost vida, ona opaža sve LED-ove kao da se svijetli istovremeno. Postoje dvije glavne vrste multipleksiranja: Vremenska divizija Multipleksiranje (TDM) i frekvencijsko-divizijska multipleksiranje (FDM). TDM je najčešće korištena metoda za vožnju 7-segmentnih LED dioda.
Za implementaciju TDM multipleksiranja, svaki 7-segmentni LED povezani je na isti set segmentnih igle, a za kontrolu LED je trenutno aktivan zasebnu segmentne igle. Mikrokontroler se izmjenjuje između omogućavanja svakog LED-a i prikazujući odgovarajuću cifru na njemu. Slijedi primjer Arduino kod koji pokazuje multipleks tri uobičajene katode 7-segmentne LED diode za prikaz trocifrenog broja:
// definirati igle povezane na segmente Const Int Segmentpins [] = {2, 3, 4, 5, 6, 7, 8}; // Definirajte igle povezane sa omogućenim linijama LED-ova Const Int Enablepins [] = {9, 10, 11}; // obrasci segmenta za brojeve 0 do 9 const bajt digitpatterns [] = {B1111110, // 0 B1101101, // 2 B1111001, // 3 B1011011, // 6 B1110000, // 7 B1110000, // 8 B1111111 // 8 B1111011 // 9}; // broj koji treba prikazati int broj = 123; nevaljana podešavanja () {// Podesite segmentni igle kao izlaz za (Int I = 0; i <7; i ++) {pinmode (segmentpini [I], izlaz); } // Podesite igle za omogućavanje kao izlaz za (int i = 0; i <3; i ++) {pinmode (enablepins [i], izlaz); DigitalWrite (Enablepins [i], visok); // onemogući sve LED-ove u početku}} nevažna petlja () {// izdvojiti pojedinačne cifre iz broja digita1 = broj / 100; int digit2 = (broj / 10)% 10; int digit3 = broj% 10; // multipleks LED za (Int I = 0; i <3; i ++) {// Omogući trenutnu LED digitalnu ploču (Enablepins [i], niska); // prikazati odgovarajuću cifru ako (i == 0) {displaydigit (Digit1); } drugo ako (i == 1) {displaydigit (digit2); } else {displaydigit (digit3); } // kašnjenje u kratkom roku kako bi se omogućilo LED-u da osvjetljava kašnjenje (2); // onemogući trenutni LED digitalni napitak (Enablepins [i], visoko); }} Void DisplayDigit (Int cifra) {// Nabavite uzorak segmenta za cifreni bajtni uzorak = DigitPatterns [Digit]; // postavite segmentne pinove prema uzorku za (int i = 0; i <7; i ++) {digitalwrite (segmentpini [i], bitread (uzorak, i); }}
Naši proizvodi od 7 segmenta
Kao dobavljač LED 7 segmenta, nudimo širok spektar visokokvalitetnih proizvoda od 7 segmenta za ispunjavanje različitih potreba naših kupaca. Naši proizvodi uključujuJednocifren 7 LED segment,Trocifrena 7 LED segmenta, iČetvorocifrena 7 segmenta LED. Ove LED diode dostupne su u zajedničkim katodnim i uobičajenim anodnim konfiguracijama, a oni dolaze u raznim veličinama i bojama kako bi odgovarali različitim aplikacijama.
Naši 7-segmentni LED proizvodi proizvedeni su pomoću napredne tehnologije i visokokvalitetnih materijala, osiguravajući odlične performanse i pouzdanost. Široko se koriste u aplikacijama kao što su digitalni satovi, kalkulatori, brojila i industrijski upravljački sustavi. Bilo da ste hobista, inženjer ili proizvođač, imamo pravo 7-segmentnog LED rješenja za vas.
Kontaktirajte nas za nabavku
Ako ste zainteresirani za naše 7-segmentne LED proizvode ili imate bilo kakvih pitanja o prikazivanju alfanumeričkih znakova na 7-segmentnim LED-om, slobodno nas kontaktirajte. Naš tim stručnjaka uvijek je spreman pomoći u vašim potrebama za nabavkom i pružiti vam najbolja moguća rješenja. Radujemo se što ćemo sarađivati s vama i pomoći vam da postignete svoje projektne ciljeve.
Reference
- Arduino dokumentacija: https://www.arduino.cc/reference/en/
- Tutorijali za elektronike: https://www.electronics-tutorials.ws/
- SparkFun Saznajte: https://learn.sparkfun.com/tutorOrials/
