⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd.c

📁 12位11通道AD转换芯片tlv2553,12位双通道DA转换芯片tlv5638
💻 C
字号:
#include"group.h"

xdata unsigned char CW _at_ 0xf9fc;	   	    //液晶控制地址
xdata unsigned char CR _at_ 0xf9fc;
xdata unsigned char DW _at_ 0xf9fd;
xdata unsigned char DR _at_ 0xf9ff;


bit flag;								    //标志位
//-----------------------------------------------
extern unsigned char lc_read(void)				    //读液晶命令
{
	unsigned char a;
	delay(100);
	a=CR;
	return(a);
}
//-----------------------------------------------
extern void readbf(void)					     	//读液晶忙
{ 
	while(flag)
	{
		flag=(bit)(lc_read()&0x80);
	}
}
//-----------------------------------------------
extern void lc_write(unsigned char a)		    	//写液晶命令
{
	delay(20);
	CW=a;
	delay(20);
}
//-----------------------------------------------
extern void ld_write(unsigned char a)		    	//写液晶数据
{
	delay(20);
	DW=a;
	delay(20);
}
//-----------------------------------------------
extern void lcd_init(void)					    	//液晶初始化
{
	readbf();
	lc_write(0x38);
	delay(500);
	readbf();
	lc_write(0x01);          //0001显示清除
	readbf();
	delay(500);
	lc_write(0x0c);          //11XX整体显示  1111光标开/闪烁  1100光标关/无闪
	readbf();
	delay(500);
	lc_write(0x06);          //011X光标右移  010X光标左移  0111屏幕所有文字左/右移
	delay(500);
}
//-----------------------------------------------
extern void lc_pos(unsigned char posx,unsigned char posy)				//设定显示位置  
{  
     posx=posx&0xf;
     posy=posy&0x1;                        
     lc_write(posx|posy*0x40+0x80);                      
}
//---------------------------------------------
extern void display_char(unsigned char x,unsigned char y,unsigned char ch)              //显示字符
{	
     readbf();
     lc_pos(x,y);
     ld_write(ch);
    	 
}
//--------------------------------------
extern void display_string(unsigned char x,unsigned char y,unsigned char code *string)  //显示字符串                                                                  //在指定点起显示一个字符串
{
     unsigned length;
     length=0;
	 readbf();
     while(string[length]!='\0')
     {
        display_char(x,y,string[length++]);
        x++;
     }
}
//---------------------------------------
extern void lcdclear(void)    //清屏
{    
     readbf();
     lc_write(0x01);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -