📄 12864.c
字号:
//cs PE3 SDA PA0 SCLK PE2
//#include <mc9s12dg128.h>
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit SDA=P3^6;
sbit SCLK=P3^3;
sbit CS=P3^2;
sbit EN=P3^5;
//发送一个字节数据
void send(uchar a)
{
uchar i,b;
b=a;
SCLK=0;
for(i=0;i<=7;i++)
{
if((b&0x80)==0x00)SDA=0;
else SDA=1;
SCLK=1;
SCLK=0;
b<<=1;
}
}
void sendtolcd(uchar shu,uchar c_d)
{
uchar x,y;
x=shu&0xf0;
y=shu&0x0f;
y<<=4;
if(c_d==1)send(0xf8);
else send(0xfa);
send(x);
send(y);
}
void lcd_init()
{
EN=0;
CS=1;
sendtolcd(0x30,1); //功能设定,基本指令
sendtolcd(0x0c,1); //显示开关
sendtolcd(0x01,1); //清屏
sendtolcd(0x06,1); //进入设定点
sendtolcd(0x02,1); //地址归位
}
void send_lcd(uchar *p,uchar num)
{
uchar *str,i;
str=p;
for(i=0;i<num;i++)
{
sendtolcd(*p,0);
p++;
}
}
void set_xy(uchar x,uchar y) //设定显示位置,x为行(1-4),y为列(1-8)
{
uchar a;
if((x==1))a=y-1;
if((x==2))a=16+y-1;
if((x==3))a=8+y-1;
if((x==4))a=24+y-1;
sendtolcd(0x80+a,1);
}
void send_xylcd(uchar x,uchar y,uchar *p,uchar num)
{
set_xy(x,y);
send_lcd(p,num);
}
void lcd(uchar *p)
{
while(*p!='\0')
{
sendtolcd(*p,0);
p++;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -