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

📄 7.0.c

📁 北京宁河电子提供的单片机驱动台湾群创的彩色TFT屏
💻 C
字号:
#include<reg51.h>
#include<stdio.h>
#include<absacc.h>
#include<math.h>
#include<INTRINS.h>
#define uchar unsigned char
uchar *p,*p1,*p2;/*建立数组指针*/
sbit A0=P2^0;
sbit A1=P2^1;
sbit E=P2^7;/*读写使能信号,1有效*/
sbit R_W=P3^6;/*读写选择信号;1为读选通,0为写选通*/
sbit D_I=P3^7;/*数据指令选择信号;1为数据操作,0为写指令或读状态*/
char code hanzi[25][33]=
{
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xE0,0x00,0x00,0x00,0xE0,0x00,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0x00,
 0x01,0xF0,0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0xF0,0x00,0x00,
 0x00,0x00,0xE0,0x00,0x00,0x00,0x70,0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x78,0x00,
 0x00,0x00,0x78,0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x0F,0xF8,0x00,0x00,0x00,0x70,
 0x00,0x00,0x00,0x70,0x00,0x00,0x00,0x38,0x00,0x00,0x01,0xF8,0x00,0x00,0x00,0xE0,
 0x00,0x00,0x07,0xFE,0xF8,0x00,0x00,0x38,0x70,0x00,0x00,0x00,0x01,0xFC,0x00,0x00,
 0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x00,0xE0,0x00,0x00,0x03,0xE0,0xE0,0x00,0x00,
 0x3C,0x70,0x00,0x00,0x00,0x7F,0xFE,0x00,0xC0,0x01,0xFC,0x00,0x1F,0x00,0x00,0x00,
 0x00,0xE0,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,0x1C,0x70,0x00,0x00,0x3F,0xFC,0x00,
 0x00,0xC7,0xFF,0xFE,0x00,0xF3,0x80,0x00,0x00,0x00,0xE0,0x00,0x00,0x00,0x03,0x80,
 0x00,0x00,0x1C,0x70,0x00,0x3F,0xFE,0x00,0x00,0x01,0xFF,0x00,0x3F,0x00,0x03,0x80,
 0x00,0x00,0x00,0xE7,0xE0,0x00,0x00,0x07,0x00,0x00,0x00,0x18,0x60,0xC0,0x0F,0x00,
 0x00,0x00,0x01,0xC0,0x00,0x38,0x00,0x03,0x80,0x00,0x00,0x03,0xFF,0xF8,0x00,0x00,
 0x1E,0x00,0x00,0x00,0x18,0x61,0xE0,0x00,0x00,0x0C,0x00,0x03,0xC0,0x00,0x60,0x00,
 0x03,0x80,0x00,0x00,0xFF,0xE0,0xF0,0x00,0x00,0x0E,0x00,0x00,0x00,0x18,0x61,0xE0,
 0x00,0x00,0xFF,0x00,0x07,0x80,0x00,0x00,0x00,0x03,0xF8,0x07,0x00,0x70,0xE0,0xF0,
 0x00,0x00,0x0E,0x1F,0xC0,0x00,0x38,0x67,0x80,0x00,0x7F,0x8F,0x80,0x03,0x80,0x00,
 0x00,0x00,0x3F,0x80,0x7F,0xC0,0x70,0xE0,0xE0,0x00,0x00,0x0F,0xFF,0xF0,0x0F,0xF8,
 0x6E,0x00,0x00,0x38,0x0E,0x00,0x00,0x00,0x1F,0xF0,0x07,0xFF,0x0F,0xE7,0xC0,0x30,
 0xFE,0xE0,0x00,0x01,0xFF,0xC0,0x00,0x07,0x18,0x78,0x00,0x00,0x18,0x0C,0x00,0x00,
 0x07,0xFF,0xF0,0x07,0x8F,0x0E,0x03,0x80,0x3F,0xF8,0xE0,0x01,0xFF,0xE7,0x00,0x00,
 0x00,0x18,0x60,0x00,0x00,0x18,0x1C,0x00,0x00,0x7F,0xE0,0x00,0x00,0x0F,0x06,0x07,
 0x80,0x38,0xE0,0xE0,0x00,0xF8,0x07,0x00,0x00,0x00,0x18,0x60,0x00,0x00,0x1C,0x7C,
 0x00,0x00,0x00,0x70,0x00,0x00,0x1F,0x07,0x07,0x00,0x38,0xE1,0xC0,0x00,0x00,0x07,
 0x00,0x00,0x00,0x18,0x60,0x00,0x00,0x1F,0xE0,0x00,0x00,0x00,0x70,0x00,0x00,0x3F,
 0xF7,0x07,0x00,0x38,0xE1,0xC0,0x00,0x00,0x07,0x00,0x00,0x00,0x18,0x60,0x18,0x00,
 0x0D,0xC0,0x00,0x00,0x00,0x70,0x00,0x00,0x3B,0x77,0x07,0x00,0x18,0xFF,0xC0,0x00,
 0x00,0x07,0x00,0x00,0x00,0x38,0x60,0x18,0x00,0x00,0xC0,0x00,0x00,0x00,0x70,0x00,
 0x00,0x73,0x07,0x3F,0x00,0x1F,0xFF,0xC3,0x00,0x00,0x07,0x00,0x00,0x00,0x78,0x60,
 0x18,0x00,0x60,0xC0,0x00,0x00,0x00,0x70,0x00,0x00,0xE3,0x03,0xFE,0x00,0x18,0xE1,
 0x83,0x00,0x00,0x07,0x00,0x00,0x03,0xD8,0x60,0x18,0x00,0x60,0xC7,0xC0,0x00,0x00,
 0x30,0x00,0x01,0xC3,0x03,0x00,0x00,0x00,0xE0,0x03,0x00,0x00,0x07,0x00,0x00,0x0F,
 0x98,0x70,0x3C,0x00,0xE0,0xC3,0xE0,0x00,0x00,0x30,0x00,0x03,0x83,0x03,0x00,0x00,
 0x00,0xE0,0x03,0x00,0x00,0x07,0x00,0x00,0x3E,0x18,0x7C,0xFC,0x00,0xE0,0xC1,0xF0,
 0x00,0x00,0x70,0x00,0x06,0x03,0x00,0x00,0x00,0x00,0x60,0x03,0x80,0x00,0x07,0x00,
 0x00,0x1C,0x18,0x3F,0xF8,0x01,0xE0,0xC0,0xF0,0x00,0x00,0x70,0x00,0x00,0x03,0x00,
 0x00,0x00,0x00,0x70,0x07,0x80,0x00,0x07,0x00,0x00,0x00,0x18,0x07,0x80,0x01,0xC0,
 0xC0,0x70,0x00,0x00,0x70,0x00,0x00,0x07,0x00,0x00,0x00,0x00,0x78,0x1F,0x80,0x00,
 0xFF,0x00,0x00,0x00,0x18,0x00,0x00,0x01,0x8D,0xC0,0x00,0x00,0x03,0x70,0x00,0x00,
 0x07,0x00,0x00,0x00,0x00,0x3F,0xFF,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,
 0x00,0x07,0xC0,0x00,0x00,0x01,0xF0,0x00,0x00,0x07,0x00,0x00,0x00,0x00,0x07,0xF8,
 0x00,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,0x00,0xF0,
 0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x01,0xC0,0x00,0x00,0x00,0xE0,0x00,0x00,0x03,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x00,0x00,
 0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
uchar data l1=33;
uchar data l2=25;
uchar data page=0x00;
uchar data col1=0x00;
uchar data col=0x00;
uchar data yanse1=0x00;
uchar data yanse2=0xf0;
#define dlcd XBYTE[0x0000]/*定义送数据的地址*/
#define clcd1 XBYTE[0x0100]/*定义送指令的地址*/
#define clcd2 XBYTE[0x0200]/*定义送指令的地址*/
#define clcd3 XBYTE[0x0300]/*定义送指令的地址*/
/**************************************************/
void Clearlcd();/*清屏*/
void Hanz();
void Hanz1();
void Imim();/*初始化*/
void Delay();/*延时*/
/********************主程序********************/
void main()
{
 Delay();/*延时*/
 Imim();/*初始化*/
 p=hanzi;
 Hanz();
 loop:goto loop;
 }
/********************初始化子程序********************/
void Imim()
{
 uchar data i,j;
 uchar data k=0x00;
 clcd3=0x00;
 clcd1=k;
 clcd2=0x00;
 clcd2=0x00;/*地址指针设置*/
 Clearlcd();/*清屏*/
 for(i=0;i<120;i++)
 {
  for(j=0;j<2;j++)
  {
   //Clearlcd();/*清屏*/
   k=k+0x01;
   clcd3=0x00;
   clcd1=k;
   clcd2=0x00;
   clcd2=0x00;
  }
 }
}
/********************延时子程序********************/
void Delay()
{
 uchar data i,j;
 for(i=0;i<255;i++)
  for(j=0;j<255;j++);
}
/********************基本指令集清屏子程序********************/
void Clearlcd()
{
 uchar data i,j;
 uchar data k=0x00;
 clcd3=0x00;		/*设定显示页和操作页*/
 for(i=0;i<234;i++)
 {
    clcd1=k;		/*设定行地址*/
    clcd2=0x00;
    clcd2=0x00;		/*设定列地址*/
   for(j=0;j<80;j++)
   {
     dlcd=yanse1;	/*写显示数据*/
     dlcd=yanse1;
     dlcd=yanse1;
     dlcd=yanse1;
     dlcd=yanse1;
     dlcd=yanse1;
   }
   k=k+0x01;
 }
}
/********************初始化子程序*******************/
void Hanz1()
{
 uchar data i,wbyte,wbyte1;
 wbyte=*p;
 for(i=0;i<8;i++)
  {
   wbyte1=wbyte;
   if((wbyte1&0x80)!=0x80)
   {
    wbyte=wbyte<<1;
    dlcd=yanse1;
   }
    else
    {
     wbyte=wbyte<<1;
     dlcd=yanse2;
    }
  }
 p=p+1;
}
/********************初始化子程序*******************/
void Hanz()
{
 uchar data i,j,col2;
 for(i=0;i<l1;i++)
 {
  clcd3=0x00;
  clcd1=page;
  clcd2=col;
  clcd2=col1;
  page=page+0x01;
  for(j=0;j<l2;j++)
  {
   Hanz1();
  }
  col2=col1;
  col2=col2+0x01;
  if((col2|0x00)!=0x00)
  {
  }
  else
  {
   col=0x01;
  }
 }
}

⌨️ 快捷键说明

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