Hallo ,

Ik ben bezig met een projectje waarbij ik een LCD (2 * 16 ) wil aansturen met een PIC 16F84. Ik zou dit graag in PIC BASIC PRO doen. Kan er mij iemand helpen aub ? Ik heb al vanalles geprobeerd maar zie telkens zwarte blokjes te voorschijn komen op de lcd.

Hieronder vinden jullie de aansluitingen en het programmatje dat ik in pic basic pro al geprobeerd heb.

'LCD should be connected as follows:
' LCD PICmicro
' DB4 PORTA.0
' DB5 PORTA.1
' DB6 PORTA.2
' DB7 PORTA.3
' RS PORTA.4 (add 4.7K pullup resistor to 5 volts)
' E PORTB.3
' RW Ground
' Vdd 5 volts
' Vss Ground
' Vo 20K potentiometer (or ground)
' DB0-3 No connect

Define LCD_DREG PORTA
DEFINE LCD_DBIT 0
DEFINE LCD_RSREG PORTA
DEFINE LCD_RSBIT 4
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 3
DEFINE LCD_BITS 4
DEFINE LCD_LINES 2
DEFINE LCD_COMMANDUS 1500
DEFINE LCD_DATAUS 50

'TRISB= %00001000
low portB.3
'TRISA= %00000000

Pause 1500 ' Wait 1.5 seconds for LCD to reset

loop: Lcdout $fe, 1 ' Clear lcd screen
Lcdout "Hello" ' Display Hello
Pause 500 ' Wait .5 second

Lcdout $fe, 1 ' Clear lcd screen
Lcdout "World"
Pause 500 ' Wait .5 second

Goto loop ' Do it forever
END

Hopend op een snelle reactie

Sigurd

uitgaand dat je code werkt (nog niet erg lang naar gestaard)

heb je wel een kristal aangesloten op je 16f84? anders doet je PIC helemaal niets

zoals veel mensen aanbevelen laat een ledje knipperen dat zie je of je code wordt uitgevoerd

Ik heb er een kristal aanhangen maar ik denk dat het misschien aan de code kan liggen. Heeft er soms niemand een werkend schema en code in PIC BASIC PRO dat ik zou kunnen gebruiken ?

[Bericht gewijzigd door Henry S. op (48%)]

gezien de source die gebruikt denk ik dat die ook niet van jouzelf is.

als je er geen kennis van hebt EN blijkbaar geen moeite voor wilt doen, raad ik je aan een keuze te maken.

tijd investeren in het bedenken van oplossingen

OF

andere hobby/studie kiezen (kippen fokken ofzo)

en gezien het mij een schoolvraag lijkt: move naar Schoolvragen

[Bericht gewijzigd door Jeroen Boere op ]

bekijk de help file eens, hierin staat vast wel een schema uitleg en voorbeeld code

verder is het normaal om nog een config te hebben, je meot aangeven hoe snel je kristal is of je wdt gebruikt ect zie hiervoor ook de help file denk ik (denk dat alle compilers dit wel hebben)

Jij gebruikt het commando "Lcdout", maar volgensmij bestaat dit het commando "Lcdout" niet in basic .

Om in basic iets op het scherm neer te zetten kan je het commando "print" gebruiken. (b.v. print "hello").
Als je iets op 2 regels weer wil laten geven gebruik je het commando "print at 1, 7, "hello".
Zo krijg je het woordje "hello" op regel 1, positie 7.

Zie ook http://www.picbasic.nl
(Beginners mini-cursus (deel 4))

De TS werkt niet met Proton.

Ik heb hetzelfde probleem gehad, dagen achter gezocht, de LCD wel 100 keer opnieuw aangesloten tot ik het vond : portB, pin 3 wordt gebruikt voor Low Voltage Programming. Door de Enable op een andere poort te hangen (en de software hieraan aan te passen) werkte alles magischerwijs.

Slotsom : vermijd poort B, pin 3 voor dit soort zaken (en zet een 10K pull up resistor op pin 6 en 7 voor ICSP)