Hallo,
Als ik mijn voeding aanleg bij het opstarten van mijn PIC met LCD. Geraakt deze nooit goed in het programma? Ik zou normaal moeten tekst te zien krijgen maar ik krijg op lijn 1 en 3 (4*20 LCD display) gewoon 2 witte lijnen. Komt dit omdat het programma direct al vastloopt?
Als ik dan op de MCLR pin "laag" maak (harde reset) begint het programma goed. Alles werkt goed, gewoon als de spanning aangelegd wordt loopt de pic meteen vast...
Welke oorzaken kunnen hiermee te maken hebben?
Alvast bedankt!
Grtn,
Olivier
En wanneer je eerst een delay van een paar 100 ms aan het begin van je programma zet? Misschien niet de oplossing, maar zou wel kunnen werken.
flipflop
"We cannot solve our problems with the same thinking we used when we created them" - Albert Einstein
Je moet (1) een reset aan je MCLR pennetje maken met bv een R/C of (2) de reset generator in de PIC zelf aanzetten. Dat doe je in het config word.
pros
Prosper, yop la boum, c'est le roi du macadam (aldus Maurice Chevalier)
En daarnaast minstens 20mS wachten, alvorens je het LCD initialiseert. 100mS , zoals Red_Arrow suggereert, mag ook - knappe jongen, die het verschil merkt...
@JesperR: Welke C-waarde gebruik ik dan best?
@flipflop: Welke bits zijn dit in het config word? ik zie niet direct reset generator staan? bedoel je PWRTEN (bit 3) of WDTEN (bit 2)?
Bedankt voor de snelle reacties 
Arco
Special Member
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
MCLR met 10k aan Vcc, en met 100nF aan Gnd.
Je kunt ook MCLR uitzetten in het config word.
Welke bits zijn dit in het config word?
Om dat te zeggen is het wel makkelijk om te weten welke PIC je gebruikt... 
Ik gebruik een 16F877A.
Ik zie geen bit waar je de MCLR kunt afzetten?
Ik ga het nu eens proberen met dat RC-netwerk.
Dit is eigenlijk gewoon het vertraagd opkomen van de spanning op de MCLR pin?
Stan1
Read the fuc.... manual and read the fuc.... datasheet! {Proton IDE: V2.0.1.2 / Proton Compiler: V3.5.4.5}
Bij een 16F877A is de MCLR niet te disabelen!
Zie de pinout description in de datasheet (Table 1-3)
Pin 1 heeft 2 functies:
MCLR: Master Clear Reset input of Vpp: Programming voltage input.
Voor de start van het programma, ongeveer 500ms pauze inlassen,
sommige vooral oudere display 's hebben meer tijd nodig om te
initialiseren.
Staat de watchdog timer bit aan (WDTEN) dan kan het zo maar gebeuren dat het programma gereset word voordat de main loop al gestart is.
Je kunt ook het (PWRTEN) bit aan zetten, dan gebruikt deze een eigen RC schakeling (ongeveer 72ms), zie 14.6 in de datasheet Blz. 146.
Ik heb nu de MCLR pin aan dat RC-netwerk gehangen. Ik zie nu wel dat het wat vertraagd opgestart wordt. Maar nog altijd de 2 lijnen...
Soms krijg ik een beetje tekst door tussen de volle lijnen...
Ik heb al een wachtlus gezet aan het begin van de main en ook al in de lcd-init() en er verandert niets :s
Arco
Special Member
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Stan1
Read the fuc.... manual and read the fuc.... datasheet! {Proton IDE: V2.0.1.2 / Proton Compiler: V3.5.4.5}
Nu hebben we toch meer info nodig!
1: Welke programmeertaal?
2: Config regels?
3: Wat voor LCD?
4: Heb je de standaard methoden of een alternatieve methoden gebruikt voor het aansluiten van de LCD op de PIC?
5: Wat heb je met de contrast aansluiting (Vo) gedaan?
Dit zijn zo even wat vragen die in mij op komen!
Post eens het programmaatje en het eventuele schema!
flipflop
"We cannot solve our problems with the same thinking we used when we created them" - Albert Einstein
PWRT was al genoemd, maar dat helpt je niet lijkt het.
Heb je rekening gehouden met de busy status van het display? Of schrijf je gewoon alles achter elkaar erheen?