Bygga stor 7-segmentdisplay

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
Användarvisningsbild
gunne
Inlägg: 2088
Blev medlem: 17 juni 2004, 15:00:31
Ort: sthlm
Kontakt:

Bygga stor 7-segmentdisplay

Inlägg av gunne »

Jag ska ta upp mitt gamla projekt som är att bygga en ölhäfvarklocka. Jag är inte helt haj på elektronik så några av mina frågor kan verka dumma, men frågar man inget....

Jag ska ha en stor display som ska visa 5 siffror, t.ex. "23.576". Jag tänkte bygga displayen genom att parallellkoppla cirka 8-10 dioder till varje segment och sedan styra dessa från en mC eller nån LED-drivare. De olika segmenten kommer att ha gemensam minuspol (katod? anod?).

Mina fina paint-skills:
Bild

Verkar det galet att koppla på detta viset?

Om jag ska använda mikrokontrollern till att styra displayen behövs 7+14 portar för 14 tecken. Hur kan man annars styra det? Shift register? LED-drivare? Hur fungerar detta?

Tänkte antagligen använda AVR. Vilka AVR har fler än 30 portar? BEhöver cirka 6 portar till andra saker, som chocksensorer mm.
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

Koppla så funkar inte så bra för lysdioderna kommer att dra lite olika ström och därmed lysa olika starkt. Antingen seriekoppla, eller ha ett motstånd för varje LED.
Användarvisningsbild
gunne
Inlägg: 2088
Blev medlem: 17 juni 2004, 15:00:31
Ort: sthlm
Kontakt:

Inlägg av gunne »

Det blir så många motstånd.. Men jag kan ju iof seriekoppla istället å öka spänningen lite. Men tror ni verkligen att det lyser olika starkt? Alla LEDs kommer ju självklart va an samma sort...

Är det någon som kan gå igenom hur 7-segmentavkodare eller shiftregister fungerar (nybörjarnivå)?
Användarvisningsbild
Icecap
Inlägg: 26632
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Inlägg av Icecap »

De är lite olika fastän de är samma fabrikat, typ, batch osv! Tro mig jag har erfarenhet av skyltar med 28K LED.

Därmed kommer de att få olika ström vid paralell-koppling, det är därför du alltid ser att mobiltelefoner t.ex. har seriekopplade och en step-up krets för att styra dom.

De ljuser nemlig väldig lika vid samma ström genom.
Användarvisningsbild
gunne
Inlägg: 2088
Blev medlem: 17 juni 2004, 15:00:31
Ort: sthlm
Kontakt:

Inlägg av gunne »

Då blir det till att seriekoppla. Tackar för tipset!

Nu över till hur 7-segment avkodare fungerar. T.ex. den här. Kan man använda en sån, eller nåt liknande, för att med få (läs typ 2-4) IO-linjer styra typ 14 tecken?

Mera paint-skillz:
Bild
Något sånt här är det tänkt att det ska se ut. Jag har koll på hur det mesta ska kopplas förutom displayerna. Om jag har en mC med typ 30 IO-linjer så kan jag iof skita i att ha ytterligare kretsar och driva displayerna direkt.
Användarvisningsbild
gunne
Inlägg: 2088
Blev medlem: 17 juni 2004, 15:00:31
Ort: sthlm
Kontakt:

Inlägg av gunne »

Är det någon som har ett bra tips på hur man kan styra displayen? Jag vill gärna styra den seriellt så nån slags decoder är att föredra. Vi (jag å FS) tänkte använda en drivkrets från maxim men eftersom vi måste styra segmenten med 12 V funkade den inte. Vi tänkte alltså koppla drivaren till segmenten via transistorer men kretsen använder nån sorts "charlieplexing" som gör att det ine går...

Finns det någon annan krets som funkar? Man kanske kan göra på nåt annat sätt? Alla ideér är intressanta...
evert2
Inlägg: 2182
Blev medlem: 18 april 2004, 22:47:56
Ort: Jönköping

Inlägg av evert2 »

Kan det inte funka med en MAX7219 eller MAX7221

http://pdfserv.maxim-ic.com/en/ds/MAX7219-MAX7221.pdf

Edit: decimalkommat kan man väl driva separat...?
Användarvisningsbild
Jonaz
Inlägg: 2358
Blev medlem: 4 november 2003, 22:06:33
Ort: Huddinge

Inlägg av Jonaz »

Det skulle kanske vara tufft med sånt där neonljus folk stoppar in i datorn numera. blir ju rätt dyr men än då.
Dilbert
Inlägg: 20
Blev medlem: 24 februari 2005, 22:43:06
Ort: Trakten

Inlägg av Dilbert »

Nu hänger jag inte riktigt med, först pratar du om att ha 5 siffror, men längre ner ska du ha 14 tecken, vilket är fallet?

