📄 lcd_12864.h
字号:
/***************************************
功能:LCD128*64指令程序
文件名:LCD_12864.H
硬件:AT89S52
编译人:罗忠超
编译:Keil-2008-12-9
****************************************/
#ifndef uchar
#define uchar unsigned char
#endif
#ifndef uint
#define uint unsigned char
#endif
#ifndef __led12864_H__
#define __led12864_H__
#include<intrins.h>
#define LCD_DATA P2
#define ture 1;
#define false 0;
sbit RS = P3^5;
sbit RW = P3^4;
sbit E = P3^3;
sbit CS1 = P3^2;
//sbit CS2 = P3^5;
uchar Get_State(uchar cs); //uchar Get_State_R();
void pix(uchar x,uchar y) ; //对应点的坐标
//uchar Read_Data(uchar cs); //读数据状态
void Send_Data(uchar ch,uchar cs); //发送数据
void Send_Data_p(uint *ch,uchar cs);
void Send_Cmd(uchar cmd,uchar cs); //void Send_Cmd_R(uchar cmd) ; //发送命令
uchar Led_Busy(uchar cs); //检查是否可以发送数据
void Led_Open(uchar cs); //打开液晶显示器
void Led_StartLine(uchar cs); //设置起始行
void Led_SetPage(uchar page,uchar cs); //设置页地址
void Led_SetRow(uchar row,uchar cs); //设置列地址
void Number(uchar page,uchar row,uchar cs); //显示数字
void Chinese(uchar page,uchar row,uchar cs,bit Click_Flag); //显示汉字
/**********************************************
/ 读状态字: uchar Get_State(); /
/ /
/**********************************************/
uchar Get_State(uchar cs)
{
uchar state;
E = 0;
if(cs==1)
{
CS1 = 1; //选左半屏
// CS2 = 0;
}
else
{
CS1 = 0; //选右半屏
// CS2 = 1;
}
RS = 0;
RW = 1;
_nop_();
E = 1;
_nop_();
E = 0; //数据建立
state = LCD_DATA ;
return state ;
}
/**********************************************
/ 读数据: void Read_Data(uchar ch); /
/ /
/**********************************************/
/*
uchar Read_Data(uchar cs)
{
uchar dat;
E = 0;
while(Led_Busy(cs));
if(cs==1)
{
CS1=1; //选择左半屏
CS2=0;
}
else
{
CS1=0; //选择右半屏
CS2=1;
}
RS=1;
RW=1;
_nop_();
E =1;
_nop_(); //下降沿
E=0;
dat=LCD_DATA ;
return dat;
}
/**********************************************
/ 发送数据:Send_Data(uchar ch,uchar cs); /
/ /
/**********************************************/
void Send_Data(uchar ch,uchar cs)
{
while(Led_Busy(cs));
E = 0 ;
if(cs==1)
{
CS1=1; //选择左半屏
// CS2=0;
}
else
{
CS1=0; //选择右半屏
// CS2=1;
}
RS = 1;
RW = 0;
_nop_();
E = 1;
_nop_();
LCD_DATA = ch;
E = 0;
}
/**********************************************
/ 发送命令
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -