PDA

View Full Version : what is the problem vith pic or LCD...



turkuaz
- 11th March 2008, 11:44
Hi every one.
I finished below project for counting. Define as folows.But not work.
I use Pic 18F4520 4 MGZ osc.

please look at attachment for LCD wiring



'Define LCD connections
Define LCD_DREG PORTD
Define LCD_DBIT 4
Define LCD_RSREG PORTD
Define LCD_RSBIT 0
Define LCD_EREG PORTD
Define LCD_EBIT 1
DEFINE LCD_BITS 4
DEFINE LCD_LINES 4
DEFINE LCD_RWREG PORTE
DEFINE LCD_RWBIT 2
........
..........
giris:
LCDOUT $FE,1,"::::: drft :::::"
LCDOUT $FE,$C0,"adsert "
LCDOUT $FE,$94,"dfgtr"
Pause 500
LCDOUT $FE,$D4,"...SISTEM HAZIR..."
SOUND PORTD.2,[100,50,50]
Pause 500
low PORTD.2
......
.....
.....

any idea?
Thanks

Acetronics2
- 11th March 2008, 12:28
Hi,

Datasheet $ 10.5 ...

More generally : Where is your processor config sequence ???




'************************************************* ****************************
'************************************************* ****************************
'
'Defines
'************************************************* ****************************

DEFINE OSC 4
DEFINE BUTTON_PAUSE 50
DEFINE ADC_BITS 10


' Define LCD connections

DEFINE LCD_DREG PORTD ' Set LCD Data port
DEFINE LCD_DBIT 4 ' Set starting Data bit (0 or 4) if 4-bit bus
DEFINE LCD_RSREG PORTD ' Set LCD Register Select port
DEFINE LCD_RSBIT 2 ' Set LCD Register Select bit
DEFINE LCD_EREG PORTD ' Set LCD Enable port
DEFINE LCD_EBIT 3 ' Set LCD Enable bit
DEFINE LCD_BITS 4 ' Set LCD bus size (4 or 8 bits)


'************************************************* ****************************
'************************************************* ****************************
'Config processeur
'************************************************* ****************************
'

'@ __CONFIG _CONFIG1L, _WDT_OFF_1L & _WDTPS_128_1L
@ __CONFIG _CONFIG1H, _OSCS_OFF_1H & _XT_OSC_1H
@ __CONFIG _CONFIG2L, _BOR_OFF_2L & _BORV_27_2L & _PWRT_ON_2L
@ __CONFIG _CONFIG2H, _WDT_OFF_2H & _WDTPS_128_2H
'@ __CONFIG _CONFIG3L, _WDT_OFF_3L & _WDTPS_128_3L
@ __CONFIG _CONFIG3H, _CCP2MX_OFF_3H
@ __CONFIG _CONFIG4L, _STVR_OFF_4L & _LVP_OFF_4L & _DEBUG_OFF_4L
'@ __CONFIG _CONFIG4H, _WDT_ON_4H & _WDTPS_128_4H
@ __CONFIG _CONFIG5L, _CP0_OFF_5L & _CP1_OFF_5L & _CP2_OFF_5L & _CP3_OFF_5L
@ __CONFIG _CONFIG5H, _CPB_OFF_5H & _CPD_OFF_5H
@ __CONFIG _CONFIG6L, _WRT0_OFF_6L & _WRT1_OFF_6L & _WRT2_OFF_6L & _WRT3_OFF_6L
@ __CONFIG _CONFIG6H, _WRTC_OFF_6H & _WRTB_OFF_6H & _WRTD_OFF_6H
@ __CONFIG _CONFIG7L, _EBTR0_OFF_7L & _EBTR1_OFF_7L & _EBTR2_OFF_7L & _EBTR3_OFF_7L
@ __CONFIG _CONFIG7H, _EBTRB_OFF_7H

'************************************************* ****************************
'Config TIMERs

T0CON = %00000010 ' 16Bits 1/8 prescaler, Horloge Système, OFF

T1CON = %00001010 '1/1 prescaler, Quartz 32,768

T3CON = %01110001 ' ccp SUR TMR3,1/8 prescaler,Horloge système,ON

'************************************************* ****************************
'Config CCP1 arret CCP2

CCP1CON = %00000101 ' Capture sur front montant

CCP2CON = %00000000 'inhibition module CCP2

'************************************************* ****************************
'Inhibition SSP

SSPCON1.5 = 0

'************************************************* ****************************
'Config Interruptions

INTCON = %10000000
INTCON2 = %11110000
INTCON3 = %00000000

PIE1 = %00000100
PIE2 = %00000000

IPR1 = %00000001
IPR2 = %00000000

RCON = %10000000

'************************************************* ****************************
'Config ADC
'************************************************* ****************************

ADCON0 = %11000000
ADCON1 = %10000011

'************************************************* ****************************
'************************************************* ****************************
'Config et Prepositionnement E/S
'************************************************* ****************************

PORTA = %00000000
PORTB = %00000100
PORTC = 0
PORTD = 0
PORTE = 0

TRISA = %00111111
TRISB = %11100110
TRISC = %00000111
TRISD = %00000000
TRISE = %00000000
'
'************************************************* ****************************
'Alias E/S
'************************************************* ****************************

'MCLR/ sur Broche 1 par R/C/D

Voltage var PORTA.0 'TENSION Batterie / 4
TempA var PORTA.1 'LM335
TempH var PORTA.2 'LM335
Vref var PORTA.3 'TL431 = 4.096v ...
Raz var PORTA.4 'JUMPER Raz/Programmation
PressH var PORTA.5 'MPX5700

' var PORTB.0
Contact var PORTB.1 ' + 12 v sous clé ( / 3.3 = 3 - 5 v !!! )
Selection var PORTB.2 'Poussoir sélection Affichage
' var PORTB.3
AlLCD var PORTB.4 'Alimentation LCD FQU11P6 !!! 0 = ON : 1 = OFF
' var PORTB.5
' var PORTB.6
' var PORTB.7

' var PORTC.0
' var PORTC.1
Speed var PORTC.2 'Entrée compte-tours 1C/4T
Alm var PORTC.3 'Alarmes
' var PORTC.4
' var PORTC.5
' var PORTC.6
' var PORTC.7

Signal var PORTD.0 'Voyant Survitesse
Buzzer var PORTD.1 'Sortie commande Buzzer
RS var PORTD.2
E var PORTD.3
D4 var PORTD.4
D5 var PORTD.5
D6 var PORTD.6
D7 var PORTD.7

' var PORTE.0
' var PORTE.1
AlRef var PORTE.2



This is just an example for a 18F452 ... with a 2x16 LCD

Alain

turkuaz
- 11th March 2008, 16:27
Thanks for your information. My programer does everting .(config...)

I find the problem mysel.
I put a capasitor (47mF) between MCLR and nengative port and problem was dissdlwed.
Thanks.