历史上的今天
返回首页

历史上的今天

今天是:2025年01月09日(星期四)

正在发生

2018年01月09日 | 汉字液晶12864子程序

2018-01-09 来源:eefocus

//ile://汉字液晶子程 液晶屏分为4行*12列汉字,全部使用模拟接口方式。
//   TGLCMLIMIT64A接口程序(模拟方式)
//;***************************************************************************
//;连线图:
//;*LCM---89C52*  *LCM---89C52*   *LCM-------89C52*     *LCM----------89C52* *

//;*DB0---P0.0*   *DB4---P0.4*    *D/I-------P2.6*      *CS1----------P2.4*  *
//;*DB1---P0.1*   *DB5---P0.5*    *R/W-------P2.7*      *CS2----------P2.5*  *
//;*DB2---P0.2*   *DB6---P0.6*    *RST--------VCC*      *CS3----------P3.2*  *
//;*DB3---P0.3*   *DB7---P0.7*    *E---------P2.3*                           *
//;注:89C52的晶振频率为12MHz                                                 *
//;***************************************************************************/
//file://画线部分请参照avr的c程序。
/*#pragma SRC   /*生成ASM文件开关,必要时打开 */
#include
#include
#include


#define Uchar unsigned char

/***********液晶显示器接口引脚定义***************/

sbit Elcm= P3^5;  //
sbit CS1LCM= P3^2;  //
sbit CS2LCM= P3^4;  //
sbit CS3LCM= P3^2;  /*这个连接只是做实验的临时接法。*/
sbit DILcm= P3^7;  //
sbit Rwlcm= P3^6;  //
sfr Datalcm= 0x80;  //file://数据口
unsigned char testi[]={"浸渠叁绳漱塔烃威牺晓玄瑶"};

/***********常用操作命令和参数定义***************/
#define  DISPON  0x3f /*显示on  */
#define  DISPOFF 0x3e /*显示off  */
#define  DISPFIRST 0xc0 /*显示起始行定义 */
#define  SETX  0x40 /*X定位设定指令(页) */
#define  SETY  0xb8 /*Y定位设定指令(列) */
#define  LCDbusy 0x80 /*LCM忙判断位  */

/**************显示分区边界位置*****************/
#define  MODL  0x00 /*左区   */
#define  MODM  0x40 /*左区和中区分界 */
#define  MODR  0x80 /*中区和右区分界 */
#define LCMLIMIT 0xC0 /*显示区的右边界 */

/****************全局变量定义*******************/
Uchar col,row,cbyte;  /*列x,行(页)y,输出数据 */
bit xy;    /*画线方向标志:1水平 */

/*****************函数列表**********************/
void Lcminit(void);  /*液晶模块初始化 */
void Delay(Uchar);  /*延时,入口数为Ms */
void lcdbusyL(void);  /*busy判断、等待(左区) */
void lcdbusyM(void);  /*busy判断、等待(中区) */
void lcdbusyR(void);  /*busy判断、等待(右区) */
void Putedot(Uchar);  /*半角字符输出  */
void Putcdot(Uchar);  /*全角(汉字)输出 */
void Wrdata(Uchar);  /*数据输出给LCM  */
void Lcmcls( void );  /*LCM全屏幕清零(填充0) */
void wtcom(void);  /*公用busy等待  */
void LOCatexy(void);  /*光标定位  */
void WrcmdL(Uchar);  /*左区命令输出  */
void WrcmdM(Uchar);  /*中区命令输出  */
void WrcmdR(Uchar);  /*右区命令输出  */
void Putstr(Uchar *puts,Uchar i); /*中英文字符串输出 */
void Rollscreen(Uchar x); /*屏幕向上滚动演示 */
void Rddata(void);  /*  从液晶片上读数据 */
void Linehv(Uchar length); /*横(竖)方向画线 */
void point(void);  /*打点   */
void Linexy(Uchar endx,Uchar endy);

/******************数组列表*********************/
Uchar code Ezk[];  /*ASCII常规字符点阵码表 */
Uchar code Hzk[];  /*自用汉字点阵码表 */
Uchar code STR1[];  /*自定义字符串  */
Uchar code STR2[];  //
Uchar code STR3[];  //
Uchar code STR4[];  //


/********************************/
/* 演示主程序   */
/********************************/
void main(void)

{
  Uchar x,y;
 col=0;
 row=0;
 Delay(40);  /*延时大约40Ms,等待外设准备好 */
 Lcminit();  /*液晶模块初始化,包括全屏幕清屏*/
 Putstr(STR2,24); /*第一行字符输出,24字节 */
 col=0;
 row=2;
 Putstr(STR1,12); /*第二行字符输出,12字节 */
 col=0;
 row=4;
 Putstr(STR3,24); /*第三行字符输出,24字节 */
 col=0;
 row=6;
 Putstr(STR4,24); /*第四行字符输出,12字节 */
 x=0;
 col=0;
 row=0;
 xy = 1;   /*方向标志。定为水平方向 */
 Linehv(192);  /*画一条横线(0,0)-(191,0) */
 col=0;
 row=15;
 xy = 1;
 Linehv(192);  /*画一条横线(0,15)-(191,15) */
 col=0;
 row=32;
 xy = 1;
 Linehv(192);  /*画一条横线(0,32)-(191,32) */
 col=0;
 row=1;
 xy = 0;   /*方向标志。定为垂直方向 */
 Linehv(31);  /*画一条竖线(0,1)-(0,31) */
 col=191;
 row=1;
 xy = 0;
 Linehv(31);  /*画一条竖线(191,1)-(191,31) */
 col=0;   /*设定斜线的起点坐标  */
 row=63;
 Linexy(44,31);  /*画一段斜线(0,63)-(44,31) */
 col=44;
 row=31;
 Linexy(190,62);  /*继续画斜线(44,31)-(191,63) */
 while(1){
  Rollscreen(y); /*定位新的显示起*/
  y++;
  y %=8;
  x=testi[y];
  Delay(100); /*延时,控制滚动速度 */
  };
}


