Ankita Agarwal
Присъединил се: 10 юни 2009 Публикации: 6
| 04 юли 2009 13:11 взаимодействие JHD161A с PIC18F2550 | | | Tags: |
|
| Аз писах този код да се намесвам JHD161A ми PIC18F2550 но LCD показва нищо ... аз съм, свързани с този код PLZ Помощ
# включват <p18cxxx.h> # включват <delays.h>
# pragma конфиг PLLDIV = 5 / / (20 MHz кристал върху PICDEM FS USB съвет) # pragma конфиг CPUDIV = OSC1_PLL2 # pragma конфиг USBDIV = 2 / / Часовник източник от 96MHz PLL / 2 # pragma конфиг FOSC = HSPLL_HS # pragma конфиг FCMEN = OFF # pragma конфиг IESO = OFF # pragma конфиг PWRT = OFF # pragma конфиг БОР = ПО # pragma конфиг BORV = 3 # pragma конфиг VREGEN = ON / / USB Напрежение регулатор # pragma конфиг WDT = OFF # pragma конфиг WDTPS = 32768 # pragma конфиг MCLRE = ПО # pragma конфиг LPT1OSC = OFF # pragma конфиг PBADEN = OFF # pragma конфиг CCP2MX = ПО # pragma конфиг STVREN = ПО # pragma конфиг LVP = OFF # pragma конфиг ТРАСИРАНЕ = OFF # pragma конфиг XINST = OFF / / разширен набор инструкции # pragma конфиг CP0 = OFF # pragma конфиг CP1 = OFF # pragma конфиг CP2 = OFF # pragma конфиг CP3 = OFF # pragma конфиг CPB = OFF # pragma конфиг CPD = OFF # pragma конфиг WRT0 = OFF # pragma конфиг WRT1 = OFF # pragma конфиг WRT2 = OFF # pragma конфиг WRT3 = OFF # pragma конфиг WRTB = OFF / / Обувка Блок Напишете защита # pragma конфиг WRTC = OFF # pragma конфиг WRTD = OFF # pragma конфиг EBTR0 = OFF # pragma конфиг EBTR1 = OFF # pragma конфиг EBTR2 = OFF # pragma конфиг EBTR3 = OFF # pragma конфиг EBTRB = OFF
# определят LCD_data PORTB # определят LCD_rs PORTAbits.RA0 # определят LCD_rw PORTAbits.RA1 # определят LCD_en PORTAbits.RA2
недействителни LCD_busy (нищожна); недействителни LCD_init (нищожна);
недействителни главната (недействителни) ( ADCON1 | = 0x0F; TRISAbits.TRISA0 = 0; TRISAbits.TRISA1 = 0; TRISAbits.TRISA2 = 0; LCD_init (); PORTB = 0x83; LCD_rs = 0; / / Избрани командване регистър LCD_rw = 0; / / Пишем ви данни в регистъра LCD_en = 1; / / Разрешаване H-> л LCD_en = 0; LCD_busy ();
PORTB = "А"; / / Функция включен: 1 линия, 8-битов, 5x7 точки LCD_rs = 1; / / Избрани данни регистър LCD_rw = 0; / / Пишем ви данни в регистъра LCD_en = 1; / / Разрешаване H-> л LCD_en = 0; LCD_busy ();
докато (1) ( ); )
недействителни LCD_init (недействителни) ( TRISB = 0; PORTB = 0x30; / / Функция включен: 1 линия, 8-битов, 5x7 точки LCD_rs = 0; / / Избрани командване регистър LCD_rw = 0; / / Пишем ви данни в регистъра LCD_en = 1; / / Разрешаване H-> L LCD_en = 0; LCD_busy (); / / Изчакайте LCD да обработим командата
PORTB = 0x0E; LCD_rs = 0; LCD_rw = 0; LCD_en = 1; LCD_en = 0; LCD_busy ();
PORTB = 0x01; / / Ясно LCD LCD_rs = 0; LCD_rw = 0; LCD_en = 1; LCD_en = 0; LCD_busy (); / / Изчакайте LCD да обработим командата
PORTB = 0x06; LCD_rs = 0; LCD_rw = 0; LCD_en = 1; LCD_en = 0; LCD_busy ();
)
недействителни LCD_busy (недействителни) (
Delay10KTCYx (240); )
Но нищо не се показва в LCD къде е проблема и cudn't получат. |
|