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

📄 12864.c

📁 12864的汉字驱动程序
💻 C
字号:
#include<reg52.h>
#include <intrins.h>

#define  U1		bit	
#define  U8		unsigned char	
#define  PU8	unsigned char pdata	
#define  U16	unsigned int 
#define  VU8	volatile unsigned char	
#define  VU16	volatile unsigned int 

#ifndef  NULL
#define  NULL   ((void *) 0L)
#endif

#ifndef  BIT
#define  BIT(B)  (1 << (B))     
#endif

#define  LCDPORT  P1
sbit     CAS1 = P3^5;
sbit     CAS2 = P2^7;
sbit     RS   = P3^4;
sbit     RW   = P3^3;
sbit     E    = P3^2;
sbit     LED  = P2^0;

//void Delay(U8 time)
//{
//U8 i;

//         while(time--) for(i =255; i > 0; i--);
//}

U8 AskBusy(void)
{
U8 temp;

        RS = 0;         RW = 1;
        LCDPORT = 0xff; E = 1;
        temp = LCDPORT; E = 0;
        return (temp & 0x80);
}


void CmdPos(U8 cmd, U8 num)
{
	
	       if(!num)     {CAS1 = 1; CAS2 = 0;}
	       else         {CAS1 = 0; CAS2 = 1;}
        while(AskBusy());
        RS = 0; RW = 0;
        E = 1;
        LCDPORT = cmd;
        E = 0;
}

void TansData(U8 ch)
{
        while(AskBusy());
        RS = 1; RW = 0; 
        E = 1;
        LCDPORT = ch;
        E = 0; 
}

void TansCmd(U8 cmd) {CmdPos(cmd, 0); CmdPos(cmd, 1);}
void InitLCD(void)   {CAS1 = 0; CAS2 = 0; E = 0; TansCmd(0x3e);}
void OpenLcd(void)   {TansCmd(0xc0); TansCmd(0x3f);}

void CleanLCD(void)
{
U8 i,j;
  
        for(j = 0; j < 8; j++)
        {
          TansCmd(0xb8 | j);  TansCmd(0x40); 
          CAS1 = 1;  CAS2 = 0;
          for(i = 0; i < 64; i++) TansData(0);
          CAS1 = 0;  CAS2 = 1;
          for(i = 0; i < 64; i++) TansData(0);
        }    
}

void LoadPic(void)
{
PU8 i, j;
U8 code *pc = 0x400;
         
         	
         for(j = 0; j < 8; j++)
         {
           TansCmd(0xb8 | j); TansCmd(0x40);
           CAS1 = 1;  CAS2 = 0;
           for(i = 0; i < 64; i++) {TansData(*pc); pc++;}
           CAS1 = 0;  CAS2 = 1;
           for(i = 0; i < 64; i++) {TansData(*pc); pc++;}
         }     
}

void main(void)
{

         InitLCD();
         CleanLCD();
         LoadPic();
         OpenLcd();
         LED = 0;
         while(1);      
}

⌨️ 快捷键说明

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