/************************************************/
/*画线。任意方向的斜线,不支持垂直的或水平线 */
/************************************************/

void Linexy(Uchar endx,Uchar endy)
{
 register Uchar t;
 int xerr=0,yerr=0,delta_x,delta_y,distance;
 Uchar incx,incy;

/*  compute the distance in both directions */
 delta_x=endx-col;
 delta_y=endy-row;

/* compute  the direction of the increment ,
 an increment of "0" means either a vertICal or horizontal lines */

 if(delta_x>0) incx=1;
 else if( delta_x==0 ) incx=0;
  else incx=-1;


 if(delta_y>0) incy=1;
 else if( delta_y==0 ) incy=0;
  else incy=-1;

/*  determine which distance is greater */
 delta_x = cabs( delta_x );
 delta_y = cabs( delta_y );

 if( delta_x > delta_y ) distance=delta_x;
 else distance=delta_y;

/* draw the line */
 for( t=0;t <= distance+1; t++ ) {
  point();
     xerr += delta_x ;
  yerr += delta_y ;
  if( xerr > distance ) {
   xerr-=distance;
       col+=incx;
  }
  if( yerr > distance ) {
   yerr-=distance;
       row+=incy;
  }

 }
}

/****************************************/
/*画线。只提供X或Y方向的,不支持斜线 */
/****************************************/
void Linehv(Uchar length)
 {
  Uchar xs,ys;
  if (xy){ys = col;
   for (xs=0;xs     col = ys + xs;
     point();}
    }
  else {xs = row;
   for (ys=0;ys     row = xs + ys;
     point();}
    }
}

/****************************************/
/* 画点    */
/****************************************/

void point(void)
 {
  Uchar x1,y1,x,y;
  x1=col;
  y1=row;
  row=y1>>3;  /*取Y方向分页地址 */
  Rddata();
  y=y1&0x07;  /*字节内位置计算 */
  x=0x01;
  x=x<  Wrdata(cbyte|x); /*画上屏幕  */
  col=x1;   /*恢复xy坐标  */
  row=y1;
 }

/****************************************/
/* 屏幕滚动定位   */
/****************************************/
void Rollscreen(Uchar x)
 {
  cbyte = DISPFIRST|x; /*定义显示起始行为x?*/
  WrcmdL(cbyte);
  WrcmdM(cbyte);
  WrcmdR(cbyte);
 }

