функция строб импульса:
void strob (void)
{
delay_us(500);
PORTC.2=1; // порт подключается к Е ножке экрана
delay_us(500);
PORTC.2=0;
}
функция отправки байта на экран:
(старшая тетрада порта D поключается к экрану)
void send_byte (unsigned char byte_s)
{
unsigned char temp;
temp=byte_s & 0b11110000;
PORTD=(PORTD & 0b00001111) | temp;
strob();
temp=byte_s ‹‹ 4;
PORTD=(PORTD & 0b00001111)| temp ;
strob();
delay_ms(2);
}
функция очистки экрана:
void lcdclr(void)
{
PORTC.3=0; порт подключается к RS ножке экрана
send_byte(1);
delay_ms(2);
}
функция инициализации экрана:
void lcd_init (void)
{
delay_ms(20);
PORTC.3=0;
PORTC.2=0;
send_byte(0b00110011);
send_byte(0b00110010);
send_byte(0b00101000);
send_byte(0b00001000);
send_byte(0b00001100);
send_byte(0b00000001);
}
функция перехода в позицию хх:уу
хх начинается с 0, а уу с 1
void gotoxy (unsigned char xx,unsigned char yy)
{
if (yy==1)xx=xx+128; else xx=0x40+xx+128;
PORTC.3=0;
send_byte(xx);
PORTC.3=1;
}
Даташит выкладываю ниже...
Прикрепленный файл:
5646480.rar