历史上的今天
今天是: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
point();}
}
else {xs = row;
for (ys=0;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<
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,
};
上一篇:12864液晶显示源程序汇编程序
下一篇:IC卡控制程序
史海拾趣
|
1A线性锂电池充电器芯片(CN3056) 概述: CN3056是可以对单节锂离子或者锂-聚合物可充电电池进行恒流/恒压充电的充电器电路.该器件内部包括功率晶体管,应用时不需要外部的电流 检测电阻和阻流二极管.CN3056只需要极少的外围元器件,并且符合USB总 ...… 查看全部问答> |
|
关于作为一个应用工程师最好的事情是广泛的客户,应用,电路,并在我遇到的问题,所有这些都提供了机会,每天学习新东西我。每年我收到关于这种高性能的用户可能希望从我们的放大器,当他们几个问题电源 远的。我喜欢把这些放大器的呢?我的风格=“ ...… 查看全部问答> |
|
我想在c51中象汇编那样用绝对地址,不知应该怎样定义和使用? 汇编: ORG 4000H DB:.......; DB:.......; 不知象这种我应该如何应用?… 查看全部问答> |
|
我的板子连接到PC机之后,安装好驱动后, 在PC硬件下也找到了板子,证明驱动是安装好了的 可以通过串口助手相互发送数据,证明串口是可以使用的。 在超级终端下可以看到BIOS菜单 在DNW上可以看到USB是 OK 但是在activesync4.5上就是不能找 ...… 查看全部问答> |
|
我在做一块usb声卡,枚举的时候碰到了一些问题,我用bus hound抓了一下包,SET_CUR GET_CUR GET_MIN 后面显示bad paramter 然后success,然后进控制面板看到音量控制是灰的,请问各位大侠,是不是FW写的有问题,我是拿TI提供的EVM FW改的,不是很清 ...… 查看全部问答> |
|
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 ...… 查看全部问答> |
|
小弟使用149串口,用MAX3222芯片驱动RS232与电脑连接,用定时器定时发送串口数据,发送正常;接收中断却进不来。 请问串口接收用中断做,都要设置哪些寄存器?? 我设置了IE,ME,CTL,TCTL,,MCTL,BR,P3SEL,P3DIR几个寄存器。不知道是不是漏 ...… 查看全部问答> |




