Sida 2 av 2

Re: PIC-kretsen låser sig vid olika tillfällen

Postat: 20 maj 2009, 18:10:43
av bos
JimmyAndersson skrev:Så då är det något annat fel.
Hur initialiserar du displayen?

Jag vet av erfarenhet att de displayer jag kört i 4bit-läge så har de varit löjligt kinkiga när det gäller initieringskommandona, så jag skickar ca 10 init/reset-kommandon i följd för att på så sätt verkligen säkerställa att displayen hamnar i 4bit-läge.

4bit-kommandon till en LCD som körs i 8bit ger garanterat hönsskit i teckenrutorna.

Re: PIC-kretsen låser sig vid olika tillfällen

Postat: 22 maj 2009, 15:36:03
av TotteBasicPic
sodjan skrev:> D0-D3 på Displayen måste vara jordade.

Nej.
Har kör igång ett tjugo-tal displayer med 4 bitars interface och det fungerar mycket bätter om dessa är jordad.
glömmer jag detta kan det fungera att starta men det är inte säkert att starten fungerar eller så blir den tom vid nästa skrivning till denna.
så jorda dessa stift D0-D3.
H/Thomas

Re: PIC-kretsen låser sig vid olika tillfällen

Postat: 23 maj 2009, 03:01:06
av JimmyAndersson
I databladet (för min och många andra HD44780-kompatibla displayer) står det:
"DBO~DB7 Pins
TRi-state hi-directional data bus pins.The bus allows data to
be transmitted to or received from the external circuit. DB7
series also as busy flag output. When the module is interfaced to
a microcomputer with 4-bit parallel outputs,DBO~DB3 pins are
not used.
"


Så de ska faktiskt vara oanslutna. :)

Jag vet inte riktigt varför du fick bättre resultat med dem jordade, men jag har aldrig sett någon få problem genom att ha dem oanslutna.

Orsaken till mitt problem verkade vara att det blev för korta fördröjningar mellan varje grejj som skickades till displayen.


bos:
"Hur initialiserar du displayen?"

Först följde jag databladet, men när det blev fel så ökade jag pauserna (*10). När det inte hjälpte så ökade jag lite till, men jag fick då fortfarande slumpmässiga resultat, så då sänkte jag klockan till 10MHz och då fungerade det. Efter det har jag börjat om från början och håller på med en version i assembler istället.

Jag ska testa din metod. Det vore kul att se om det blir någon skillnad.

"jag skickar ca 10 init/reset-kommandon i följd"

Initierar du den 10 gånger i rad då alltså? Det borde väl bli fel om man skickar varje kommando 10 gånger, med tanke på att vissa initieringsinstruktioner ska vara likadana flera gånger efter varandra.


Hm.. det verkar inte bli mer kodande för mig i kväll/natt. Jag fastnade på forumet istället. :oops:
Bättre att fortsätta i morgon när hjärnan har fått köra en RESET och SLEEP, eller åtminstone CLRF följt av några NOP. :sleepy:

Re: PIC-kretsen låser sig vid olika tillfällen

Postat: 23 maj 2009, 09:30:56
av vfr
Bättre att fortsätta i morgon när hjärnan har fått köra en RESET och SLEEP, eller åtminstone CLRF följt av några NOP.

:D

Re: PIC-kretsen låser sig vid olika tillfällen

Postat: 23 maj 2009, 14:42:43
av sodjan
> Så de ska faktiskt vara oanslutna.

En anledning till detta är att om man använder R/W (alltså har den
ansluten till processorn och inte bara jodrad), så kan man under power-up
(innan programvaran har tagit kontroll över I/O pinnarna) få lägen där
LCD modulen hamnar i "read" och alltså aktivt driver sina egna I/O pinnar.
Om några av dessa då är hård jordade så får men en "kortis". Jag har även
för mig att alla I/O pinnar på en HD44780 har interna pull-up i alla fall så
de hålls i ett känt läge öven då de är oanslutna.