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

📄 图形方式显示汉字.c

📁 液晶240*128内嵌T6963汉字显示图形方式驱动程序
💻 C
字号:
 #include"stdio.h"
#include"reg52.h"
#include"stdlib.h"
#include"intrins.h"
#include"absacc.h"
unsigned char xdata lcddata _at_ 0xB000;
unsigned char xdata lcdcomm _at_ 0xB001;
unsigned char code cctab[]={    
        0X02,0x04,0x08,0x3F,0x20,0x20,0x20,0x20,//;白
        0X3F,0x20,0x20,0x20,0x20,0x3F,0x20,0x00,
        0X00,0x00,0x08,0xFC,0x08,0x08,0x08,0x08,
        0XF8,0x08,0x08,0x08,0x08,0xF8,0x08,0x00,
        0X00,0x1F,0x10,0x10,0x10,0x10,0x10,0x1F,//;日
        0X10,0x10,0x10,0x10,0x10,0x1F,0x10,0x00,
        0X10,0xF8,0x10,0x10,0x10,0x10,0x10,0xF0,
        0X10,0x10,0x10,0x10,0x10,0xF0,0x10,0x00,
        0X08,0x08,0x08,0x17,0x10,0x30,0x50,0x90,//;依
        0X11,0x12,0x14,0x10,0x10,0x10,0x10,0x10,
        0X40,0x20,0x24,0xFE,0x40,0x40,0xA0,0xA4,
        0XA8,0x90,0x90,0x88,0x8E,0xA4,0xC0,0x80,
        0X01,0x01,0x01,0x01,0x41,0x41,0x41,0x41,//;山
        0X41,0x41,0x41,0x41,0x41,0x7F,0x40,0x00,
        0X00,0x00,0x00,0x00,0x04,0x04,0x04,0x04,
        0X04,0x04,0x04,0x04,0x04,0xFC,0x04,0x00,
        0X00,0x1F,0x10,0x10,0x1F,0x11,0x10,0x10,//;尽
        0X10,0x16,0x21,0x40,0x86,0x01,0x00,0x00,
        0X08,0xFC,0x08,0x08,0xF8,0x08,0x80,0x80,
        0X40,0x20,0x90,0x0E,0x04,0x80,0xC0,0x40,
        0X04,0x04,0x3F,0x04,0x04,0xFF,0x01,0x1F,//;黄
        0X11,0x1F,0x11,0x1F,0x10,0x04,0x18,0x60,
        0X40,0x50,0xF8,0x40,0x44,0xFE,0x10,0xF8,
        0X10,0xF0,0x10,0xF0,0x00,0x60,0x18,0x04,
        0X40,0x3F,0x10,0x00,0x80,0x67,0x24,0x0C,//;河
        0X14,0x24,0xE7,0x24,0x20,0x20,0x20,0x20,
        0X04,0xFE,0x08,0x08,0x48,0xE8,0x48,0x48,
        0X48,0x48,0xC8,0x48,0x08,0x08,0x28,0x10,
        0X04,0x02,0x01,0x01,0x01,0x02,0x02,0x02,//;入
        0X04,0x04,0x08,0x08,0x10,0x20,0x40,0x80,
        0X00,0x00,0x00,0x00,0x00,0x80,0x80,0x80,
        0X40,0x40,0x20,0x20,0x10,0x10,0x0E,0x04,
        0X02,0x42,0x33,0x14,0x8B,0x62,0x22,0x0A,//;海
        0X1F,0x24,0xE4,0x24,0x27,0x20,0x20,0x20,
        0X00,0x08,0xFC,0x00,0xF8,0x88,0x48,0x08,
        0XFE,0x88,0x48,0x08,0xFC,0x08,0x28,0x10,
        0X00,0x40,0x37,0x10,0x80,0x61,0x27,0x08,//;流
        0X11,0x21,0xE1,0x21,0x21,0x21,0x22,0x24,
        0X80,0x48,0xFC,0x40,0x90,0x08,0xFC,0x04,
        0X50,0x50,0x50,0x50,0x52,0x52,0x4E,0x40,
        0X28,0x28,0x44,0x92,0x10,0x29,0x46,0x82,//;欲
        0X7C,0x44,0x44,0x44,0x44,0x7C,0x45,0x02,
        0X40,0x40,0x40,0x7C,0x84,0x28,0x20,0x20,
        0X20,0x20,0x50,0x50,0x90,0x88,0x0E,0x04,
        0X02,0x01,0x7F,0x40,0x84,0x0C,0x12,0x02,//;穷
        0X3F,0x02,0x02,0x04,0x04,0x08,0x10,0x20,
        0X00,0x00,0xFE,0x02,0x44,0x30,0x10,0x08,
        0XFC,0x08,0x08,0x08,0x08,0x88,0x50,0x20,
        0X00,0x00,0x3F,0x01,0x01,0x01,0x01,0xFF,//;千
        0X01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
        0X20,0xF0,0x00,0x00,0x00,0x00,0x04,0xFE,
        0X00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
        0X00,0x3F,0x21,0x21,0x3F,0x21,0x21,0x21,//;里
        0X3F,0x01,0x01,0x7F,0x01,0x01,0xFF,0x00,
        0X08,0xFC,0x08,0x08,0xF8,0x08,0x08,0x08,
        0XF8,0x00,0x08,0xFC,0x00,0x04,0xFE,0x00,
        0X00,0x1F,0x10,0x10,0x10,0x1F,0x10,0x10,//;目
        0X10,0x1F,0x10,0x10,0x10,0x1F,0x10,0x00,
        0X10,0xF8,0x10,0x10,0x10,0xF0,0x10,0x10,
        0X10,0xF0,0x10,0x10,0x10,0xF0,0x10,0x00,
        0X00,0xFF,0x01,0x3F,0x21,0x21,0x3F,0x21,//;更
        0X21,0x3F,0x29,0x05,0x02,0x05,0x18,0xE0,
        0X04,0xFE,0x08,0xFC,0x08,0x08,0xF8,0x08,
        0X08,0xF8,0x08,0x00,0x00,0x80,0x70,0x0E,
        0X01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,//;上
        0X01,0x01,0x01,0x01,0x01,0x01,0xFF,0x00,
        0X00,0x00,0x00,0x00,0x10,0xF8,0x00,0x00,
        0X00,0x00,0x00,0x00,0x00,0x04,0xFE,0x00,
        0X00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,//;一
        0X00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
        0X00,0x00,0x00,0x00,0x00,0x00,0x04,0xFE,
        0X00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
        0X00,0x1F,0x10,0x10,0x1F,0x10,0x10,0x17,//;层
        0X10,0x10,0x1F,0x11,0x22,0x24,0x4F,0x80,
        0X04,0xFE,0x04,0x04,0xFC,0x00,0x10,0xF8,
        0X00,0x04,0xFE,0x00,0x10,0x08,0xFC,0x04,
        0X10,0x12,0x11,0x10,0xFF,0x11,0x3A,0x34,//;楼
        0X50,0x5F,0x91,0x12,0x11,0x10,0x11,0x16,
        0X40,0x48,0x50,0x44,0xFE,0x50,0x4C,0x44,
        0X80,0xFE,0x08,0x08,0xB0,0x40,0xB0,0x08

};
void st1busycheck()//判断液晶读写状态
{
    unsigned char commbyte;
    commbyte=lcdcomm&0x03;
    while(commbyte!=0x03)
    {
        ;
    }
}

