PIC16F684 produkcijos LCD

G

goowiz

Guest
Sveiki,
mane bando išvesti numerius Samsung UC-20102-GNARS vienoje eilutėje 20 ženklų LCD ekranas nuo PIC16f684 mikrokontrolerów.
Man kai kurių problemų ...Aš ko Prijungiamas taip pagal Kaisčiai #:

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) --------- Įjungti
1 ---------------
5 prieš

Štai mano kodas:
Kodas:

# include <Temp Sensor.h>

# include <math.h># define leidžia PIN_A5

# define RS PIN_A4

# define LCD_TYPE 1/ / Function / globaliai Kintamasis Delcaration

void Initialize (void);

tuščia InitLCD (void);

tuščia lcd_send_nibble (char c);

tuščia lcd_send_data (char c);

tuščia lcd_send_command (char komandą);

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 ();)tuščia InitLCD (tuščia)

(/ / Inicjalizacja LCD

output_low (leidžia); / / Išjungti LCD

delay_ms (50) / / Delay už 50msSET_TRIS_C (0x00); / / Visos C uostuose nustatyti išvesties

delay_ms (15) / / Delay for 15 msfor (i = 1, i <= 3; i)

(

output_low (RS); / / Nustatykite LCD ir komandų rinkinys

output_c (3); / /

output_high (leidžia); / / Įjungti LCD

delay_us (5); / / Delay 5us

output_low (leidžia); / / Išjungti LCD

delay_ms (5); / / užlaikymas 5ms

)lcd_send_nibble (3); / /lcd_send_command (0x20); / / Funkcija Nustatykite:

/ / 4bit duomenų ilgis

/ / 1 Line

/ / 5 x 7 Dot Formataslcd_send_command (0x0F); / / Display ON / OFF Control:

/ / Rodyti

/ / Žymeklį

/ / Blink DĖLlcd_send_command (0x01); / / Parodyti Išvalytilcd_send_command (0x05); / / Įrašas nustatytas režimas:

/ / Mažinti vienas

/ / Taip Shiftlcd_send_data (0x52); / / "R",

lcd_send_data (0x45); / / "E

lcd_send_data (0x41); / / "A"

lcd_send_data (0x44); / / "D"

lcd_send_data (0x59); / / "T"

)tuščia lcd_send_nibble (char c)

(

output_c (c); / / išvesties simbolių LCD

output_high (leidžia); / / Įjungti LCD

delay_us (5); / / Delay 5us

output_low (leidžia); / / Išjungti LCD

)tuščia lcd_send_command (char komandą)

(

delay_ms (5); / / užlaikymas 5ms

output_low (RS); / / Nustatykite LCD ir komandų rinkinys

lcd_send_nibble (command>> 4); / / Siųsti aukštos bitai

lcd_send_nibble (command & 0x0F); / / Siųsti maža bitų

)tuščia lcd_send_data (char c)

(

delay_ms (5); / / užlaikymas 5ms

output_high (RS); / / Nustatykite LCD duomenų rinkinys

lcd_send_nibble (c>> 4); / / Siųsti aukštos bitai

lcd_send_nibble (c & 0x0F); / / Siųsti maža bitų

)
 

Welcome to EDABoard.com

Sponsor

Back
Top