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

📄 demod.c

📁 精电的12864驱动原码
💻 C
📖 第 1 页 / 共 2 页
字号:
#include <reg51.h>
#include <math.h>
#include <absacc.h>
#include <string.h>
/* 直接访问方式地址定义,根据用户平台接口修改   */
#define  cwadd1 XBYTE[0x800]        /*写指令代码地址(左)*/
#define  cradd1 XBYTE[0xa00]        /*写显示数据地址(左)*/
#define  dwadd1 XBYTE[0x900]        /*读状态字地址(左)  */
#define  dradd1 XBYTE[0xb00]        /*读显示数据地址(左)*/
#define  cwadd2 XBYTE[0x400]        /*写指令代码地址(右)*/
#define  cradd2 XBYTE[0x600]        /*写显示数据地址(右)*/
#define  dwadd2 XBYTE[0x500]        /*读状态字地址(右)  */
#define  dradd2 XBYTE[0x700]        /*读显示数据地址(右)*/

/*  常量定义  */
#define  display_on    0x3f;
#define  display_off   0x3e;
#define  para1         0x40;
#define  start_line0   0xc0;
   sbit ACC_7=ACC^7;
unsigned int O_X,O_Y,com,dat1;/* O_X: 在显示字符时定义为行地址: 0~7
                                        在绘点显示时定义为行地址(0-63)
                                   O_Y: 列地址(0~127)
                                   com: 指令码寄存器
                                   dat1: 数据寄存器     */
unsigned char code_1,count1;
/*  西文字符库定义  */
code unsigned char  CHTAB[96][8]={
                                    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,    /*" "=00H*/
                                    0x00,0x00,0x00,0x4F,0x00,0x00,0x00,0x00,    /*"!"=01H*/
                                    0x00,0x00,0x07,0x00,0x07,0x00,0x00,0x00,    /*"""=02h*/
                                    0x00,0x14,0x7F,0x14,0x7F,0x14,0x00,0x00,    /*"#"=03h*/
                                    0x00,0x24,0x2A,0x7F,0x2A,0x12,0x00,0x00,    /*"$"=04h*/
                                    0x00,0x23,0x13,0x08,0x64,0x62,0x00,0x00,    /*"%"=05h*/
                                    0x00,0x36,0x49,0x55,0x22,0x50,0x00,0x00,    /*"&"=06h*/
                                    0x00,0x00,0x05,0x03,0x00,0x00,0x00,0x00,    /*"'"=07h*/
                                    0x00,0x00,0x1C,0x22,0x41,0x00,0x00,0x00,    /*"("=08h*/
                                    0x00,0x00,0x41,0x22,0x1C,0x00,0x00,0x00,    /*")"=09h*/
                                    0x00,0x14,0x08,0x3E,0x08,0x14,0x00,0x00,    /*"*"=0Ah*/
                                    0x00,0x08,0x08,0x3E,0x08,0x08,0x00,0x00,    /*"+"=0Bh*/
                                    0x00,0x00,0x50,0x30,0x00,0x00,0x00,0x00,    /*";"=0Ch*/
                                    0x00,0x08,0x08,0x08,0x08,0x08,0x00,0x00,    /*"-"=0Dh*/
                                    0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x00,    /*"."=0Eh*/
                                    0x00,0x20,0x10,0x08,0x04,0x02,0x00,0x00,    /*"/"=0Fh*/
                                    0x00,0x3E,0x51,0x49,0x45,0x3E,0x00,0x00,    /*"0"=10h*/
                                    0x00,0x00,0x42,0x7F,0x40,0x00,0x00,0x00,    /*"1"=11h*/
                                    0x00,0x42,0x61,0x51,0x49,0x46,0x00,0x00,    /*"2"=12h*/
                                    0x00,0x21,0x41,0x45,0x4B,0x31,0x00,0x00,    /*"3"=13h*/
                                    0x00,0x18,0x14,0x12,0x7F,0x10,0x00,0x00,    /*"4"=14h*/
                                    0x00,0x27,0x45,0x45,0x45,0x39,0x00,0x00,    /*"5"=15h*/
                                    0x00,0x3C,0x4A,0x49,0x49,0x30,0x00,0x00,    /*"6"=16h*/
                                    0x00,0x01,0x01,0x79,0x05,0x03,0x00,0x00,    /*"7"=17h*/
                                    0x00,0x36,0x49,0x49,0x49,0x36,0x00,0x00,    /*"8"=18h*/
                                    0x00,0x06,0x49,0x49,0x29,0x1E,0x00,0x00,    /*"9"=19h*/
                                    0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00,    /*":"=1Ah*/
                                    0x00,0x00,0x56,0x36,0x00,0x00,0x00,0x00,    /*";"=1Bh*/
                                    0x00,0x08,0x14,0x22,0x41,0x00,0x00,0x00,    /*"<"=1Ch*/
                                    0x00,0x14,0x14,0x14,0x14,0x14,0x00,0x00,    /*"="=1Dh*/
                                    0x00,0x00,0x41,0x22,0x14,0x08,0x00,0x00,    /*">"=1Eh*/
                                    0x00,0x02,0x01,0x51,0x09,0x06,0x00,0x00,    /*"?"=1Fh*/
                                    0x00,0x32,0x49,0x79,0x41,0x3E,0x00,0x00,    /*"@"=20h*/
                                    0x00,0x7E,0x11,0x11,0x11,0x7E,0x00,0x00,    /*"A"=21h*/
                                    0x00,0x41,0x7F,0x49,0x49,0x36,0x00,0x00,    /*"B"=22h*/
                                    0x00,0x3E,0x41,0x41,0x41,0x22,0x00,0x00,    /*"C"=23h*/
                                    0x00,0x41,0x7F,0x41,0x41,0x3E,0x00,0x00,    /*"D"=24h*/
                                    0x00,0x7F,0x49,0x49,0x49,0x49,0x00,0x00,    /*"E"=25h*/
                                    0x00,0x7F,0x09,0x09,0x09,0x01,0x00,0x00,    /*"F"=26h*/
                                    0x00,0x3E,0x41,0x41,0x49,0x7A,0x00,0x00,    /*"G"=27h*/
                                    0x00,0x7F,0x08,0x08,0x08,0x7F,0x00,0x00,    /*"h"=28h*/
                                    0x00,0x00,0x41,0x7F,0x41,0x00,0x00,0x00,    /*"I"=29h*/
                                    0x00,0x20,0x40,0x41,0x3F,0x01,0x00,0x00,    /*"J"=2Ah*/
                                    0x00,0x7F,0x08,0x14,0x22,0x41,0x00,0x00,    /*"K"=2Bh*/
                                    0x00,0x7F,0x40,0x40,0x40,0x40,0x00,0x00,    /*"L"=2Ch*/
                                    0x00,0x7F,0x02,0x0C,0x02,0x7F,0x00,0x00,    /*"M"=2Dh*/
                                    0x00,0x7F,0x06,0x08,0x30,0x7F,0x00,0x00,    /*"N"=2Eh*/
                                    0x00,0x3E,0x41,0x41,0x41,0x3E,0x00,0x00,    /*"O"=2Fh*/
                                    0x00,0x7F,0x09,0x09,0x09,0x06,0x00,0x00,    /*"P"=30h*/
                                    0x00,0x3E,0x41,0x51,0x21,0x5E,0x00,0x00,    /*"Q"=31h*/
                                    0x00,0x7F,0x09,0x19,0x29,0x46,0x00,0x00,    /*"R"=32h*/
                                    0x00,0x26,0x49,0x49,0x49,0x32,0x00,0x00,    /*"S"=33h*/
                                    0x00,0x01,0x01,0x7F,0x01,0x01,0x00,0x00,    /*"T"=34h*/
                                    0x00,0x3F,0x40,0x40,0x40,0x3F,0x00,0x00,    /*"U"=35h*/
                                    0x00,0x1F,0x20,0x40,0x20,0x1F,0x00,0x00,    /*"V"=36h*/
                                    0x00,0x7F,0x20,0x18,0x20,0x7F,0x00,0x00,    /*"W"=37h*/
                                    0x00,0x63,0x14,0x08,0x14,0x63,0x00,0x00,    /*"X"=38h*/
                                    0x00,0x07,0x08,0x70,0x08,0x07,0x00,0x00,    /*"Y"=39h*/
                                    0x00,0x61,0x51,0x49,0x45,0x43,0x00,0x00,    /*"Z"=3Ah*/
                                    0x00,0x00,0x7F,0x41,0x41,0x00,0x00,0x00,    /*"["=3Bh*/
                                    0x00,0x02,0x04,0x08,0x10,0x20,0x00,0x00,    /*"\"=3Ch*/
                                    0x00,0x00,0x41,0x41,0x7F,0x00,0x00,0x00,    /*"]"=3Dh*/
                                    0x00,0x04,0x02,0x01,0x02,0x04,0x00,0x00,    /*"^"=3Eh*/
                                    0x00,0x40,0x40,0x40,0x40,0x40,0x00,0x00,    /*"_"=3Fh*/
                                    0x00,0x01,0x02,0x04,0x00,0x00,0x00,0x00,    /*"`"=40h*/
                                    0x00,0x20,0x54,0x54,0x54,0x78,0x00,0x00,    /*"a"=41h*/
                                    0x00,0x7F,0x48,0x44,0x44,0x38,0x00,0x00,    /*"b"=42h*/
                                    0x00,0x38,0x44,0x44,0x44,0x28,0x00,0x00,    /*"c"=43h*/
                                    0x00,0x38,0x44,0x44,0x48,0x7F,0x00,0x00,    /*"d"=44h*/
                                    0x00,0x38,0x54,0x54,0x54,0x18,0x00,0x00,    /*"e"=45h*/
                                    0x00,0x00,0x08,0x7E,0x09,0x02,0x00,0x00,    /*"f"=46h*/
                                    0x00,0x0C,0x52,0x52,0x4C,0x3E,0x00,0x00,    /*"g"=47h*/
                                    0x00,0x7F,0x08,0x04,0x04,0x78,0x00,0x00,    /*"h"=48h*/
                                    0x00,0x00,0x44,0x7D,0x40,0x00,0x00,0x00,    /*"i"=49h*/
                                    0x00,0x20,0x40,0x44,0x3D,0x00,0x00,0x00,    /*"j"=4Ah*/
                                    0x00,0x00,0x7F,0x10,0x28,0x44,0x00,0x00,    /*"k"=4Bh*/
                                    0x00,0x00,0x41,0x7F,0x40,0x00,0x00,0x00,    /*"l"=4Ch*/
                                    0x00,0x7C,0x04,0x78,0x04,0x78,0x00,0x00,    /*"m"=4Dh*/
                                    0x00,0x7C,0x08,0x04,0x04,0x78,0x00,0x00,    /*"n"=4Eh*/
                                    0x00,0x38,0x44,0x44,0x44,0x38,0x00,0x00,    /*"o'=4Fh*/
                                    0x00,0x7E,0x0C,0x12,0x12,0x0C,0x00,0x00,    /*"p"=50h*/
                                    0x00,0x0C,0x12,0x12,0x0C,0x7E,0x00,0x00,    /*"q"=51h*/
                                    0x00,0x7C,0x08,0x04,0x04,0x08,0x00,0x00,    /*"r"=52h*/
                                    0x00,0x58,0x54,0x54,0x54,0x64,0x00,0x00,    /*"s"=53h*/
                                    0x00,0x04,0x3F,0x44,0x40,0x20,0x00,0x00,    /*"t"=54h*/
                                    0x00,0x3C,0x40,0x40,0x3C,0x40,0x00,0x00,    /*"u"=55h*/
                                    0x00,0x1C,0x20,0x40,0x20,0x1C,0x00,0x00,    /*"v"=56h*/
                                    0x00,0x3C,0x40,0x30,0x40,0x3C,0x00,0x00,    /*"w"=57h*/
                                    0x00,0x44,0x28,0x10,0x28,0x44,0x00,0x00,    /*"x"=58h*/
                                    0x00,0x1C,0xA0,0xA0,0x90,0x7C,0x00,0x00,    /*"y"=59h*/
                                    0x00,0x44,0x64,0x54,0x4C,0x44,0x00,0x00,    /*"z"=5Ah*/
                                    0x00,0x00,0x08,0x36,0x41,0x00,0x00,0x00,    /*"{"=5Bh*/
                                    0x00,0x00,0x00,0x77,0x00,0x00,0x00,0x00,    /*"|"=5Ch*/
                                    0x00,0x00,0x41,0x36,0x08,0x00,0x00,0x00,    /*"}"=5Dh*/
                                    0x00,0x02,0x01,0x02,0x04,0x02,0x00,0x00,    /*"~"=5Fh*/
                                    0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00     /*" "=0x60*/
                                    };