void writedata(unsigned char databyte)//向液晶写数据
{
    st1busycheck();
    lcddata=databyte;
}
void writecommand0(unsigned char comm)//无参数指令入口
{
    st1busycheck();
    lcdcomm=comm;
}
void writecommand1(unsigned char dat2,comm)//单字节参数指令入口
{
    writedata(dat2);
    st1busycheck();
    lcdcomm=comm;
}
void writecommand2(unsigned char dat1,dat2,comm)//双字节参数指令入口
{
    writedata(dat1);
    writedata(dat2);
    st1busycheck();
    lcdcomm=comm;
}

void putchinesetext(unsigned char x,y,cod)//图形方式显示
{
    unsigned int j,count;
    unsigned char dat1,dat2;
    j=y*0x20+x;
    dat1=j%256;
    dat2=j/256+0x08;
    for(count=0;count<16;count++)
    {
          writecommand2(dat1,dat2,0x24);
          dat2=cctab[cod];
          writecommand1(dat2,0xc0);
          dat2=cctab[cod+0x10];
          writecommand1(dat2,0xc0);
          j=j+32;
          dat1=j%256;
          dat2=j/256+0x08;
          cod++;
    }
}
void lcdclear()//清屏
{
    unsigned int lcdclear;
    writecommand2(0x00,0x00,0x24);
    writecommand0(0xb0);
    lcdclear=1024;
    while(lcdclear<8193)
    {
        writedata(0x00);
        lcdclear++;
    }
    writecommand0(0xb2);
}
void lcdstart()
{
    writecommand2(0x00,0x00,0x40);//文本区首地址
    writecommand2(0x20,0x00,0x41);//文本区宽度
    writecommand2(0x00,0x08,0x42);//图形区首地址
    writecommand2(0x20,0x00,0x43);//图形区宽度
    writecommand0(0xa7);//字体形状8*7
    writecommand0(0x80);//文本、图形显示方式“或”关系
    writecommand0(0x9c);//启用光标、文本、图形显示
    writecommand0(0x05);
}

void main()
{
    lcdstart();
    lcdclear();
        putchinesetext(0x00,0x00,0x00);//白
        putchinesetext(0x02,0x00,0x20);//日
        putchinesetext(0x04,0x00,0x40);//依
        putchinesetext(0x06,0x00,0x60);//山
        putchinesetext(0x08,0x00,0x80);//尽
        putchinesetext(0x00,0x10,0xa0);//黄
        putchinesetext(0x02,0x10,0xc0);//河
        putchinesetext(0x04,0x10,0xe0);//入
        putchinesetext(0x06,0x10,0x100);//海
        putchinesetext(0x08,0x10,0x120);//流
        putchinesetext(0x00,0x20,0x140);//欲
        putchinesetext(0x02,0x20,0x160);//穷
        putchinesetext(0x04,0x20,0x180);//千
        putchinesetext(0x06,0x20,0x1a0);//里
        putchinesetext(0x08,0x20,0x1c0);//路
        putchinesetext(0x00,0x30,0x1e0);//欲
        putchinesetext(0x02,0x30,0x200);//穷
        putchinesetext(0x04,0x30,0x220);//千
        putchinesetext(0x06,0x30,0x240);//里
        putchinesetext(0x08,0x30,0x260);//路
}

        

⌨️ 快捷键说明

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