📄 text1
字号:
#include <AT89X51.H>
#include <stdio.h>
#include <stdlib.h>
#include "LCD.h"
void delay(unsigned long time);
extern char code pic[];
void LCDHalf()
{
unsigned char i,j;
for(i=0;i<4;i++)
{
LCDWriteCom1(0xb8|i);
LCDWriteCom2(0xb8|i);
LCDWriteCom1(0);
LCDWriteCom2(0);
for(j=0;j<60;j++)
{
LCDWriteDat1(j);
LCDWriteDat2(j);
}
}
}
char code CHARSHAPE[]={
0xfa,0x11,0x11,0xfa, //A
0xfd,0x92,0x92,0x6c, //B
0x7c,0x82,0x82,0x44, //C
0xfd,0xc6,0xc6,0x7c,
};
void LCDShowChar(char x0,char page,char ch)
{
char j,x1;
char code *pChrShp;
x1=x0+3; //字符宽度
ch=ch-65;
pChrShp=CHARSHAPE;
LCDWriteCom1(0xb8|(page&3)); //社定字符显示页
LCDWriteCom2(0xb8|(page&3));
if(x0<60&&x1<60)
LCDWriteCom1(x0);
else if(x0<60)
{
LCDWriteCom1(x0);
LCDWriteCom2(0);
}
else if(x0>=60)
LCDWriteCom2(x0-60);
for(j=x0;j<=x1;j++)
{
if(j<60)LCDWriteDat1(*(pChrShp+(j-x0)));
else LCDWriteDat2(*(pChrShp+(j-x0)));
}
}
void LCDDisp(char x0,char x1,char page0,char page1,char code *pic)
{
char i,j;
char w;
for(i=page0;i<=page1;i++)
{
LCDWriteCom1(0xb8|i);
LCDWriteCom2(0xb8|i);
if(x0<60&&x1<60)
LCDWriteCom1(x0);
else if(x0<60)
{
LCDWriteCom1(x0);
LCDWriteCom2(0);
}
else if(x0>=60)
LCDWriteCom2(x0-60);
w=x1-x0;
for(j=x0;j<=x1;j++)
{
if(j<60)LCDWriteDat1(*(pic+(j-x0)+(i-page0)*w));
else LCDWriteDat2(*(pic+(j-x0)+(i-page0)*w));
}
}
}
void delay(unsigned long time)
{
unsigned long i;
for(i=0;i<time;i++);
}
/////////////////////////////////////////////////////////////////////
void InitCom()
{
TMOD=0x20; //定时器设为方式2
TL1=0xf4; //设置定时器溢出周期:22.1184M---9600b/s
TH1=0xf4;
PCON=0x80;
TR1=1;
SCON=0x50;
IE=0;
TI=1;
}
char code s0[15]="Hello World";
void cominterrupt(void )interrupt 4 using 3
{
char i,temp;
if(TI==1)
{TI=0;
return;
}
else if(RI==1)
{
RI=0;
temp=SBUF;
SBUF=temp-1;
return;
}
}
void main()
{
unsigned char ch1[10];
int x,y;
unsigned char dat;
InitCom();
// LCDInit();
// LCDClear();
EA=1;
ES=1;
while(1){
printf("hfgh");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -