电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

电子发烧友网>电子威廉希尔官方网站 应用>实验中心>编程实验>12864液晶屏驱动程序分享 - 12864液晶屏驱动程序分享

12864液晶屏驱动程序分享 - 12864液晶屏驱动程序分享

  12864液晶屏驱动程序分享

  #include《absacc.h》

  #include《reg52.h》

  #include《stdarg.h》

  #include《stdio.h》

  #defineulongunsignedlong

  #defineuintunsignedint

  #defineucharunsignedchar

  #defineSTX0x02

  #defineETX0x03

  #defineEOT0x04

  #defineENQ0x05

  #defineBS0x08

  #defineCR0x0D

  #defineLF0x0A

  #defineDLE0x10

  #defineETB0x17

  #defineSPACE0x20

  #defineCOMMA0x2C

  #defineTRUE1

  #defineFALSE0

  #defineHIGH1

  #defineLOW0

  //T6963C端口定义

  #defineLCMDWXBYTE[0x5000]//数据口

  #defineLCMCWXBYTE[0x5002]//命令口

  //T6963C命令定义

  #defineLC_CUR_POS0x21//光标位置设置

  #defineLC_CGR_POS0x22//CGRAM偏置地址设置

  #defineLC_ADD_POS0x24//地址指针位置

  #defineLC_TXT_STP0x40//文本区首址

  #defineLC_TXT_WID0x41//文本区宽度

  #defineLC_GRH_STP0x42//图形区首址

  #defineLC_GRH_WID0x43//图形区宽度

  #defineLC_MOD_OR0x80//显示方式:逻辑“或”

  #defineLC_MOD_XOR0x81//显示方式:逻辑“异或”

  #defineLC_MOD_AND0x82//显示方式:逻辑“与”

  #defineLC_MOD_TCH0x83//显示方式:文本特征

  #defineLC_DIS_SW0x90//显示开关:D0=1/0:光标闪烁启用/禁用;

  //D1=1/0:光标显示启用/禁用;

  //D2=1/0:文本显示启用/禁用;

  //D3=1/0:图形显示启用/禁用;

  #defineLC_CUR_SHP0xA0//光标形状选择:0xA0-0xA7表示光标占的行数

  #defineLC_AUT_WR0xB0//自动写设置

  #defineLC_AUT_RD0xB1//自动读设置

  #defineLC_AUT_OVR0xB2//自动读/写结束

  #defineLC_INC_WR0xC0//数据一次写,地址加1

  #defineLC_INC_RD0xC1//数据一次读,地址加1

  #defineLC_DEC_WR0xC2//数据一次写,地址减1

  #defineLC_DEC_RD0xC3//数据一次读,地址减1

  #defineLC_NOC_WR0xC4//数据一次写,地址不变

  #defineLC_NOC_RD0xC5//数据一次读,地址不变

  #defineLC_SCN_RD0xE0//屏读

  #defineLC_SCN_CP0xE8//屏拷贝

  #defineLC_BIT_OP0xF0//位操作:D0-D2:定义D0-D7位;D3:1置位;0:清除

  codeucharconstuPowArr[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};

  //ASCII字模宽度及高度定义

  #defineASC_CHR_WIDTH8

  #defineASC_CHR_HEIGHT12

  //ASCII字模,显示为8*16

  charcodeASC_MSK[96*12]={

  //Terminal9;此字体下对应的点阵为:宽x高=8x12

  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,//《0x20时,打印此字

  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//‘’

  0x00,0x0C,0x1E,0x1E,0x1E,0x0C,0x0C,0x00,0x0C,0x0C,0x00,0x00,//‘!’

  0x00,0x66,0x66,0x66,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//‘“’

  0x00,0x36,0x36,0x7F,0x36,0x36,0x36,0x7F,0x36,0x36,0x00,0x00,//‘#’

  0x0C,0x0C,0x3E,0x03,0x03,0x1E,0x30,0x30,0x1F,0x0C,0x0C,0x00,//‘$’

  0x00,0x00,0x00,0x23,0x33,0x18,0x0C,0x06,0x33,0x31,0x00,0x00,//‘%’

  0x00,0x0E,0x1B,0x1B,0x0E,0x5F,0x7B,0x33,0x3B,0x6E,0x00,0x00,//‘&’

  0x00,0x0C,0x0C,0x0C,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//‘’‘

  0x00,0x30,0x18,0x0C,0x06,0x06,0x06,0x0C,0x18,0x30,0x00,0x00,//’(‘

  0x00,0x06,0x0C,0x18,0x30,0x30,0x30,0x18,0x0C,0x06,0x00,0x00,//’)‘

  0x00,0x00,0x00,0x66,0x3C,0xFF,0x3C,0x66,0x00,0x00,0x00,0x00,//’*‘

  0x00,0x00,0x00,0x18,0x18,0x7E,0x18,0x18,0x00,0x00,0x00,0x00,//’+‘

  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x1C,0x06,0x00,//’,‘

  0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,//’-‘

  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x1C,0x00,0x00,//’。‘

  0x00,0x00,0x40,0x60,0x30,0x18,0x0C,0x06,0x03,0x01,0x00,0x00,//’/‘

  0x00,0x3E,0x63,0x73,0x7B,0x6B,0x6F,0x67,0x63,0x3E,0x00,0x00,//’0‘

  0x00,0x08,0x0C,0x0F,0x0C,0x0C,0x0C,0x0C,0x0C,0x3F,0x00,0x00,//’1‘

  0x00,0x1E,0x33,0x33,0x30,0x18,0x0C,0x06,0x33,0x3F,0x00,0x00,//’2‘

  0x00,0x1E,0x33,0x30,0x30,0x1C,0x30,0x30,0x33,0x1E,0x00,0x00,//’3‘

  0x00,0x30,0x38,0x3C,0x36,0x33,0x7F,0x30,0x30,0x78,0x00,0x00,//’4‘

  0x00,0x3F,0x03,0x03,0x03,0x1F,0x30,0x30,0x33,0x1E,0x00,0x00,//’5‘

  0x00,0x1C,0x06,0x03,0x03,0x1F,0x33,0x33,0x33,0x1E,0x00,0x00,//’6‘

  0x00,0x7F,0x63,0x63,0x60,0x30,0x18,0x0C,0x0C,0x0C,0x00,0x00,//’7‘

  0x00,0x1E,0x33,0x33,0x37,0x1E,0x3B,0x33,0x33,0x1E,0x00,0x00,//’8‘

  0x00,0x1E,0x33,0x33,0x33,0x3E,0x18,0x18,0x0C,0x0E,0x00,0x00,//’9‘

  0x00,0x00,0x00,0x1C,0x1C,0x00,0x00,0x1C,0x1C,0x00,0x00,0x00,//’:‘

  0x00,0x00,0x00,0x1C,0x1C,0x00,0x00,0x1C,0x1C,0x18,0x0C,0x00,//’;‘

  0x00,0x30,0x18,0x0C,0x06,0x03,0x06,0x0C,0x18,0x30,0x00,0x00,//’《‘

  0x00,0x00,0x00,0x00,0x7E,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,//’=‘

  0x00,0x06,0x0C,0x18,0x30,0x60,0x30,0x18,0x0C,0x06,0x00,0x00,//’》‘

  0x00,0x1E,0x33,0x30,0x18,0x0C,0x0C,0x00,0x0C,0x0C,0x00,0x00,//’?‘

  0x00,0x3E,0x63,0x63,0x7B,0x7B,0x7B,0x03,0x03,0x3E,0x00,0x00,//’@‘

  0x00,0x0C,0x1E,0x33,0x33,0x33,0x3F,0x33,0x33,0x33,0x00,0x00,//’A‘

  0x00,0x3F,0x66,0x66,0x66,0x3E,0x66,0x66,0x66,0x3F,0x00,0x00,//’B‘

  0x00,0x3C,0x66,0x63,0x03,0x03,0x03,0x63,0x66,0x3C,0x00,0x00,//’C‘

  0x00,0x1F,0x36,0x66,0x66,0x66,0x66,0x66,0x36,0x1F,0x00,0x00,//’D‘

  0x00,0x7F,0x46,0x06,0x26,0x3E,0x26,0x06,0x46,0x7F,0x00,0x00,//’E‘

  0x00,0x7F,0x66,0x46,0x26,0x3E,0x26,0x06,0x06,0x0F,0x00,0x00,//’F‘

  0x00,0x3C,0x66,0x63,0x03,0x03,0x73,0x63,0x66,0x7C,0x00,0x00,//’G‘

  0x00,0x33,0x33,0x33,0x33,0x3F,0x33,0x33,0x33,0x33,0x00,0x00,//’H‘

  0x00,0x1E,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x1E,0x00,0x00,//’I‘

  0x00,0x78,0x30,0x30,0x30,0x30,0x33,0x33,0x33,0x1E,0x00,0x00,//’J‘

  0x00,0x67,0x66,0x36,0x36,0x1E,0x36,0x36,0x66,0x67,0x00,0x00,//’K‘

  0x00,0x0F,0x06,0x06,0x06,0x06,0x46,0x66,0x66,0x7F,0x00,0x00,//’L‘

  0x00,0x63,0x77,0x7F,0x7F,0x6B,0x63,0x63,0x63,0x63,0x00,0x00,//’M‘

  0x00,0x63,0x63,0x67,0x6F,0x7F,0x7B,0x73,0x63,0x63,0x00,0x00,//’N‘

  0x00,0x1C,0x36,0x63,0x63,0x63,0x63,0x63,0x36,0x1C,0x00,0x00,//’O‘

  0x00,0x3F,0x66,0x66,0x66,0x3E,0x06,0x06,0x06,0x0F,0x00,0x00,//’P‘

  0x00,0x1C,0x36,0x63,0x63,0x63,0x73,0x7B,0x3E,0x30,0x78,0x00,//’Q‘

  0x00,0x3F,0x66,0x66,0x66,0x3E,0x36,0x66,0x66,0x67,0x00,0x00,//’R‘

  0x00,0x1E,0x33,0x33,0x03,0x0E,0x18,0x33,0x33,0x1E,0x00,0x00,//’S‘

  0x00,0x3F,0x2D,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x1E,0x00,0x00,//’T‘

  0x00,0x33,0x33,0x33,0x33,0x33,0x33,0x33,0x33,0x1E,0x00,0x00,//’U‘

  0x00,0x33,0x33,0x33,0x33,0x33,0x33,0x33,0x1E,0x0C,0x00,0x00,//’V‘

  0x00,0x63,0x63,0x63,0x63,0x6B,0x6B,0x36,0x36,0x36,0x00,0x00,//’W‘

  0x00,0x33,0x33,0x33,0x1E,0x0C,0x1E,0x33,0x33,0x33,0x00,0x00,//’X‘

  0x00,0x33,0x33,0x33,0x33,0x1E,0x0C,0x0C,0x0C,0x1E,0x00,0x00,//’Y‘

  0x00,0x7F,0x73,0x19,0x18,0x0C,0x06,0x46,0x63,0x7F,0x00,0x00,//’Z‘

  0x00,0x3C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x3C,0x00,0x00,//’[‘

  0x00,0x00,0x01,0x03,0x06,0x0C,0x18,0x30,0x60,0x40,0x00,0x00,//’\‘

  0x00,0x3C,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x3C,0x00,0x00,//’]‘

  0x08,0x1C,0x36,0x63,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//’^‘

  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,//’_‘

  0x0C,0x0C,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//’`‘

  0x00,0x00,0x00,0x00,0x1E,0x30,0x3E,0x33,0x33,0x6E,0x00,0x00,//’a‘

  0x00,0x07,0x06,0x06,0x3E,0x66,0x66,0x66,0x66,0x3B,0x00,0x00,//’b‘

  0x00,0x00,0x00,0x00,0x1E,0x33,0x03,0x03,0x33,0x1E,0x00,0x00,//’c‘

  0x00,0x38,0x30,0x30,0x3E,0x33,0x33,0x33,0x33,0x6E,0x00,0x00,//’d‘

  0x00,0x00,0x00,0x00,0x1E,0x33,0x3F,0x03,0x33,0x1E,0x00,0x00,//’e‘

  0x00,0x1C,0x36,0x06,0x06,0x1F,0x06,0x06,0x06,0x0F,0x00,0x00,//’f‘

  0x00,0x00,0x00,0x00,0x6E,0x33,0x33,0x33,0x3E,0x30,0x33,0x1E,//’g‘

  0x00,0x07,0x06,0x06,0x36,0x6E,0x66,0x66,0x66,0x67,0x00,0x00,//’h‘

  0x00,0x18,0x18,0x00,0x1E,0x18,0x18,0x18,0x18,0x7E,0x00,0x00,//’i‘

  0x00,0x30,0x30,0x00,0x3C,0x30,0x30,0x30,0x30,0x33,0x33,0x1E,//’j‘

  0x00,0x07,0x06,0x06,0x66,0x36,0x1E,0x36,0x66,0x67,0x00,0x00,//’k‘

  0x00,0x1E,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x7E,0x00,0x00,//’l‘

  0x00,0x00,0x00,0x00,0x3F,0x6B,0x6B,0x6B,0x6B,0x63,0x00,0x00,//’m‘

  0x00,0x00,0x00,0x00,0x1F,0x33,0x33,0x33,0x33,0x33,0x00,0x00,//’n‘

  0x00,0x00,0x00,0x00,0x1E,0x33,0x33,0x33,0x33,0x1E,0x00,0x00,//’o‘

  0x00,0x00,0x00,0x00,0x3B,0x66,0x66,0x66,0x66,0x3E,0x06,0x0F,//’p‘

  0x00,0x00,0x00,0x00,0x6E,0x33,0x33,0x33,0x33,0x3E,0x30,0x78,//’q‘

  0x00,0x00,0x00,0x00,0x37,0x76,0x6E,0x06,0x06,0x0F,0x00,0x00,//’r‘

  0x00,0x00,0x00,0x00,0x1E,0x33,0x06,0x18,0x33,0x1E,0x00,0x00,//’s‘

  0x00,0x00,0x04,0x06,0x3F,0x06,0x06,0x06,0x36,0x1C,0x00,0x00,//’t‘

  0x00,0x00,0x00,0x00,0x33,0x33,0x33,0x33,0x33,0x6E,0x00,0x00,//’u‘

  0x00,0x00,0x00,0x00,0x33,0x33,0x33,0x33,0x1E,0x0C,0x00,0x00,//’v‘

  0x00,0x00,0x00,0x00,0x63,0x63,0x6B,0x6B,0x36,0x36,0x00,0x00,//’w‘

  0x00,0x00,0x00,0x00,0x63,0x36,0x1C,0x1C,0x36,0x63,0x00,0x00,//’x‘

  0x00,0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x3C,0x30,0x18,0x0F,//’y‘

  0x00,0x00,0x00,0x00,0x3F,0x31,0x18,0x06,0x23,0x3F,0x00,0x00,//’z‘

  0x00,0x38,0x0C,0x0C,0x06,0x03,0x06,0x0C,0x0C,0x38,0x00,0x00,//’{‘

  0x00,0x18,0x18,0x18,0x18,0x00,0x18,0x18,0x18,0x18,0x00,0x00,//’|‘

  0x00,0x07,0x0C,0x0C,0x18,0x30,0x18,0x0C,0x0C,0x07,0x00,0x00,//’}‘

  0x00,0xCE,0x5B,0x73,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//’~‘

  };

  typedefstructtypFNT_GB16//汉字字模显示数据结构

  {

  charIndex[2];

  charMsk[32];

  };

  structtypFNT_GB16xdataGB_16[]={//显示为16*16

  ”中“,0x01,0x00,0x01,0x00,0x21,0x08,0x3F,0xFC,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x3F,0xF8,0x21,0x08,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,

  ”文“,0x02,0x00,0x01,0x00,0x01,0x00,0xFF,0xFE,0x08,0x20,0x08,0x20,0x08,0x20,0x04,0x40,0x04,0x40,0x02,0x80,0x01,0x00,0x02,0x80,0x04,0x60,0x18,0x1E,0xE0,0x08,0x00,0x00,

  ”测“,0x40,0x02,0x27,0xC2,0x24,0x42,0x84,0x52,0x45,0x52,0x55,0x52,0x15,0x52,0x25,0x52,0x25,0x52,0x25,0x52,0xC5,0x52,0x41,0x02,0x42,0x82,0x42,0x42,0x44,0x4A,0x48,0x04,

  ”试“,0x00,0x20,0x40,0x28,0x20,0x24,0x30,0x24,0x27,0xFE,0x00,0x20,0xE0,0x20,0x27,0xE0,0x21,0x20,0x21,0x10,0x21,0x10,0x21,0x0A,0x29,0xCA,0x36,0x06,0x20,0x02,0x00,0x00,

  };

  uchargCurRow,gCurCol;//当前行、列存储,行高16点,列宽8点

  ucharfnGetRow(void)

  {

  returngCurRow;

  }

  ucharfnGetCol(void)

  {

  returngCurCol;

  }

  ucharfnST01(void)//状态位STA1,STA0判断(读写指令和读写数据)

  {

  uchari;

  for(i=10;i》0;i--)

  {

  if((LCMCW&0x03)==0x03)

  break;

  }

  returni;//若返回零,说明错误

  }

  ucharfnST2(void)//状态位ST2判断(数据自动读状态)

  {

  uchari;

  for(i=10;i》0;i--)

  {

  if((LCMCW&0x04)==0x04)

  break;

  }

  returni;//若返回零,说明错误

  }

  ucharfnST3(void)//状态位ST3判断(数据自动写状态)

  {

  uchari;

  for(i=10;i》0;i--)

  {

  if((LCMCW&0x08)==0x08)

  break;

  }

  returni;//若返回零,说明错误

  }

  ucharfnST6(void)//状态位ST6判断(屏读/屏拷贝状态)

  {

  uchari;

  for(i=10;i》0;i--)

  {

  if((LCMCW&0x40)==0x40)

  break;

  }

  returni;//若返回零,说明错误

  }

  ucharfnPR1(ucharuCmd,ucharuPar1,ucharuPar2)//写双参数的指令

  {

  if(fnST01()==0)

  return1;

  LCMDW=uPar1;

  if(fnST01()==0)

  return2;

  LCMDW=uPar2;

  if(fnST01()==0)

  return3;

  LCMCW=uCmd;

  return0;//返回0成功

  }

  ucharfnPR11(ucharuCmd,ucharuPar1)//写单参数的指令

  {

  if(fnST01()==0)

  return1;

  LCMDW=uPar1;

  if(fnST01()==0)

  return2;

  LCMCW=uCmd;

  return0;//返回0成功

  }

  ucharfnPR12(ucharuCmd)//写无参数的指令

  {

  if(fnST01()==0)

  return1;

  LCMCW=uCmd;

  return0;//返回0成功

  }

  ucharfnPR13(ucharuData)//写数据

  {

  if(fnST3()==0)

  return1;

  LCMDW=uData;

  return0;//返回0成功

  }

  ucharfnPR2(void)//读数据

  {

  if(fnST01()==0)

  return1;

  returnLCMDW;

  }

  //设置当前地址

  voidfnSetPos(ucharurow,ucharucol)

  {

  uintiPos;

  iPos=urow*30+ucol;

  fnPR1(LC_ADD_POS,iPos&0xFF,iPos/256);

  gCurRow=urow;

  gCurCol=ucol;

  }

  //设置当前显示行、列

  voidcursor(ucharuRow,ucharuCol)

  {

  fnSetPos(uRow*16,uCol);

  }

  //清屏

  voidcls(void)

  {

  uinti;

  fnPR1(LC_ADD_POS,0x00,0x00);//置地址指针

  fnPR12(LC_AUT_WR);//自动写

  for(i=0;i《240*30;i++)

  {

  fnST3();

  fnPR13(0x00);//写数据

  }

  fnPR12(LC_AUT_OVR);//自动写结束

  fnPR1(LC_ADD_POS,0x00,0x00);//重置地址指针

  gCurRow=0;//置地址指针存储变量

  gCurCol=0;

  }

  //LCM初始化

  charfnLCMInit(void)

  {

  if(fnPR1(LC_TXT_STP,0x00,0x00)!=0)//文本显示区首地址

  return-1;

  fnPR1(LC_TXT_WID,0x1E,0x00);//文本显示区宽度

  fnPR1(LC_GRH_STP,0x00,0x00);//图形显示区首地址

  fnPR1(LC_GRH_WID,0x1E,0x00);//图形显示区宽度

  fnPR12(LC_CUR_SHP|0x01);//光标形状

  fnPR12(LC_MOD_OR);//显示方式设置

  fnPR12(LC_DIS_SW|0x08);//显示开关设置

  return0;

  }

  //ASCII(8*16)及汉字(16*16)显示函数

  uchardprintf(char*fmt,。。.)

  {

  va_listarg_ptr;

  charc1,c2,cData;

  chartmpBuf[64];//LCD显示数据缓冲区

  uchari=0,j,uLen,uRow,uCol;

  uintk;

  va_start(arg_ptr,fmt);

  uLen=(uchar)vsprintf(tmpBuf,fmt,arg_ptr);

  va_end(arg_ptr);

  while(i《uLen)

  {

  c1=tmpBuf[i];

  c2=tmpBuf[i+1];

  uRow=fnGetRow();

  uCol=fnGetCol();

  if(c1》=0)

  {//ASCII

  if(c1《0x20)

  {

  switch(c1)

  {

  caseCR:

  caseLF://回车或换行

  i++;

  if(uRow《112)

  fnSetPos(uRow+16,0);

  else

  fnSetPos(0,0);

  continue;

  caseBS://退格

  if(uCol》0)

  uCol--;

  fnSetPos(uRow,uCol);

  cData=0x00;

  break;

  default://其他

  c1=0x1f;

  }

  }

  for(j=0;j《16;j++)

  {

  fnPR12(LC_AUT_WR);//写数据

  if(c1》=0x1f)

  {

  if(j《(16-ASC_CHR_HEIGHT))

  fnPR13(0x00);

  else

  fnPR13(ASC_MSK[(c1-0x1f)*ASC_CHR_HEIGHT+j-(16-ASC_CHR_HEIGHT)]);

  }

  else

  fnPR13(cData);

  fnPR12(LC_AUT_OVR);

  fnSetPos(uRow+j+1,uCol);

  }

  if(c1!=BS)//非退格

  uCol++;

  }

  else

  {//中文

  for(j=0;j《sizeof(GB_16)/sizeof(GB_16[0]);j++)

  {

  if(c1==GB_16[j].Index[0]&&c2==GB_16[j].Index[1])

  break;

  }

  for(k=0;k《sizeof(GB_16[0].Msk)/2;k++)

  {

  fnSetPos(uRow+k,uCol);

  fnPR12(LC_AUT_WR);//写数据

  if(j《sizeof(GB_16)/sizeof(GB_16[0]))

  {

  fnPR13(GB_16[j].Msk[k*2]);

  fnPR13(GB_16[j].Msk[k*2+1]);

  }

  else//未找到该字

  {

  if(k《sizeof(GB_16[0].Msk)/4)

  {

  fnPR13(0x00);

  fnPR13(0x00);

  }

  else

  {

  fnPR13(0xff);

  fnPR13(0xff);

  }

  }

  fnPR12(LC_AUT_OVR);

  }

  uCol+=2;

  i++;

  }

  if(uCol》=30)//光标后移

  {

  uRow+=16;

  if(uRow《0x80)

  uCol-=30;

  else

  {

  uRow=0;

  uCol=0;

  }

  }

  fnSetPos(uRow,uCol);

  i++;

  }

  returnuLen;

  }

  voidmain(void)//测试用

  {

  fnLCMInit();

  cls();

  cursor(0,0);

  dprintf(”%s“,”Thisisatest:中文测试“);

  }


上一页12全文

本文导航

收藏

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论

查看更多

相关推荐

基于AVR的液晶12864驱动程序

电子发烧友网站提供《基于AVR的液晶12864驱动程序.pdf》资料免费下载
2023-10-23 09:36:100

液晶屏摩擦系数仪

随着科技的不断发展,液晶屏已经成为现代电子产品中最为常见的显示威廉希尔官方网站 之一。液晶屏的摩擦性能对于其使用体验和寿命具有重要影响,因此液晶屏摩擦系数仪成为了测量液晶屏表面摩擦性能的重要工具。液晶屏摩擦系数仪
2023-10-18 15:59:32

12864图文显示测试液晶驱动程序代码

LCD12864液晶屏显示程序
2023-05-22 16:37:360

液晶屏驱动板的原理介绍

液晶屏驱动板常被称为A/D(模拟/数字)板,这从某种意义上反应出驱动板实现的主要功能所在。液晶屏要显示图像需要数字化过的视频信号,液晶屏驱动板正是完成从模拟信号到数字信号(或者从一种数字信号到另外一种数字信号)转换的功能模块,并同时在图像控制单元的控制下去驱动液晶屏显示图像。
2023-05-09 14:51:212779

液晶屏驱动板的原理分析

液晶屏驱动板常被称为A/D<模拟/数字)板,这从某种意义上反应出驱动板实现的主要功能所在。液晶屏要显示图像需要数字化过的视频信号,液晶屏驱动板正是完成从模拟信号到数字信号<或者从一种数字信号到另外一种数字信号)转换的功能模块,并同时在图像控制单元的控制下去驱动液晶屏显示图像。
2023-05-09 14:48:531573

LCD1602液晶实验驱动程序

LCD1602液晶实验驱动程序分享。
2022-06-06 14:28:471

条形液晶屏的应用特点有哪些

条形液晶屏是随着液晶屏的发展而因需求导向的一种液晶屏产物。顾名思义:条形液晶屏就是一个条状的液晶屏,是异形的一种表现形式。
2022-03-07 10:03:48931

乐化液晶驱动程序下载

乐化液晶驱动程序下载
2022-01-17 15:13:517

1602液晶显示驱动程序下载

1602液晶显示驱动程序下载
2022-01-11 11:13:341

12864中文液晶屏典型应用例程源程序+原理图(取模软件)

12864中文液晶屏典型应用例程源程序+原理图,包含取模软件
2012-08-15 14:42:35

51单片机12864液晶屏proteus仿真

51单片机12864液晶屏proteus仿真
2021-11-18 12:36:0135

51单片机-LCD12864液晶屏

lcd12864液晶屏,有点复杂,只有基本的显示。#include &lt;reg52.h&gt;#include &lt;intrins.h&gt;#define
2021-11-12 11:36:0132

点阵液晶屏和段码液晶屏之间的区别是什么

(等同于显示器的一个清晰度)构成的,如12864点阵液晶屏, 便是横有12八个点,竖有64个点,一共就有128*64个点。 通过对这些点的操作,来表达想呈现出去的图型或是文本,并能够显示世界各国的文本,帝前后左右翻转,动漫作用等。那点阵
2021-08-17 17:06:453364

段码液晶屏具体的驱动流程是怎样的

段码液晶屏因其简易便捷的动态显示,灵便的反应速率,不用人为因素的长期的实际操作而遭受众多客户的应用。那麼,段码液晶屏驱动IC该如何选择就由液晶屏生产厂家来给你详细介绍。 段码液晶屏驱动流程以下
2021-08-02 16:12:351933

使用51单片机实现12864液晶屏Proteus仿真的详细资料说明

本文档的主要内容详细介绍的是使用51单片机实现12864液晶屏Proteus仿真的详细资料说明。
2021-04-01 17:21:0028

LCD点阵与段码液晶屏之间有什么不同

厂家了解。 1.点阵液晶屏是按照一定规则排列起来的列阵,常见的有图形点阵液晶模组。点阵液晶屏由很多个显示点组成的,如12864点阵液晶屏,就是横有128个点,竖有64个点,一共就有128*64个点组成的。通过控制这些点来显示想要看到的文字和画面。跟段
2021-03-09 14:23:044345

COG工艺的LCD12864点阵液晶屏有哪些优缺点

LCD12864点阵液晶屏是一款常规,是一款被广泛应用的LCD液晶显示屏。目前市面上12864液晶屏大多采用COG工艺制作。那么现在的COG工艺与之前的COB工艺有什么哪些方面的优缺点,今天液晶屏厂家为你简单介绍
2020-11-09 08:00:0017