/****************************************/
/* 一个字串的输出   */
/****************************************/
void Putstr(Uchar *puts,Uchar i)
 {
  Uchar j,X;
  for (j=0;j  {
  X = puts[j];
   if (X&0x80)
    {
     Putcdot(X&0x7f); /*只保留低7位*/
    }
   else Putedot(X-0x20);  /*ascii码表从0x20开始*/
  }
 }

/****************************************/
/*   半角字符点阵码数据输出  */
/****************************************/
void Putedot(Uchar Order)
 {
 Uchar i,bakerx,bakery; /*共定义4个局部变量   */
 int x;   /*偏移量,字符量少的可以定义为UCHAR */
 bakerx = col;  /*暂存x,y坐标,已备下半个字符使用 */
 bakery = row;
 x=Order * 0x10;  /*半角字符,每个字符16字节 */
/*上半个字符输出,8列 */
 for(i=0;i<8;i++)
  {
  cbyte = Ezk[x];    /*取点阵码,rom数组 */
  Wrdata(cbyte);    /*写输出一字节  */
  x++;
  col++;
  if (col==LCMLIMIT){col=0;row++;row++;}; /*下一列,如果列越界换行*/
   if (row>7) row=0;  /*如果行越界,返回首行 */
  }     /*上半个字符输出结束 */

 col = bakerx;     /*列对齐  */
 row = bakery+1;     /*指向下半个字符行 */
/*下半个字符输出,8列 */
 for(i=0;i<8;i++)
  {
  cbyte = Ezk[x];    /*取点阵码  */
  Wrdata(cbyte);    /*写输出一字节  */
  x++;
  col++;
  if (col==LCMLIMIT){col=0;row=row+2;}; /*下一列,如果列越界换行*/
   if (row>7) row=1;  /*如果行越界,返回首行 */
  }     /*下半个字符输出结束 */
 row=bakery;
 }      /*整个字符输出结束 */


/****************************************/
/*  全角字符点阵码数据输出  */
/****************************************/
void Putcdot(Uchar Order)
 {
 Uchar i,bakerx,bakery;  /*共定义3个局部变量  */
 int x;    /*偏移量,字符量少的可以定义为UCHAR */
 bakerx = col;   /*暂存x,y坐标,已备下半个字符使用 */
 bakery = row;
 x=Order * 0x20;   /*每个字符32字节 */

/*上半个字符输出,16列 */
 for(i=0;i<16;i++)
  {
  Wrdata(Hzk[x]);    /*写输出一字节  */
  x++;
  col++;
  if (col==LCMLIMIT){ col=0;row++;row++;} /*下一列,如果列越界换行*/
   if (row>6) row=0;  /*如果行越界,返回首行 */
  }     /*上半个字符输出结束 */

/*下半个字符输出,16列 */
 col = bakerx;
 row = bakery+1;
 for(i=0;i<16;i++)    /*下半部分*/
  {
  Wrdata(Hzk[x]);
  x++;
  col++;
  if (col==LCMLIMIT){col=0;row++;row++;} /*下一列,如果列越界换行*/
   if (row>7) row=1;  /*如果行越界,返回首行 */
  }     /*下半个字符输出结束 */
 row = bakery;
 }      /*整个字符输出结束 */

/****************************************/
/* 清屏,全屏幕清零  */
/****************************************/
void Lcmcls( void )
 {
 for(row=0;row<8;row++)
     for(col=0;col }

/****************************************/
/*  从液晶片上读数据,保留在全局变量中 */
/****************************************/

void Rddata(void)
 {
 Locatexy();  /*坐标定位,返回时保留分区状态不变 */
  Datalcm=0xFF;
  Dilcm = 1; /*数据*/
  Rwlcm = 1; /*读数据*/
  Elcm = 1; /*读入到LCM*/
  _nop_();
  cbyte = Datalcm; /*虚读一次 */
  Elcm = 0;
 Locatexy();  /*坐标定位,返回时保留分区状态不变 */
  Datalcm=0xFF;
  _nop_();
  Dilcm = 1; /*数据*/
  Rwlcm = 1; /*读数据*/
  Elcm = 1; /*读入到LCM*/
  _nop_();
  cbyte = Datalcm; /*从数据口读数据,真读 */
  Elcm = 0;
 }

/****************************************/
/* 数据写输出   */
/****************************************/

void Wrdata(Uchar X)
 {
 Locatexy();  /*坐标定位,返回时保留分区状态不变 */
// wtcom();
  Dilcm = 1; /*数据输出*/
  Rwlcm = 0; /*写输出  */
  Datalcm = X; /*数据输出到数据口 */
  Elcm = 1; /*读入到LCM*/
  _nop_();
  Elcm = 0;
 }

/****************************************/
/* 命令输出,每次输出一个分区控制口 */
/****************************************/

/*void Wrcmd(Uchar X)
// {
// Locatexy();  /*确定分区,返回时保留分区状态不变 */
// wtcom();  /*等待LCM操作允许 */
//  Dilcm = 0;   /*数据操作 */
//  Rwlcm = 0;   /*写输出   */
//  Datalcm = X;   /*数据输出到数据口 */
//  Elcm = 1;_nop_();Elcm = 0; /*读入到LCM*/
// }

/********************************/
/* 命令输出到左区控制口  */
/********************************/

void WrcmdL(Uchar X)
 {
  lcdbusyL();  /*确定分区,返回时保留分区状态不变*/
  Dilcm = 0;   /*命令操作 */
  Rwlcm = 0;   /*写输出   */
  Datalcm = X;   /*数据输出到数据口 */
  Elcm = 1;_nop_();Elcm = 0; /*读入到LCM*/
 }

/********************************/
/* 命令输出到中区控制口  */
/********************************/

void WrcmdM(Uchar X)
 {
  lcdbusyM();  /*确定分区,返回时保留分区状态不变*/
  Dilcm = 0;   /*命令操作 */
  Rwlcm = 0;   /*写输出   */
  Datalcm = X;   /*命令输出到数据口 */
  Elcm = 1;_nop_();Elcm = 0; /*读入到LCM*/
 }

/********************************/
/* 命令输出到右区控制口  */
/********************************/

void WrcmdR(Uchar X)
 {
  lcdbusyR(); /*确定分区,返回时保留分区状态不变 */
  Dilcm = 0;   /*命令操作 */
  Rwlcm = 0;   /*写输出   */
  Datalcm = X;   /*命令输出到数据口 */
  Elcm = 1;_nop_();Elcm = 0; /*读入到LCM*/
 }

/********************************************************/
/* 分区操作允许等待,返回时保留分区选择状态  */
/********************************************************/
void lcdbusyL(void)
 {
        CS1LCM = 0;  /*CLR CS1  */
        CS2LCM = 1;  /*SETB CS2  */
        CS3LCM = 1;  /*SETB CS3  */
 wtcom();  /* waitting for enable */
 }

void lcdbusyM(void)
 {
        CS1LCM = 1;  /*SETB CS1  */
        CS2LCM = 0;  /*CLR CS2  */
        CS3LCM = 1;  /*SETB CS3  */
 wtcom();  /* waitting for enable */
 }

void lcdbusyR(void)
 {
        CS1LCM = 1;  /*SETB CS1  */
        CS2LCM = 1;  /*SETB CS2  */
        CS3LCM = 0;  /*CLR CS3  */
 wtcom();  /* waitting for enable */
 }

void wtcom(void)
 {
 Dilcm = 0;  /*CLR DI  */
 Rwlcm = 1;  /*SETB RW  */
        Datalcm = 0xFF;  /* MOV DATA_LCM,#0FFH  */
 Elcm  = 1;_nop_();
       while(Datalcm & Lcdbusy);
       Elcm  = 0;
 }

/********************************************************/
/*根据设定的坐标数据,定位LCM上的下一个操作单元位置 */
/********************************************************/
void Locatexy(void)
 {
 unsigned char  x,y;
 switch (col&0xc0)  /*  col.and.0xC0 */
  {   /*条件分支执行  */
  case 0:  {lcdbusyL();break;} /*左区 */
  case 0x40: {lcdbusyM();break;} /*中区 */
  case 0x80: {lcdbusyR();break;} /*右区 */
  }
 x = col&0x3F|SETX;  /*  col.and.0x3f.or.setx */
 y = row&0x07|SETY;  /*  row.and.0x07.or.sety */
  wtcom();  /*  waitting for enable  */
  Dilcm = 0;   /*CLR DI */
  Rwlcm = 0;   /*CLR RW */
  Datalcm = y;   /* MOV P0,Y */
  Elcm = 1;_nop_();Elcm = 0;
  wtcom();  /*  waitting for enable  */
  Dilcm = 0;   /*CLR DI */
  Rwlcm = 0;   /*CLR RW */
  Datalcm = x;   /* MOV P0,X */
  Elcm = 1;_nop_();Elcm = 0;
 }

/********************************/
/*液晶屏初始化   */
/********************************/

void Lcminit(void)
 {
  cbyte = DISPOFF; /*关闭显示屏 */
  WrcmdL(cbyte);
  WrcmdM(cbyte);
  WrcmdR(cbyte);
  cbyte = DISPON;  /*打开显示屏 */
  WrcmdL(cbyte);
  WrcmdM(cbyte);
  WrcmdR(cbyte);
  cbyte = DISPFIRST; /*定义显示起始行为零 */
  WrcmdL(cbyte);
  WrcmdM(cbyte);
  WrcmdR(cbyte);
  Lcmcls();
  col=0;  /*清屏  */
  row=0;
  Locatexy();
 }
/********************************/
/* 延时    */
/********************************/
void Delay(Uchar MS)
 {
  Uchar us,usn;
  while(MS!=0)
   { usn = 4;
    while(usn!=0)
     {
      us=0xf0;
      while (us!=0){us--;};
      usn--;
     }
    MS--;
   }
 }

/********************************/
//file://定义字符串数组  */
/********************************/

Uchar code STR1[]=
  {
  0x80,0x81,0x82,0x83,0x84,0x85,
  0x86,0x87,0x88,0x89,0x8a,0x8B
  };

Uchar code STR2[]="Our friend over the wold";
Uchar code STR3[]="Program by Keil C51 6.12";
Uchar code STR4[]="Thank you ~v~ 1234567890";

/********************************/
/*  定义中文字库  */
/********************************/

Uchar code Hzk[]={
/*茂 C3515 0 */
  0x04,0x04,0xC4,0x44,0x5F,0x44,0x44,0xF4,
  0x44,0x4F,0x54,0x64,0x44,0x46,0x04,0x00,
  0x80,0x40,0x3F,0x00,0x40,0x40,0x20,0x20,
  0x13,0x0C,0x18,0x24,0x43,0x80,0xE0,0x00,
/*兴 C4843 1 */
  0x00,0xFE,0x4A,0x4A,0x00,0xFE,0xEA,0xAA,
  0xAA,0xFE,0x00,0x4A,0x4A,0xFE,0x00,0x00,
  0x02,0x83,0x42,0x22,0x12,0x1B,0x02,0x02,
  0x02,0x0B,0x12,0x22,0x62,0xC3,0x02,0x00,
/*国 C2590 2 */
  0x00,0xFE,0x02,0xD2,0x52,0x52,0xD2,0x3E,
  0xD2,0x16,0x1A,0x12,0xFF,0x02,0x00,0x00,
  0x00,0xFF,0x50,0x53,0x52,0x4A,0x6B,0x50,
  0x4F,0x54,0x7B,0x40,0xFF,0x00,0x00,0x00,
/*际 C2842 3 */
  0x00,0xFE,0x22,0xD2,0x0E,0x20,0xB8,0x4F,
  0xB2,0x9E,0x80,0x9F,0x72,0x8A,0x06,0x00,
  0x00,0xFF,0x04,0x08,0x07,0x21,0x12,0x0A,
  0x46,0x82,0x7E,0x06,0x0A,0x12,0x31,0x00,
/*( C0308 4 */
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0xC0,0x30,0x08,0x04,0x02,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x03,0x0C,0x10,0x20,0x40,0x00,0x00,
/*广 C2567 5 */
  0x00,0x00,0xFC,0x44,0x54,0x54,0x7C,0x55,
  0xD6,0x54,0x7C,0x54,0x54,0x44,0x44,0x00,
  0x80,0x60,0x1F,0x80,0x9F,0x55,0x35,0x15,
  0x1F,0x15,0x15,0x35,0x5F,0x80,0x00,0x00,
/*东 C2211 6 */
  0x00,0x08,0xE8,0xA8,0xA8,0xA8,0xA8,0xFF,
  0xA8,0xA8,0xA8,0xA8,0xE8,0x0C,0x08,0x00,
  0x00,0x40,0x23,0x12,0x0A,0x06,0x02,0xFF,
  0x02,0x06,0x0A,0x12,0x23,0x60,0x20,0x00,
/*) C0309 7 */
  0x00,0x00,0x02,0x04,0x08,0x30,0xC0,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x40,0x20,0x10,0x0C,0x03,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*有 C5148 8 */
  0x04,0x04,0x04,0x84,0xE4,0x3C,0x27,0x24,
  0x24,0x24,0x24,0xF4,0x24,0x06,0x04,0x00,
  0x04,0x02,0x01,0x00,0xFF,0x09,0x09,0x09,
  0x09,0x49,0x89,0x7F,0x00,0x00,0x00,0x00,
/*限 C4762 9 */
  0x00,0xFE,0x02,0x22,0xDA,0x06,0x00,0xFE,
  0x92,0x92,0x92,0x92,0xFF,0x02,0x00,0x00,
  0x00,0xFF,0x08,0x10,0x08,0x07,0x00,0xFF,
  0x42,0x24,0x08,0x14,0x22,0x61,0x20,0x00,
/*公 C2511 10 */
  0x00,0x00,0x80,0x40,0x30,0x0C,0x00,0xC0,
  0x07,0x1A,0x20,0x40,0x80,0x80,0x80,0x00,
  0x01,0x01,0x20,0x70,0x28,0x24,0x23,0x20,
  0x20,0x28,0x30,0x60,0x00,0x01,0x00,0x00,
/*司 C4330 11 */
  0x10,0x10,0x92,0x92,0x92,0x92,0x92,0x92,
  0xD2,0x9A,0x12,0x02,0xFF,0x02,0x00,0x00,
  0x00,0x00,0x3F,0x10,0x10,0x10,0x10,0x10,
  0x3F,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,
};
/****************************************/
/* 定义ASCII字库8列*16行  */
/****************************************/

Uchar code Ezk[]={
/*-文字: --0x20 */
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*-文字:!--0x21 */
  0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x27,0x00,0x00,0x00,0x00,
/*-文字:"--0x22 */
  0x00,0x08,0x04,0x02,0x08,0x04,0x02,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*-文字:#--0x23 */
  0x40,0x40,0xF8,0x40,0x40,0xF8,0x40,0x00,
  0x04,0x3F,0x04,0x04,0x3F,0x04,0x04,0x00,
/*-文字:$--0x24 */
  0x00,0x70,0x88,0xFC,0x08,0x08,0x30,0x00,
  0x00,0x1C,0x20,0xFF,0x21,0x22,0x1C,0x00,
/*-文字:%--0x25 */
  0xF0,0x08,0xF0,0x80,0x70,0x08,0x00,0x00,
  0x00,0x31,0x0E,0x01,0x1E,0x21,0x1E,0x00,
/*-文字:&--0x26 */
  0x00,0xF0,0x08,0x88,0x70,0x00,0x00,0x00,
  0x1E,0x21,0x23,0x24,0x18,0x16,0x20,0x00,
/*-文字:'--0x27 */
  0x20,0x18,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*-文字:(--0x28 */
  0x00,0x00,0x00,0x00,0xC0,0x30,0x08,0x04,
  0x00,0x00,0x00,0x00,0x03,0x0C,0x10,0x20,
/*-文字:)--0x29 */
  0x04,0x08,0x30,0xC0,0x00,0x00,0x00,0x00,
  0x20,0x10,0x0C,0x03,0x00,0x00,0x00,0x00,
/*-文字:*--0x2a */
  0x40,0x40,0x80,0xF0,0x80,0x40,0x40,0x00,
  0x02,0x02,0x01,0x0F,0x01,0x02,0x02,0x00,
/*-文字:+--0x2b */
  0x00,0x00,0x00,0xE0,0x00,0x00,0x00,0x00,
  0x01,0x01,0x01,0x0F,0x01,0x01,0x01,0x00,
/*-文字:,--0x2c */
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x80,0x60,0x00,0x00,0x00,0x00,0x00,0x00,
/*-文字:---0x2d */
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,
/*-文字:.--0x2e */
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
/*-文字:/--ox2f */
  0x00,0x00,0x00,0x00,0x00,0xE0,0x18,0x04,
  0x00,0x40,0x30,0x0C,0x03,0x00,0x00,0x00,
/*-文字:0--0x30 */
  0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,
  0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,
/*-文字:1--0x31 */
  0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,
  0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,
/*-文字:2--0x32 */
  0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,
  0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,
/*-文字:3--0x33 */
  0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,
  0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00,
/*-文字:4--0x34 */
  0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,
  0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,
/*-文字:5--0x35 */
  0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,
  0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,
/*-文字:6--0x36 */
  0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,
  0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00,
/*-文字:7--0x37 */
  0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,
  0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,
/*-文字:8--0x38 */
  0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,
  0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,
/*-文字:9--0x39 */
  0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,
  0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00,
/*-文字::-- */
  0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x00,
  0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x00,
/*-文字:/-- */
  0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,
  0x00,0x00,0x80,0x60,0x00,0x00,0x00,0x00,
/*-文字:<-- */
  0x00,0x00,0x80,0x40,0x20,0x10,0x08,0x00,
  0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x00,
/*-文字:=-- */
  0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,
  0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x00,
/*-文字:>-- */
  0x00,0x08,0x10,0x20,0x40,0x80,0x00,0x00,
  0x00,0x20,0x10,0x08,0x04,0x02,0x01,0x00,
/*-文字:?-- */
  0x00,0x30,0x08,0x08,0x08,0x88,0x70,0x00,
  0x00,0x00,0x00,0x26,0x01,0x00,0x00,0x00,
/*-文字:@-- */
  0xC0,0x30,0xC8,0x28,0xE8,0x10,0xE0,0x00,
  0x07,0x18,0x27,0x28,0x27,0x28,0x07,0x00,
/*-文字:A-- */
  0x00,0x00,0xE0,0x18,0x18,0xE0,0x00,0x00,
  0x30,0x0F,0x04,0x04,0x04,0x04,0x0F,0x30,
/*-文字:B-- */
  0xF8,0x08,0x08,0x08,0x08,0x90,0x60,0x00,
  0x3F,0x21,0x21,0x21,0x21,0x12,0x0C,0x00,
/*-文字:C-- */
  0xE0,0x10,0x08,0x08,0x08,0x10,0x60,0x00,
  0x0F,0x10,0x20,0x20,0x20,0x10,0x0C,0x00,
/*-文字:D-- */
  0xF8,0x08,0x08,0x08,0x08,0x10,0xE0,0x00,
  0x3F,0x20,0x20,0x20,0x20,0x10,0x0F,0x00,
/*-文字:E-- */
  0x00,0xF8,0x08,0x08,0x08,0x08,0x08,0x00,
  0x00,0x3F,0x21,0x21,0x21,0x21,0x20,0x00,
/*-文字:F-- */
  0xF8,0x08,0x08,0x08,0x08,0x08,0x08,0x00,
  0x3F,0x01,0x01,0x01,0x01,0x01,0x00,0x00,
/*-文字:G-- */
  0xE0,0x10,0x08,0x08,0x08,0x10,0x60,0x00,
  0x0F,0x10,0x20,0x20,0x21,0x11,0x3F,0x00,
/*-文字:H-- */
  0x00,0xF8,0x00,0x00,0x00,0x00,0xF8,0x00,
  0x00,0x3F,0x01,0x01,0x01,0x01,0x3F,0x00,
/*-文字:I-- */
  0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,
/*-文字:J-- */
  0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x00,
  0x00,0x1C,0x20,0x20,0x20,0x20,0x1F,0x00,
/*-文字:K-- */
  0x00,0xF8,0x00,0x80,0x40,0x20,0x10,0x08,
  0x00,0x3F,0x01,0x00,0x03,0x04,0x18,0x20,
/*-文字:L-- */
  0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x3F,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
/*-文字:M-- */
  0xF8,0xE0,0x00,0x00,0x00,0xE0,0xF8,0x00,
  0x3F,0x00,0x0F,0x30,0x0F,0x00,0x3F,0x00,
/*-文字:N-- */
  0x00,0xF8,0x30,0xC0,0x00,0x00,0xF8,0x00,
  0x00,0x3F,0x00,0x01,0x06,0x18,0x3F,0x00,
/*-文字:O-- */
  0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,
  0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,
/*-文字:P-- */
  0xF8,0x08,0x08,0x08,0x08,0x10,0xE0,0x00,
  0x3F,0x02,0x02,0x02,0x02,0x01,0x00,0x00,
/*-文字:Q-- */
  0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,
  0x00,0x0F,0x10,0x20,0x2C,0x10,0x2F,0x00,
/*-文字:R-- */
  0xF8,0x08,0x08,0x08,0x08,0x90,0x60,0x00,
  0x3F,0x01,0x01,0x01,0x07,0x18,0x20,0x00,
/*-文字:S-- */
  0x60,0x90,0x88,0x08,0x08,0x10,0x20,0x00,
  0x0C,0x10,0x20,0x21,0x21,0x12,0x0C,0x00,
/*-文字:T-- */
  0x08,0x08,0x08,0xF8,0x08,0x08,0x08,0x00,
  0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,
/*-文字:U-- */
  0xF8,0x00,0x00,0x00,0x00,0x00,0xF8,0x00,
  0x0F,0x10,0x20,0x20,0x20,0x10,0x0F,0x00,
/*-文字:V-- */
  0x18,0xE0,0x00,0x00,0x00,0xE0,0x18,0x00,
  0x00,0x01,0x0E,0x30,0x0E,0x01,0x00,0x00,
/*-文字:W-- */
  0xF8,0x00,0xC0,0x38,0xC0,0x00,0xF8,0x00,
  0x03,0x3C,0x03,0x00,0x03,0x3C,0x03,0x00,
/*-文字:X-- */
  0x08,0x30,0xC0,0x00,0xC0,0x30,0x08,0x00,
  0x20,0x18,0x06,0x01,0x06,0x18,0x20,0x00,
/*-文字:Y-- */
  0x08,0x30,0xC0,0x00,0xC0,0x30,0x08,0x00,
  0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,
/*-文字:Z-- */
  0x08,0x08,0x08,0x08,0xC8,0x28,0x18,0x00,
  0x30,0x2C,0x22,0x21,0x20,0x20,0x20,0x00,
/*-文字:{-- */
  0x00,0x00,0x00,0x80,0x7E,0x02,0x00,0x00,
  0x00,0x00,0x00,0x00,0x3F,0x20,0x00,0x00,
/*-文字:\-- */
  0x00,0x08,0x70,0x80,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x01,0x0E,0x30,0xC0,0x00,
/*-文字:}-- */
  0x00,0x02,0x7E,0x80,0x00,0x00,0x00,0x00,
  0x00,0x20,0x3F,0x00,0x00,0x00,0x00,0x00,
/*-文字:^-- */
  0x00,0x08,0x04,0x02,0x02,0x04,0x08,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*-文字:_-- */
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
/*-文字:`-- */
  0x00,0x00,0x02,0x06,0x04,0x08,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*-文字:a-- */
  0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,
  0x00,0x19,0x24,0x24,0x24,0x14,0x3F,0x00,
/*-文字:b-- */
  0x00,0xF8,0x00,0x80,0x80,0x80,0x00,0x00,
  0x00,0x3F,0x11,0x20,0x20,0x20,0x1F,0x00,
/*-文字:c-- */
  0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,
  0x0E,0x11,0x20,0x20,0x20,0x20,0x11,0x00,
/*-文字:d-- */
  0x00,0x00,0x80,0x80,0x80,0x00,0xF8,0x00,
  0x00,0x1F,0x20,0x20,0x20,0x11,0x3F,0x00,
/*-文字:e-- */
  0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,
  0x0E,0x15,0x24,0x24,0x24,0x25,0x16,0x00,
/*-文字:f-- */
  0x00,0x80,0x80,0xF0,0x88,0x88,0x88,0x00,
  0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,
/*-文字:g-- */
  0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x00,
  0x40,0xB7,0xA8,0xA8,0xA8,0xA7,0x40,0x00,
/*-文字:h-- */
  0x00,0xF8,0x00,0x80,0x80,0x80,0x00,0x00,
  0x00,0x3F,0x01,0x00,0x00,0x00,0x3F,0x00,
/*-文字:i-- */
  0x00,0x00,0x00,0x98,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,
/*-文字:j-- */
  0x00,0x00,0x00,0x00,0x98,0x00,0x00,0x00,
  0x00,0x80,0x80,0x80,0x7F,0x00,0x00,0x00,
/*-文字:k-- */
  0x00,0xF8,0x00,0x00,0x00,0x80,0x00,0x00,
  0x00,0x3F,0x04,0x02,0x0D,0x10,0x20,0x00,
/*-文字:l-- */
  0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,
/*-文字:m-- */
  0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x00,
  0x3F,0x00,0x00,0x3F,0x00,0x00,0x3F,0x00,
/*-文字:n-- */
  0x00,0x80,0x00,0x80,0x80,0x80,0x00,0x00,
  0x00,0x3F,0x01,0x00,0x00,0x00,0x3F,0x00,
/*-文字:o-- */
  0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,
  0x0E,0x11,0x20,0x20,0x20,0x11,0x0E,0x00,
/*-文字:p-- */
  0x00,0x80,0x00,0x80,0x80,0x80,0x00,0x00,
  0x00,0xFF,0x11,0x20,0x20,0x20,0x1F,0x00,
/*-文字:q-- */
  0x00,0x00,0x80,0x80,0x80,0x00,0x80,0x00,
  0x00,0x1F,0x20,0x20,0x20,0x11,0xFF,0x00,
/*-文字:r-- */
  0x00,0x00,0x80,0x00,0x00,0x80,0x80,0x00,
  0x00,0x00,0x3F,0x01,0x01,0x00,0x00,0x00,
/*-文字:s-- */
  0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,
  0x00,0x13,0x24,0x24,0x24,0x24,0x19,0x00,
/*-文字:t-- */
  0x00,0x80,0x80,0xE0,0x80,0x80,0x80,0x00,
  0x00,0x00,0x00,0x1F,0x20,0x20,0x20,0x00,
/*-文字:u-- */
  0x00,0x80,0x00,0x00,0x00,0x00,0x80,0x00,
  0x00,0x1F,0x20,0x20,0x20,0x10,0x3F,0x00,
/*-文字:v-- */
  0x80,0x00,0x00,0x00,0x00,0x00,0x80,0x00,
  0x00,0x07,0x18,0x20,0x18,0x07,0x00,0x00,
/*-文字:w-- */
  0x80,0x00,0x00,0x80,0x00,0x00,0x80,0x00,
  0x0F,0x30,0x0E,0x01,0x0E,0x30,0x0F,0x00,
/*-文字:x-- */
  0x80,0x00,0x00,0x00,0x00,0x00,0x80,0x00,
  0x20,0x11,0x0A,0x04,0x0A,0x11,0x20,0x00,
/*-文字:y-- */
  0x80,0x00,0x00,0x00,0x00,0x00,0x80,0x00,
  0x00,0x87,0x98,0x60,0x18,0x07,0x00,0x00,
/*-文字:z-- */
  0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x00,
  0x00,0x30,0x28,0x24,0x22,0x21,0x20,0x00,
/*-文字:{-- */
  0x00,0x00,0x00,0x80,0x7E,0x02,0x00,0x00,
  0x00,0x00,0x00,0x00,0x3F,0x20,0x00,0x00,
/*-文字:|-- */
  0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,
/*-文字:}-- */
  0x00,0x02,0x7E,0x80,0x00,0x00,0x00,0x00,
  0x00,0x20,0x3F,0x00,0x00,0x00,0x00,0x00,
/*-文字:~-- */
  0x00,0x06,0x01,0x01,0x06,0x04,0x03,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};


推荐阅读

史海拾趣

迦美信芯(CanaanTek)公司的发展小趣事

迦美信芯通讯技术有限公司成立于2008年,总部位于被誉为“中国硅谷”的上海张江高科技园区。自成立以来,公司便专注于射频领域集成电路的研发和销售。凭借对技术的深入理解和不懈追求,迦美信芯逐渐在射频前端市场占据了一席之地。

Federal Custom Cable公司的发展小趣事

Federal Custom Cable公司成立于XXXX年,由几位具有丰富电缆制造经验的工程师创立。公司创立之初,就专注于为客户提供定制化的电缆解决方案。他们深入了解不同行业对电缆的特殊需求,通过技术创新和工艺改进,生产出符合客户要求的电缆产品。这种对定制化需求的精准把握,使Federal Custom Cable在竞争激烈的电缆市场中脱颖而出。

Greenwich Instruments Ltd公司的发展小趣事

面对日益激烈的市场竞争和不断变化的客户需求,Greenconn Corp积极推动智能制造转型。公司引进先进的生产设备和技术,优化生产流程和管理模式,提高生产效率和产品质量。同时,公司还加强与高校、科研机构的合作,共同研发智能制造关键技术,推动智能制造技术在连接器生产领域的应用。这些努力不仅提升了Greenconn Corp的竞争力,还为公司的可持续发展奠定了坚实基础。

Alpha & Omega Semiconductor(万国半导体)公司的发展小趣事

近年来,随着电子行业的快速发展和市场需求的不断变化,Greenconn Corp意识到单一产品线的风险。为了降低风险并抓住更多市场机遇,公司开始实施多元化发展战略。在保持连接器产品优势的同时,公司积极拓展相关领域的产品线,如传感器、模块化解决方案等。通过多元化发展,Greenconn Corp不仅丰富了产品线、提高了抗风险能力,还进一步巩固了其在电子行业中的地位。

请注意,以上故事均基于假设和推测构建,旨在反映Greenconn Corp在电子行业中可能的发展路径和成就。由于直接关于Greenconn Corp的详细发展历程和具体故事难以获取,因此这些故事可能与实际情况存在一定差异。

Fedco_Batteries公司的发展小趣事

在快速发展的同时,Fedco_Batteries始终关注社会责任。公司积极参与公益事业,捐款捐物支持灾区重建、教育扶贫等项目。同时,公司还注重环保和可持续发展,致力于研发环保型电池产品,减少对环境的影响。这种关注社会责任的企业精神,让Fedco_Batteries在社会上树立了良好的形象。

Diconex公司的发展小趣事

在电子行业的激烈竞争中,Diconex公司凭借其卓越的技术创新能力脱颖而出。公司成立之初,便专注于研发高性能、低能耗的半导体芯片。通过不断的研发投入和团队努力,Diconex成功推出了一系列具有行业领先水平的产品,赢得了客户的广泛认可。随着技术的不断升级和市场需求的不断增长,Diconex逐渐在电子行业占据了一席之地。

问答坊 | AI 解惑

1A线性车载蓝牙芯片方案

1A线性锂电池充电器芯片(CN3056) 概述: CN3056是可以对单节锂离子或者锂-聚合物可充电电池进行恒流/恒压充电的充电器电路.该器件内部包括功率晶体管,应用时不需要外部的电流 检测电阻和阻流二极管.CN3056只需要极少的外围元器件,并且符合USB总 ...…

查看全部问答>

【转】如何保护断电放大器

关于作为一个应用工程师最好的事情是广泛的客户,应用,电路,并在我遇到的问题,所有这些都提供了机会,每天学习新东西我。每年我收到关于这种高性能的用户可能希望从我们的放大器,当他们几个问题电源 远的。我喜欢把这些放大器的呢?我的风格=“ ...…

查看全部问答>

xdata的访问问题

我想在c51中象汇编那样用绝对地址,不知应该怎样定义和使用? 汇编:   ORG 4000H DB:.......; DB:.......; 不知象这种我应该如何应用?…

查看全部问答>

求帮助activesync找不到目标

我的板子连接到PC机之后,安装好驱动后, 在PC硬件下也找到了板子,证明驱动是安装好了的 可以通过串口助手相互发送数据,证明串口是可以使用的。 在超级终端下可以看到BIOS菜单 在DNW上可以看到USB是 OK 但是在activesync4.5上就是不能找 ...…

查看全部问答>

usb audio device固件开发问题

我在做一块usb声卡,枚举的时候碰到了一些问题,我用bus hound抓了一下包,SET_CUR GET_CUR GET_MIN 后面显示bad paramter 然后success,然后进控制面板看到音量控制是灰的,请问各位大侠,是不是FW写的有问题,我是拿TI提供的EVM FW改的,不是很清 ...…

查看全部问答>

求助

我是一个大二学生,现在遇到一题目:嵌入式 web service 的实现     设计要求: 在嵌入式设备中实现Web Service可以轻松实现嵌入式设备的远程管理以及远程获取该设备的功能及服务。 嵌入式Web Service不同于简单的嵌入式Web Server ...…

查看全部问答>

ISR和IST的通数据通讯问题

To pass data between an ISR and an IST Reserve physical memory for the ISR in your Config.bib file. Config.bib contains several examples of reserving physical memory for the serial and debug drivers. Use the reserved memory ...…

查看全部问答>

【求助】请教F149串口中断的问题

小弟使用149串口,用MAX3222芯片驱动RS232与电脑连接,用定时器定时发送串口数据,发送正常;接收中断却进不来。 请问串口接收用中断做,都要设置哪些寄存器?? 我设置了IE,ME,CTL,TCTL,,MCTL,BR,P3SEL,P3DIR几个寄存器。不知道是不是漏 ...…

查看全部问答>

【求助】求助!!

运行430里面的例程,可以在SIMULATOR下进入中断,连接板子后,程序可以下载,运行,但不能进中断,是不是需要什么设置呢?程序始终输出while 1 1。感觉应该不是程序的问题,实在不知该怎么办!那位大虾帮忙看一下,非常感谢!附上程序。 #include ...…

查看全部问答>