PIC16F684 sortida a LCD

G

goowiz

Guest
Hola, estic tractant de números de sortida a un samsung UC-20102-GNARS una línia de 20 caràcters amb pantalla LCD de PIC16f684 un microcontrolador.
Estic tenint alguns problemes ...Tinc coses per cable de la següent manera d'acord amb el PIN:

PIC ------------ LCD
14 ---------- --- GND
13
12
11
10 (C0) -------- D4
9 (C1) --------- D5
8 (C2) --------- D6
7 (C3) --------- D7
6
5
4
3 (A4) --------- RS
2 (A5) --------- Habilitació
1 ---------------
5 v

Aquí està el meu codi:
Codi:

# Include <Temp Sensor.h>

# Include <math.h># Defineix permetre PIN_A5

# Define RS PIN_A4

# Defineix LCD_TYPE 1/ / Funció / variable global declaració en

Iniciar nul (void);

InitLCD nul (void);

buit lcd_send_nibble (char c);

buit lcd_send_data (char c);

buit lcd_send_command (char comanda);

int i;void main ()

(

SET_TRIS_A (0x01);setup_adc_ports (sAN0 | VSS_VDD);

setup_adc (ADC_CLOCK_INTERNAL);

setup_timer_0 (RTCC_INTERNAL | RTCC_DIV_1);

setup_timer_1 (T1_DISABLED);

setup_timer_2 (T2_DISABLED, 0,1);

setup_comparator (NC_NC_NC_NC);

setup_vref (FALSE);

setup_oscillator (OSC_INTRC);InitLCD ();)InitLCD nul (void)

(/ / Inicialitzar LCD

output_low (ENABLE); / / Desactiva LCD

delay_ms (50) / / Retard de 50msSET_TRIS_C (0x00); / / C Tots els ports sèrie per a la sortida de

delay_ms (15) / / Retard de 15 msfor (i = 1; i <= 3; i)

(

output_low (RS) / / Conjunt de LCD per conjunt d'instruccions

output_c (3) / /

output_high (ENABLE); / / Habilitació LCD

delay_us (5) / / Retard 5us

output_low (ENABLE); / / Desactiva LCD

delay_ms (5) / / 5 ms de retard

)lcd_send_nibble (3) / /lcd_send_command (0x20); / / Conjunt de funcions:

/ / 4bit dades de longitud

/ / 1 línia

/ / 5 x 7 punts Formatlcd_send_command (0x0F); / / Display ON / OFF Control:

/ / Mostra SOBRE

/ / Cursor a

/ / EN parpelleiglcd_send_command (0x01); / / Esborrar la pantallalcd_send_command (0x05) / / Entrada Mode CONFIG:

/ / Decrement un

/ / Sí Majlcd_send_data (0x52) / / "R"

lcd_send_data (0x45) / / "E"

lcd_send_data (0x41) / / "A"

lcd_send_data (0x44) / / "D"

lcd_send_data (0x59) / / "I"

)buit lcd_send_nibble (char c)

(

output_c (c); / / Producte de caràcter LCD

output_high (ENABLE); / / Habilitació LCD

delay_us (5) / / Retard 5us

output_low (ENABLE); / / Desactiva LCD

)buit lcd_send_command (char comanda)

(

delay_ms (5) / / 5 ms de retard

output_low (RS) / / Conjunt de LCD per conjunt d'instruccions

lcd_send_nibble (comanda>> 4); / / Send alta bits

lcd_send_nibble (comanda & 0x0F); / / Send baixa bits

)buit lcd_send_data (char c)

(

delay_ms (5) / / 5 ms de retard

output_high (RS); / / Establir la LCD per dades

lcd_send_nibble (c>> 4); / / Send alta bits

lcd_send_nibble (c & 0x0F); / / Send baixa bits

)
 

Welcome to EDABoard.com

Sponsor

Back
Top