Tangentbord - PIC - LCD

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
egh01
Inlägg: 58
Blev medlem: 18 september 2003, 11:25:33

Tangentbord - PIC - LCD

Inlägg av egh01 »

Jag har tidigare kopplat ihop en PIC och en LCD (4-bit) och det har fungerat utmärkt. Efter det tänkte jag att jag skulle koppla in ett tangentbord (PS2 eller AT) till PICen för att sen få ut knapptryckningarna på LCDn men det vill sig inte riktigt. För att kunna koppla in tangentbordets clock signal på avbrottspinnen PB0 (och data på RB1) så var jag tvungen att flytta om LCD-anslutningarna lite men jag tror inte att det är där problemet ligger eftersom jag ibland får LCDn att visa korta teststrängar utan problem. Det lustiga är att det fungerar någorlunda vissa gånger och andra går det inte alls. Ibland initieras inte LCDn som den ska även om jag vet att PICen har exekverat den kod-snutt som ska ha hans om den biten och ibland kommer LCDn igång som den ska men jag får ingen input från tangentbordet. Andra gånger avbryter PICen på de mest konstiga ställen (tror jag i alla fall).

Jag misstänker att det är strömförsörjningen som inte räcker till riktigt. Jag använder en vanlig batterieliminator på 7,5V med en 5V spänningsregulator efter. Jag kommer tyvärr inte ihåg vilken belastning den ska klara av. Det lustiga här är att problemet ibland dyker upp även när jag inte har tangentbordet anslutet. Jag kan inte så mycket om elektronik och el-lära (har precis lånat lite böcker) så jag vet inte riktigt hur jag ska veta om det är strömmen som inte räcker till eller ej.

Har någon några förslag på vad som kan vara fel?
Användarvisningsbild
EagleSpirit
Inlägg: 1288
Blev medlem: 27 maj 2003, 23:15:48
Ort: Västerås
Kontakt:

Inlägg av EagleSpirit »

hmm, låter väldigt skumt, men du kanske måste kolla igenom koden en gång till? Kan vara så att den fastnar i nåt interrupt eller nåt. Sedan bör du kolla så att alla kablar sitter rätt och att kristallen har bra kontakt.
danei
EF Sponsor
Inlägg: 27416
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Inlägg av danei »

Genererar tangentbordet en egen klocka? Jag trodde att det var datorn som gjorde det. Har du någon bra sida med info?
egh01
Inlägg: 58
Blev medlem: 18 september 2003, 11:25:33

Inlägg av egh01 »

Jag har kollat igenom koden om och om igen och jag kan inte hitta det som kan tänkas vara fel. Och som jag har upplevt det så uppkommer problemen lika ofta (nästan alltid alltså) när jag har ränsat GIE och de andra interupt-bitarna i INTCON. Jag har också försökt att hitta fel på kopplingarna men det är ju inte så mycket som jag har ändra så det borde inte vara några problem där.

Hur är det med strömförsörjningen, på min batterieliminator står det bl.a:
Output: DC 300mA 3.6VA

Borde jag ha problem på den fronten?

Lite fakta om tangentbord kan man hitta på:
http://www.piclist.com/techref/io/keyboard.htm
http://www.arne.si/~mauricio/Kbdfaq.htm

Och ja, det är tangentbordet som står för klocksignalen.
danei
EF Sponsor
Inlägg: 27416
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Inlägg av danei »

Du skulle ju kunna testa att använda separata spänning matningar för att vara säker på att det inte är det som bråkar.

Tack för länkarna. Jag hadde fått för mig att datorn klockade hela tiden och inte bara när den sänder.

Du har inte råkat ändra någon delay i LCD initsieringen när du bytte ben till den? KAn spännings regulatorn fått sig en knäck? det kan bli lite skumma omstarter om matningen bråkar. Det är inte kul när det bråkar och man inte ens kommer på något att testa med :cry:
Användarvisningsbild
tusse
Inlägg: 1364
Blev medlem: 19 augusti 2003, 21:56:17
Ort: Järfälla

Inlägg av tusse »

Du har inget yttre som stör, det kan vara lätt att få med störningar i labbkopplingar, "skatbokopplingar "och långa sladdar är en bra mottagare för yttre störningar.

Flytta mobiltelefon, bildskärm från labbet och prova igen.

Mjau
Alex
Inlägg: 51
Blev medlem: 3 november 2003, 23:29:59
Ort: Stockholm

Inlägg av Alex »

Din beskrivning av felet fåt mig att misstänka problem med interrupt nivåer. PICen har 7 interrupt nivåer. Vid interrupt upptas 1 eller 2 interrupt nivå/er. Om du nu anropar en ytterligare funktion under interrupt, upptars den tredje nivån osv osv. Det kan du lätt kolla i utvecklingsverktyget. Kör programmet steg för steg och kolla på interrupt nivån.
AsmN
Inlägg: 76
Blev medlem: 10 juni 2003, 17:39:16
Ort: Pedersöre, Finland
Kontakt:

Inlägg av AsmN »

Alex: Har jag fel om jag säger att du tänker på stacknivåer istället för interruptnivåer?
Alex
Inlägg: 51
Blev medlem: 3 november 2003, 23:29:59
Ort: Stockholm

Inlägg av Alex »

Jo det heter nog så. Jag kallar det för interruptnivå vilket är säkert fel. Interrupt nivåer har med interruptprioritet att göra, så jag skulle nog säga stacknivåer istället. Sorry :?
hebbe
Inlägg: 162
Blev medlem: 29 maj 2003, 00:45:20

Inlägg av hebbe »

Har du:

1)Pullop/down motstånd på INT pinnen så den inte flyter och skapar interrupt hela tiden?
2)Resatt interruppt-flaggan i rutinen så den inte går in igen (på reurn)?
3)Tittat på hur ofta keyboardet skickar en puls/pulståg?
Användarvisningsbild
EagleSpirit
Inlägg: 1288
Blev medlem: 27 maj 2003, 23:15:48
Ort: Västerås
Kontakt:

Inlägg av EagleSpirit »

det skulle kunna vara strömförsörjningen. Men 300mA är en del. Är det backlight på LCDn? Har du kondingar både före och efter spänningsregulatorn? Bara för att vara på den säkra sidan. Kolla upp det där med stacknivåerna. Om det blir för många så att den låser sig kan det ju dina problem uppstå.

Äh det var ju ett tag sen du skrev den här tråden. Du kanske har löst det nu? Jaja, gonatt
egh01
Inlägg: 58
Blev medlem: 18 september 2003, 11:25:33

Inlägg av egh01 »

Ja det var ett tag sen men jag har inte löst det ännu, jag har faktiskt inte kollat på det så mycket mer sen sist. Men jag ska ta tag i det och anstränga mig lite så får vi se hur det kan lösas.

Tack i alla fall för alla nya tips. Kommer ni på något mer så....
egh01
Inlägg: 58
Blev medlem: 18 september 2003, 11:25:33

Inlägg av egh01 »

EagleSpirit: Nej jag använder inte backlight på LCDn. Vad skulle du säga att jag ska ha för kondingar runt en "7805CV 5V 1,5A" spänningsregulator?
Alex
Inlägg: 51
Blev medlem: 3 november 2003, 23:29:59
Ort: Stockholm

Inlägg av Alex »

egh01 titta på denna pdf filen från elfa. Där har du många olika kopplingar beroende på utspänning eller ström du önskar. Kopplingen jag använder till PICen är den som finns på sid 4.
Skriv svar