AM12864点阵液晶屏的C语言测试程序

本文档的主要内容详细介绍的是AM12864点阵液晶屏的C语言测试程序
2020-09-06 10:53:11806

段码液晶屏驱动IC该如何选择及段码液晶屏驱动步骤

段码液晶屏因其简单快捷的显示方式,灵活的反应速度,不需要人为的长时间的操作而受到广大用户的使用。那么,段码液晶屏驱动IC该如何选择就由液晶屏厂家来为你介绍。 段码液晶屏驱动步骤如下: 1:LCD
2020-08-07 09:09:013244

1286液晶屏LCD的使用C语言和芯片数据手册与电路图等资料说明

本文档的主要内容详细介绍的是1286液晶屏LCD的使用C语言和芯片数据手册与电路图等资料说明包括了:12864C语言程序12864不带字库汇编程序液晶屏电路图,点阵字符型液晶显示模块使用手册,ST7920的数据手册,TS12864A-3汉字库。
2020-07-17 08:00:006

关于COG工艺的12864液晶屏优缺点的分析

液晶屏厂家来为你解答。 LCD12864是一种图形点阵液晶显示屏,它主要由行驱动器/列驱动器及12864 全点阵液晶显示器组成。可完成图形显示,也可以显示84 个(1616 点阵)汉字或者显示164个(816 点阵)ASCII码。分为带字库的和不带字库两种。不带字库的LCD需要自己提供字库字
2020-07-13 08:48:105817

