Hai COers,
Ik heb een probleem met de LCD. de LCD word wel geinitialiseerd,
maar er komt geen tekst op het scherm.
Ik maak gebruik van een 4 bits databus (PortC.4 tot en met PortC.7), de enable zit op PortB.4 en gaat
via een 7408 naar E1 of E2 van de display.
Ik gebruik een LCD van 4x40 karakters, daarom zitten er ook 2 enable aansluitingen op de LCD.
Voor E1 gebruik ik PortC.2 en voor E2 gebruik ik PortC.1, via de 7408 (AND) .
Ik heb de LCD aangesloten gehad op PortA en toen werkte het wel, maar PortA moet ik nu gedeeltelijk vrij houden voor ADC.
Ik zie het even niet?
Schema:
In ISIS werkt het wel, ik heb maar even 2 LCD gebruikt in ISIS, want er zit geen 4x40 in alleen maar 2x20.
pic basic code:
Device 18F4550
Optimiser_Level 3
Config_Start
FOSC = HS ; HS oscillator, HS used by USB
PWRT = On ; PWRT enabled
MCLRE = On ; MCLR pin enabled; RE3 input pin disabled
PBADEN = OFF ; PORTB<4:0> pins are configured as digital I/O on Reset
LVP = OFF ; Single-Supply ICSP enabled
ICPRT = OFF ; ICPORT enabled
Debug = OFF ; Background debugger disabled, RB6 and RB7 configured as general purpose I/O pins
Config_End
Reminders False
Warnings False
Xtal = 20
All_Digital TRUE
PortB_Pullups off
UCFG.3 = 1 ' disable the transeiver (Anders werkt de LCD niet op portc.4 en portc.5)
LCD_Type = 0
LCD_DTPort = PORTC
LCD_DTPin = PORTC.4
LCD_RSPin = PORTB.3
LCD_ENPin = PORTB.4
LCD_Lines = 2
LCD_Interface = 4
LCD_CommandUs = 65535
LCD_DataUs = 255
Symbol BeatLed = PORTC.0
TRISC.0 = 0
Symbol Disp_Contr_E1 = PORTC.2
TRISC.2 = 0
Symbol Disp_contr_E2 = PORTC.1
TRISC.1 = 0
High Disp_contr_E2 : High Disp_Contr_E1
DelayMS 2000
Cls
Test:
Print At 1,1,"12345"
DelayMS 500
Print At 1,1,"67890"
DelayMS 500
Toggle BeatLed
GoTo Test