/************************************************************************************************/
/*  中文字符库定义  */
 code unsigned char  CCTAB[16][8]={
                                   0x82,0x8A,0x92,0xB2,0x02,0xA7,0x92,0x5E,     /*蓬90 = 00H*/
                                   0x2A,0xAF,0x2A,0x5A,0x4A,0x83,0x82,0x00,
                                   0x00,0x80,0x40,0x3F,0x41,0x90,0x95,0x95,
                                   0x95,0xFF,0x95,0x95,0x95,0xD0,0x40,0x00,
                                   0x80,0x64,0x24,0x24,0x3F,0x24,0xA6,0x64,     /*勃90 = 01H*/
                                   0x20,0x20,0xFF,0x20,0x20,0xF0,0x20,0x00,
                                   0x00,0x08,0x49,0x89,0x7D,0x0B,0x89,0x40,
                                   0x30,0x0E,0x41,0x80,0x40,0x3F,0x00,0x00,
                                   0x40,0x42,0x44,0xCC,0x00,0x20,0x22,0xE2,     /*远90 = 02H*/
                                   0x22,0x22,0xE2,0x23,0x32,0x20,0x00,0x00,
                                   0x00,0x40,0x20,0x1F,0x20,0x50,0x4C,0x43,
                                   0x40,0x40,0x47,0x48,0x48,0x6E,0x20,0x00,
                                   0x20,0x20,0x20,0x20,0x20,0x20,0xA0,0x7F,     /*大90 = 03H*/
                                   0xA0,0x20,0x20,0x20,0x20,0x30,0x20,0x00,
                                   0x00,0x40,0x40,0x20,0x10,0x0C,0x03,0x00,
                                   0x01,0x06,0x08,0x10,0x20,0x60,0x20,0x00
                                   };



