51 단편기 - LCD12864 LCD
2088 단어 51 노트
#include
#include
#define uint unsigned int
#define uchar unsigned char
sbit LCD12864_READ = P0^7;
sbit LCD12864_RS = P3^5;
sbit LCD12864_RW = P3^6;
sbit LCD12864_EN = P3^4;
sbit LCD12864_RD = P3^7;
//
void Delay_Ms(uchar z)
{
uchar x,y;
for(x=z;x>0;x--)
for(y=120;y>0;y--);
}
/*******************LCD12864LCD *********************/
void LCD12864_busy()
{
LCD12864_RS = 0;
LCD12864_RW = 1;
LCD12864_EN = 1;
Delay_Ms(1);
P0 = 0xff;
while(1)
{
LCD12864_EN = 1;
if(LCD12864_READ == 0) break;
}
LCD12864_EN = 0;
}
/*******LCD12864WriteCommand ********************/
void LCD12864_Write_Cmd(unsigned char Cmd)
{
LCD12864_busy();
LCD12864_RS = 0;
LCD12864_RW = 0;
LCD12864_EN = 0;
Delay_Ms(1);
P0 = Cmd;
Delay_Ms(1);
LCD12864_EN = 1;
Delay_Ms(1);
LCD12864_EN = 0;
}
/**************LCD12864WriteByte *************/
void LCD12864_Write_Date(unsigned char date)
{
LCD12864_busy();
LCD12864_RS = 1;
LCD12864_RW = 0;
LCD12864_EN = 0;
P0 = date;
Delay_Ms(1);
LCD12864_EN = 1;
Delay_Ms(1);
LCD12864_EN = 0;
}
// *******************
void LCD12864_init()
{
LCD12864_RD = 1; //
LCD12864_Write_Cmd(0x34); //
LCD12864_Write_Cmd(0x30); //
LCD12864_Write_Cmd(0x0C); // ,
LCD12864_Write_Cmd(0x01); // LCD
}
//
void gotoxy(uchar x,uchar y)
{
if(x==1) {LCD12864_Write_Cmd(0x80+y-1);}
else if(x==2) {LCD12864_Write_Cmd(0x90+y-1);}
else if(x==3) {LCD12864_Write_Cmd(0x88+y-1);}
else if(x==4) {LCD12864_Write_Cmd(0x98+y-1);}
}
//
void LCD_write_zifu(uchar *p)
{
while(*p!=0)
{
LCD12864_Write_Date(*p);
p++;
}
}
/***** *****************************/
void main()
{
LCD12864_init();
gotoxy(1,1);
LCD_write_zifu("LCD , ");
gotoxy(2,1);
LCD_write_zifu("LCD , ");
gotoxy(3,1);
LCD_write_zifu("LCD , ");
gotoxy(4,1);
LCD_write_zifu("LCD , ");
while(1);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
51 단편기 - LCD12864 LCD텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.