Om du istället för att ha seriemotstånd fixar 7st konstantströmkällor, (lämpligen av 7st LM317 med varsitt motstånd), så kommer du få jämn ljusstyrka.

För utpekningen av det tecken du för tillfället vill driva sätter du lämpligen ett skiftregister som 74HC164 för upp till åtta tecken, eller seriekopplar två för upp till 16tecken osv.
Clearpinnen kopplar du antingen till AVR reseten eller så sätter du 100n till backen och ett 10Kmotstånd till matning så resetas den vid spänningtillslag, sedan styr du den med två utgångar från din AVR genom att lägga ut data med den ena och klocka med den andra. Antalet pinnar som då åtgår blir 7+2. Utgångarna från skiftregistret kopplar du till en N-FET lämplig för den ström du ska köra.
Användarvisningsbild
Tony
Inlägg: 1038
Blev medlem: 9 november 2003, 16:08:47

Inlägg av Tony »

Några av de drivkretsar elfa säljer...

UCN5832 73-336-85
A6276 72-337-43
MAX7219 73-721-54

Någon reset behövs egentligen inte, se bara till att alltid skriva till samtliga tecken varje gång.
Användarvisningsbild
gunne
Inlägg: 2088
Blev medlem: 17 juni 2004, 15:00:31
Ort: sthlm
Kontakt:

Inlägg av gunne »

Dilbert skrev:Nu hänger jag inte riktigt med, först pratar du om att ha 5 siffror, men längre ner ska du ha 14 tecken, vilket är fallet?
Jag ska ha två displayer med 5 tecken i varje och sen nåra till tecken nere på lådan. Men vad det egentligen handlar om är att jag vill styra 5 tecken där varje segment kräver ca 100ma seriellt.

Borde det inte funka att ha två stycken 74HC164. En som stegar igenom segmenten och en som stegar igenom tecknen. Då blir det 2 + 2 + 2 = 6 ledare. (En clk och en data för varje shiftregister, en 12V och en jord).

Sen gör man så här:
1:1 = tecken 1 segment 1. 1:2 = tecken 1 segment 2 osv.

1: data som ska till 1:1
2: puls till clk på segmentshiftregistret
3: data som ska till 1:2
2: puls till clk på segmentshiftregistret
...
16: puls till clk på båda shiftregistren
17: data som ska till 2:1
....

Tänker jag rätt?
Användarvisningsbild
gunne
Inlägg: 2088
Blev medlem: 17 juni 2004, 15:00:31
Ort: sthlm
Kontakt:

Inlägg av gunne »

Inte så fint, men det är mitt första schema i eagle... ;)

Bild

Så här tänker jag. Men det kommer att va 6 eller 7 dioder per segment. Och så ska det va ett motstånd mellan utporten och clr på det undre shiftregistret.

Funkar?
Senast redigerad av gunne 14 mars 2005, 18:03:49, redigerad totalt 1 gång.
matseng
Inlägg: 2360
Blev medlem: 16 september 2003, 17:18:13
Ort: Dubai, United Arab Emirates
Kontakt:

Inlägg av matseng »

Du ska inte bygga i den här storleken då? :-)

http://www.neonixie.com/monster-7-segment/
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

Jag är lite tveksam till att ha skiftregister för att byta siffra. För att få bra resultat brukar man behöva släcka alla siffror medan man byter data för segmenten. Det räcker att fel segment på nästa siffra får vara tända ytterst kort tid för att det ska synas. när man använder skiftregister blir problemet extra stort för det tar längre tid när man skickar in data seriellt, och dessutom så flyttas de tända segmenten ju runt medan datan skiftas in.

Kopplingen med transistorerna ser lite knasig ut också, du kommer inte få ut några 12V om du tänkt det, bara lite mindre än drivspänningen på shiftregistren.
Användarvisningsbild
Schnegelwerfer
Inlägg: 1863
Blev medlem: 8 november 2004, 13:46:56

Inlägg av Schnegelwerfer »

gunne skrev:Inte så fint, men det är mitt första schema i eagle... ;)


Så här tänker jag. Men det kommer att va 6 eller 7 dioder per segment. Och så ska det va ett motstånd mellan utporten och gnd på det undre shiftregistret.

Funkar?
Du har gjort det klassiska misstaget att koppla in transistorerna Q1-Q8 som emitterföljare, dvs. varje lysdiodrad kommer bara att få ca. 4.3V. Om man räknar med spänningsfallet över Q9 och Q10 får dom endast ca. 3,6V.

För att fixa det får du koppla in Q1-Q8 på "minus-sidan" (katodsidan) av lysiodsraderna.

EDIT: Cyr hann före! :)
Skriv svar