COG工艺的12864液晶屏有什么优缺点

LCD12864液晶屏是比较常规的一款液晶屏,也是运用比较多的一款,近几年大部分老的12864液晶屏都换成了COG工艺,那具体COG工艺的12864点阵液晶屏相比较之前的COB工艺有哪些优缺点,今天液晶屏厂家来为你解答。
2020-07-13 08:00:009

12864液晶模块通用的满足条件是什么

在日常LCD液晶屏选型时经常有人会咨询到12864液晶模块,因为这是常规液晶屏就会有人问12864液晶屏是不是可以通用?这里由液晶屏厂家来简单说明。 理论上来说12864液晶模块是可以通用的,但是
2020-07-06 08:59:461017

lcd12864液晶屏花屏常见的处理方法

lcd12864液晶屏在使用过程中会遇到花屏的现象,那么大家是否了解lcd12864液晶屏花屏常见的处理方法都有哪些吗?下面小编详细为大家介绍:
2020-06-26 16:36:007148

点阵液晶屏和段码液晶屏的区别

规则排列起来的列阵。常见的有图行点阵液晶模组。点阵液晶屏是由很多的显示点组成的。例如我们常见的12864点阵液晶,就是由横列128个点,数列64个点,一共是128*64个点组成的。就是通过控制这些点来显示想要达到的画面和文字的,和段码液晶
2020-05-25 15:49:387240

