Код: Выделить всё
#include "c8051F120.h"
#include <string>
sbit LCD_rs=P7^4;
sbit LCD_rw=P7^2;
sbit LCD_en=P7^0;
#define LCD_data P6
void Port_IO_Init(void);
void LCD_init(void);
void LCD_command(unsigned char var);
void LCD_busy(void);
void LCD_senddata(unsigned char var);
void LCD_sendstring(unsigned char *var);
void LCD_build();
unsigned char Mas[40];
void main (void)
{
int i;
WDTCN = 0xDE;
WDTCN = 0xAD;
Port_IO_Init();
LCD_init ();
LCD_build();
for(i =0;i<35;i++) Mas[i] = 0;
strcpy(Mas,"0123456789ABCDEFGHJKL");
LCD_sendstring (Mas);
while (1) {};
}
void Port_IO_Init(void)
{
SFRPAGE = CONFIG_PAGE;
P6MDOUT = 0xFF;
P7MDOUT = 0x15;
XBR2 = 0xC0;
}
void LCD_init(void)
{LCD_data = 0x38;// 2 линии 8 бит 5х8 точек
LCD_rs = 0;// обработка данных как инструкций
LCD_rw = 0; // запись данных в ЖКИ
LCD_en = 1;
LCD_en = 0;
LCD_busy(); //пауза для обработки команд
LCD_data = 0x0F;//включить дисплей, курсор
LCD_rs = 0;
LCD_rw = 0;
LCD_en = 1;
LCD_en = 0;
LCD_busy();
LCD_data = 0x01;
LCD_rs = 0;
LCD_rw = 0;
LCD_en = 1;
LCD_en = 0;
LCD_busy();
LCD_data = 0x06;//режим введения авто увиличение без сдвига
LCD_rs = 0;
LCD_rw = 0;
LCD_en = 1;
LCD_busy();
}
void LCD_busy()
{unsigned char i,j;
for(i=0;i<50;i++) //A simple for loop for delay
for(j=0;j<255;j++);
}
void LCD_command(unsigned char var)
{
LCD_data = var;
LCD_rs = 0;
LCD_rw = 0;
LCD_en = 1;
LCD_en = 0;
LCD_busy();
}
void LCD_sendstring(unsigned char *var)
{ while(*var) //till string ends
LCD_senddata(*var++); //send characters one by one
}
void LCD_build()
{
LCD_command(0x48); //Load the location where we want to store
LCD_senddata(0x32); //Load row 1 data
LCD_senddata(0x0E); //Load row 2 data
LCD_senddata(0x0E); //Load row 3 data
LCD_senddata(0x0E); //Load row 4 data
LCD_senddata(0x1F); //Load row 5 data
LCD_senddata(0x00); //Load row 6 data
LCD_senddata(0x04); //Load row 7 data
LCD_senddata(0x00); //Load row
}
void LCD_senddata(unsigned char var)
{
LCD_data = var;
LCD_rs = 1;
LCD_rw = 0;
LCD_en = 1;
LCD_en = 0;
LCD_busy();
}Подскажите, с чем это может быть связано?? вот ссылка на данные по ЖКИ
http://zefiryn.tme.pl/dok/a06/pyc1602a-series-1.pdf