/*************************************/
/*            演示主程序             */
/*************************************/
   void main()
        {
           unsigned char a,b,i,j;
           INT_1();       /*  调初始化函数  */
           CLEAR();       /*  调清屏函数  */
/*----------绘点显示----------*/
           i=0;           
           j=0;
           com=0xc0;      /* 显示起始行设置 */
           PR1();
           PR4();
           for(i=0;i<128;)
              {
                 for(j=0;j<64;j++)
                    {
                        O_X=i;
                        O_Y=j;
                        W_DOT();
                        i++;
                    }
                 for(j=64;j>0;j--)
                    {
                        O_X=i;
                        O_Y=j;
                        W_DOT();
                        i++;
                    }
              }
 /*----------汉字显示----------*/             
           O_Y=0;                
           O_X=0;
           code_1=0x00;
           CCW_PR();
           O_Y=0x01;
           O_X=0x30;
           code_1=0x04;
           CCW_PR();
           O_Y=0x02;
           O_X=0x50;
           code_1=0x08;
           CCW_PR();
           O_Y=0x03;
           O_X=0x70;
           code_1=0x0c;
           CCW_PR();
           O_Y=0x04;
           O_X=0x00;
           code_1=0x00;
           CCW_PR();
           O_Y=0x05;
           O_X=0x30;
           code_1=0x04;
           CCW_PR();
           O_Y=0x06;
           O_X=0x50;
           code_1=0x08;
           CCW_PR();
           O_Y=0x07;
           O_X=0x70;
           code_1=0x0c;
           CCW_PR();
/*------------西文显示----------*/
           a=0;
           b=0;
           code_1=0;
   for(i=0;i<96;i++)
          {
           O_Y=a;
           O_X=b;
           CW_PR();
           b=b+8;
           code_1++;
          if(code_1==96)
             {
             i=0;
             code_1=0;
             }
              if(b==128)
                {
                   a++;
                   b=0;
                     if(a==8)
                       {
                            return;
                       }
                }
          }
    }
/*************************************/
/*            初始化函数             */
/*************************************/
   INT_1()
        {

⌨️ 快捷键说明

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