无字库PG12864液晶屏模块的威廉希尔官方网站 资料免费下载

本文档的主要内容详细介绍的是无字库PG12864液晶屏模块的威廉希尔官方网站 资料免费下载。
2020-05-21 08:00:0041

点阵液晶屏和段码液晶屏到底有什么区别

点阵液晶屏,是按照一定规则排列起来的列阵。常见的有图行点阵液晶模组。点阵液晶屏是由很多的显示点组成的。例如我们常见的12864点阵液晶,就是由横列128个点,数列64个点,一共是128*64个点组成的。就是通过控制这些点来显示想要达到的画面和文字的,和段码液晶相比可以随意控制点阵,显示的内容和画面多
2020-04-28 08:00:0019

12864液晶屏的资料合集免费下载

本文档的主要内容详细介绍的是12864液晶屏的资料合集免费下载。
2020-04-01 08:00:0014

黑白液晶屏12864系列单色液晶屏 LCM液晶模块可用于微机保护装置、手持设备、高铁车厢、检测仪表等等工业设

黑白液晶屏12864系列单色液晶屏LCM液晶模块 12864液晶简介: 常用的黑白液晶12864液晶模块有黄绿背光(黄绿)、蓝色背光(蓝屏)、FSTN(白底黑字),有带中文字库的/不带中文字
2020-03-30 10:07:581280

12864 LED液晶屏数据手册免费下载

本文档的主要内容详细介绍的是12864 LED液晶屏数据手册免费下载。
2019-10-11 08:00:008

LCD1602液晶显示屏的基础驱动程序免费下载

本文档的主要内容详细介绍的是LCD1602液晶显示屏的基础驱动程序免费下载。
2019-08-16 17:32:0016

使用MSP430单片机驱动诺基亚5110液晶屏的完整程序免费下载

本文档的主要内容详细介绍的是使用MSP430单片机驱动诺基亚5110液晶屏的完整程序免费下载。
2019-08-07 17:33:006

12864 LCD液晶屏简单的源代码免费下载

本文档的主要内容详细介绍的是12864 LCD液晶屏简单的源代码免费下载。
2019-07-08 08:00:0013

LCD12864液晶屏的应用实验资料合集免费下载

本文档的主要内容详细介绍的是LCD12864液晶屏的应用实验资料合集免费下载包括了:刷屏程序,取字模软件和文字取模软件的使用说明,显示图片程序资料,显示文字程序12864数据手册,12864转接原理图,ST7565p数据手册
2019-06-05 08:00:0018

按键液晶屏的C语言程序免费下载

本文档的主要内容详细介绍的是按键液晶屏的C语言程序免费下载。
2019-04-25 17:39:292

使用12864液晶屏读取DS18B20的序列码详细资料和程序免费下载

本文档的主要内容详细介绍的是使用12864液晶屏读取DS18B20数字温度传感器的序列码详细资料和程序免费下载。
2018-11-13 08:00:0011

液晶屏驱动板的原理是什么?维修代换方法有哪些?

液晶屏驱动板常被称为 A/D(模拟/数字)板,这从某种意义上反应出驱动板实现的主要功能所在。液晶屏要显示图像需要数字化过的视频信号,液晶屏驱动板正是完成从模拟信号到数字信号(或者从一种数字信号到另外一种数字信号)转换的功能模块,并同时在图像控制单元的控制下去驱动液晶屏显示图像。
2018-07-20 08:00:0021

段码液晶屏如何选择驱动IC

本文首先介绍了段码液晶屏是如何选择驱动IC及LCD段码是怎么驱动的,其次介绍了HT1621液晶显示驱动IC的工作原理,最后介绍了HT1621液晶显示驱动程序
2018-04-11 11:01:5925516

乐华液晶屏驱动板卡烧录程序大全

乐华液晶屏驱动板卡烧录程序大全
2018-01-19 10:38:3620

1602_2004_12864液晶屏参考资料下载

1602_2004_12864液晶屏参考资料
2017-12-22 15:57:5113

12864演示及代码程序

12864液晶是一种统称,只说明类的一个特征,对于液晶屏的特性则没有说明。12864是128*64点阵液晶模块的点阵数简称。
2017-09-11 17:22:0620

