pic, styra ledmatris. hur?

Planering och tankar kring eventuella framtida projekt.
victor_passe
Inlägg: 2436
Blev medlem: 28 januari 2007, 18:45:40
Ort: Kungsbacka

pic, styra ledmatris. hur?

Inlägg av victor_passe »

Hej, jag funderar på att bygga ihop en sak på ett enkelt exprimentkort med 3st 5*7 ledmatriser och en pic och 4st knappar.
Ett portabelt pong spel ska det bli.
Är det ett bra första (riktiga) projekt med pic?
Jag har hållt på med elektronik ett tag och är rätt haj på basic stamp.
Och jag kan grund-grunderna i pic. jag har byggt några led blinkare i ASM och sådant.

Men min hududsakliga fråga är:
Hur styr jag lättast en 15*7 punkts led matris?

Någon sorts räknare för kolumerna och raderna till trissor som styrt från picen?
Då behöver jag 2pinnar för räknaren(MR och klocka) och 7st för raderna.

Ungefär hur snabbt behövs displayen uppdateras för att det ska se ut som att led:arna lyser samtidigt? 25Hz?
Behövs en 32 bitars pic med 5THz klocka eller räcker en typ en 16f627A vid 4MHz?
Självklart beror det på koden men ungefär vad räcker?
Ska jag ha knapparna som 4st interupts? ska jag ha 2 poliga och parallell koppla ena sidan och ha en interuppt som hoppar till en knapp läsar rutin?

Andra tipps?
Och tillsist skulle 4st R06(AA) räcka några timmar eller drar picen 10KA?
för led:arna blir i värsta fall 200mA*2=400mW och batterier på 2AH*1,5=3W.
3/0.4=7.5 timmar. eller?
Användarvisningsbild
maha
EF Sponsor
Inlägg: 1685
Blev medlem: 22 november 2005, 09:47:02
Ort: Jakobstad, Finland

Inlägg av maha »

Nej 25Hz räcker inte, 50Hz är också för lite, gärna minst 100Hz. Jo en helt vanlig PIC på 4MHz har inget problem att hinna med.
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

Sikta på 70-150 Hz uppdateringsfrekvens. Tänk efter, hur mycket tid behöver varje rad/kolumn uppmärksamehet då? Ska du dimma dem? Hinner en PIC det? Om du kodar asm vet du ganska exakt hur lång tid din kod exekverar.

Att styra tre LED-matriser med en PIC brukar inte vara det första projektet man ger sig in på, men du verkar ju ha koll nog att klara av det. Du kommer nog behöva en lite roligare PIC än 16F627A. Sikta på fler ben och möjlighet att köra med 20/40 MHz kristall (en ur 18-serien), så slipper du förhoppningsvis tidsbristproblem.
victor_passe
Inlägg: 2436
Blev medlem: 28 januari 2007, 18:45:40
Ort: Kungsbacka

Inlägg av victor_passe »

Okej, tack för de snabba svaren.
Men om jag skippar ASM och kör på micro C istället.
Då lär ju koden inte bli ett problem (Jag brukar programmera "vanliga" språk halva min vakna tid.)
Och en pic 18 något med kanske 28 ben och 20MHz. Räcker det för att få 100Hz på leden eller sinkar C mycket?

Men att använda någon sorts räknare för X och "direkt" styra Y är så man brukar göra eller? och finns det röknare som har 15 utgångar? eller ska man krångla till det med kaskad kopplingar och sådant?
Användarvisningsbild
Icecap
Inlägg: 26636
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Inlägg av Icecap »

Jag har gjort en 5*8 matris med PIC16F73 på 3,6864MHz, inget problem.
victor_passe
Inlägg: 2436
Blev medlem: 28 januari 2007, 18:45:40
Ort: Kungsbacka

Inlägg av victor_passe »

Okej, vad visade du på matrisen?
ASM eller C?
Hur styrde du den?
Användarvisningsbild
Icecap
Inlägg: 26636
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Inlägg av Icecap »

Den hade en inbyggd teckentabell och jag använde den till att visa bokstäver som kom via serieporten. Den tig första bokstav till sig och skickade resten vidare, alla mottagna bytes från 120 och upp var intensitets- och utläsningskommando, 128 var "släck ner helt" och sedan var det 126 intensitetssteg till "full patte".

Karaktären 127 var en specialare: den blinkade en cirkel med full styrka.

Väldigt enkelt alltså, jag gjorde allt i ASM men hade likaväl kunna göra det i C fast det "fanns inte" då (gammalt projekt).
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Eller en färdig matris med 8 st 8x8 matriser :
http://elektronikforumet.com/forum/view ... =ledmatris
Bild
Användarvisningsbild
Andy
Inlägg: 5893
Blev medlem: 26 september 2004, 18:24:52
Ort: Södern

Inlägg av Andy »

Jag har inga problem men någon kommer säkert att protestera mot bredden på bilden! :wink:
victor_passe
Inlägg: 2436
Blev medlem: 28 januari 2007, 18:45:40
Ort: Kungsbacka

Inlägg av victor_passe »

Sodjan:
Pong på 64*8 tecken? man får ju vänta en kvart på att bollen ska komma fram.
16*8 hade annars varit perfekt.
Men hur funkar styrningen till dem? för du har styr elektronik redan på kortet va?
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Bilden för bred ?
Nja, den är exakt lika bred som modulen... :-) :-)

Det finns flera andra trådar som innehåller länkar till
både dokuemtation och programexempel. Men i princip
fungerar det som ett stort shiftregister, men får alltså
shifta in bitarna till en rad med dots (128 bitar eftersom det
är röd/grön matriser), vänta ett litet tag och sedan shifta
in data till nästa rad med dots. Upprepa 8 gånger inom lämplig
tid för att slippa "blinkningar".
victor_passe
Inlägg: 2436
Blev medlem: 28 januari 2007, 18:45:40
Ort: Kungsbacka

Inlägg av victor_passe »

Okej. det sättet att styra låter lite overkill i detta samanhanget.
Jag tror faktiskt att 2st av de matriserna räcker.
hmm. JA! då blir det 10st columer som jag kan styra från en johnson räknare!
Det skulle gå att styra enklare då va?
Aja nu ska man bara vänta tills man orkar sätta fart med det.
Edit:
Jag visste inte vad ett shift register var men nu när jag vet det så har jag tänkt om.
Att ha ett 8bitars shiftregister på X och styra Y från picen via trissor hade passat mig bra.
Och att SPI och shiftregister funkar bra tillsammans märkte jag när jag slö läste lite om seriekommunikation.
Bara att invertera klockan och köra ju.
Skriv svar