LCD UYGULAMA


#include <p18F4550.h>
#include <xlcd.h>
#include <delays.h>
void DelayFor18TCY( void )
{
Nop();
Nop();
Nop();
Nop();
Nop();
Nop();
Nop();
Nop();
Nop();
Nop();
Nop();
Nop();
}
void DelayPORXLCD (void)
{
//Delay1KTCYx(10); // Delay of 15ms
// Cycles = (TimeDelay * Fosc) / 4
// Cycles = (15ms * 16MHz) / 4
// Cycles = 60,000
return;
}
void DelayXLCD (void)
{
//Delay1KTCYx(10); // Delay of 5ms
// Cycles = (TimeDelay * Fosc) / 4
// Cycles = (5ms * 16MHz) / 4
// Cycles = 20,000
return;
}
void main( void )
{
char data[]="   MPLAB-C18";
char data2[]="LCD UYGULAMASI";
// configure external LCD
OpenXLCD( FOUR_BIT & LINES_5X7 );
DelayXLCD;   // 5 ms lik gecikme gerçekleştirir.
//   DelayFor18TCY Delay for 18 cycles
//   DelayPORXLCD Delay for 15 ms.
//   DelayXLCD Delay for 5 ms.
putsXLCD( data );
SetDDRamAddr(0x40); // imleç ikinci satırın başından itibaren yazar
// kursörün başlangıç yerini belirliyoruz.
putsXLCD( data2 );
while( BusyXLCD() );
WriteCmdXLCD( BLINK_OFF & CURSOR_OFF);
//   BLINK_ON -> KURSÖRÜN BULUNDUGU KAREYİ YAKAR
//   CURSOR_ON->KURSÖRÜ AÇAR
//   SHIFT_CUR_LEFT Cursor shifts to the left
//   SHIFT_CUR_RIGHT Cursor shifts to the right
//   SHIFT_DISP_LEFT Display shifts to the left
//   SHIFT_DISP_RIGHT Display shifts to the right
while(1);
}
DEVRE ŞEMASI

Yorumlar