实测12864显示+中文字库+带背光12864-5V+S+串口

实测12864显示 串口并口液晶屏 串口程序
2017-08-02 08:35:089

12864液晶屏幕使用说明及程序

12864液晶屏幕使用说明及程序
2017-04-27 09:04:0399

12864驱动程序

LCD12864驱动程序和显示原理
2017-04-16 12:54:1518

液晶屏的分类和液晶屏的优缺点

液晶屏的分类和液晶屏的优缺点
2017-03-24 14:23:3928

3.5寸TFT液晶屏资料

3.5寸TFT液晶屏资料 3.5寸TFT液晶屏资料 3.5寸TFT液晶屏资料 3.5寸TFT液晶屏资料
2016-07-26 10:26:39170

J12864中文液晶使用说明

J12864液晶屏使用说明书J12864中文液晶使用说明
2016-05-11 14:33:0221

单片机驱动控制TFT真彩色液晶屏控制程序

另一种TFT液晶屏控制程序参考应用测试等。
2016-05-06 16:09:2063

F28335DSP 12864LCD液晶屏例程

这是基于TMS320F28335的LCD12864液晶屏程序液晶屏串口接法,注意液晶屏电压3.3伏。
2016-04-28 15:35:1374

ATMEGA32驱动12864lcd液晶屏显示

ATMEGA32驱动12864lcd液晶屏显示的原理图和驱动代码。
2016-03-28 17:25:094

基于单片机的液晶屏12864带字库_A液晶显示【汇编+C语言】

基于单片机的液晶屏12864带字库_A 液晶显示【汇编+C语言】,多种集合,符合同时爱好C语言+汇编的学习者的胃口。
2015-12-31 10:15:4517

基于单片机的液晶屏12864-LCD液晶显示【C语言+汇编】

基于单片机的液晶屏12864-LCD液晶显示【C语言+汇编】,多种集合,符合同时爱好C语言+汇编的学习者的胃口。
2015-12-31 10:15:3846

基于单片机的液晶屏LCD12864不带字库_液晶显示【汇编】

基于单片机的液晶屏12864不带字库 液晶显示【汇编】
2015-12-30 14:08:3121

基于单片机的液晶屏12864带字库_C液晶显示【C语言】

基于单片机的液晶屏12864带字库_C 液晶显示【C语言】
2015-12-30 14:08:0958

基于单片机的液晶屏12864带字库_A液晶显示【汇编】

基于单片机的液晶屏12864带字库_A 液晶显示【汇编】
2015-12-30 14:08:029

如何判断液晶屏问题 液晶屏坏的典型症状

如何判断液晶屏问题 液晶屏坏的典型症状
2013-09-06 15:09:36107

LCD12864直接写驱动程序

LCD12864直接写驱动程序12864LCD直接写,省去显示缓冲区,-LCD12864 written directly screen drivers, 12864LCD written directly screen, eliminating display buffer。
2011-03-12 17:29:10526

液晶屏,液晶屏的种类,液晶屏的原理

液晶屏,液晶屏的种类,液晶屏的原理   一个液晶显示器的好坏首先要看它的面板,因为面板的好坏直接影响到画面的观看效果,并
2010-03-27 13:25:1020707

液晶屏如何选?关于液晶屏的“道”与“谋”

液晶屏如何选?关于液晶屏的“道”与“谋”   现在,一进卖场,就能看到“日本原装液晶面板”、“硬,摸一下”、“超
2010-02-11 12:08:01448

基于WINCE&ARM9的液晶屏驱动设计

本文简单介绍了WINCE 系统下显示驱动的特点,并以液晶屏之间的接口为例,通过Platform Builder 实现PD064 液晶屏的显示驱动。关键词: WINCE ;PD064 真彩液晶屏;显示驱动随着
2009-08-27 09:55:2359

ACM-12864汉字液晶显示驱动程序

ACM-12864汉字液晶显示驱动程序 sbit p_csa=P2^6;sbit p_csb=P2^7;sbit p_gnda=P2^5;sbit p_gndb=P2^4;sbit p_di=P2^3;sbit p_rw=P2^2;sbit p_e=P2^1;
2009-08-10 09:22:05744

DID液晶屏的特点

DID液晶屏的特点 1、 高亮度 与TV和PC液晶屏相比,DID液晶屏拥有更高的亮度。TV或PC液晶屏的亮度一般只有250~300cd/m2,而DID液晶屏的亮度可以
2009-05-09 08:47:28933

嵌入式Linux下的液晶显示屏驱动程序的开发

基于Linux 操作系统驱动程序的一般编写方法,详细地分析了目前广泛使用的液晶显示屏驱动程序的编写方法。
2009-04-24 10:36:3652

1602液晶驱动程序(基于VHDL)

1602液晶驱动程序(基于VHDL)
2008-10-08 12:31:39189

st7920驱动程序,st7920 12864液晶c51驱动

st7920串行,st7920并行,st7920汉字液晶驱动程序.
2008-09-07 22:37:03629

液晶屏知识点培训

液晶屏知识点液晶屏分辨率等,液晶屏接口
1970-01-01 08:00:0040

已全部加载完成