📄 tft1602.c
字号:
/********************************************************************
TITLE: TFT1602.c
AUTHOR: GanGuoqiang
DISCRIPTION: TFT1602 USING P2 P1:3,4,5
DATE : 2008.11.23
***********************************************************************/
//#include "COMMON.c"
#include "reg51.h"
#include "STRING.H"
w_com(unsigned char);
w_data(unsigned char dat);
displaystr(unsigned char x,unsigned char y,char z[]); // extern
displaychr(unsigned char x,unsigned char y,char z); //extern
delayms(unsigned char ms);
sbit lcden=P1^3;
sbit rw=P1^4;
sbit rs=P1^5;
/********************************************************************
***********************************************************************/
init1602()
{
w_com(0x38);
delayms(20);
w_com(0x08);
delayms(20);
w_com(0x01);
delayms(200) ;
/* delayms(200) ;
delayms(200) ;
delayms(200) ;*/
w_com(0x06);
delayms(20);
w_com(0x0e); //movable;
delayms(20);
}
w_com(unsigned char com)
{
P2=com ;
rs=0x0;
rw=0x0;
lcden=0x0;
// delayms(1);
lcden=0x01;
// delayms(1);
lcden=0x0;
}
w_data(unsigned char dat)
{
P2=dat ;
rs=0x1;
rw=0x0;
lcden=0x0;
//delayms(1);
lcden=0x01;
//delayms(1);
lcden=0x0;
}
displaychr(unsigned char x,unsigned char y,char z)
{
//x&=0x0f;
//y&=0x01;
if(y) x|=0x40;
x|=0x80;
w_com(x);
w_data(z);
}
/* displaystr(unsigned char x,unsigned char y,char z[])
{
unsigned int num,i,j=0;
num=strlen(z);
for(i=0;i<num;i++)
{
//if(i>0x0f)
j=x+i;
j%=0x0f;
if(j==0) w_com(0x01);
if(y) j|=0x40;
j|=0x80;
w_com(j);
w_data(z[i]);
}
}*/
displaystr(unsigned char x,unsigned char y,char z[])
{
unsigned int num,i,j=0;
num=strlen(z);
for(i=0;i<num;i++)
{
j=x+i;
if(j>=0x0f)
y=1;
j%=0x0f;// i%=0x10;j&=0X0F;//
//if(j==0) w_com(0x01);
if(y) j|=0x40;
j|=0x80;
w_com(j);
w_data(z[i]);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -