基于proteus的不带字库的12864的仿真程序(带仿真图).doc
《基于proteus的不带字库的12864的仿真程序(带仿真图).doc》由会员分享,可在线阅读,更多相关《基于proteus的不带字库的12864的仿真程序(带仿真图).doc(12页珍藏版)》请在冰豆网上搜索。
![基于proteus的不带字库的12864的仿真程序(带仿真图).doc](https://file1.bdocx.com/fileroot1/2022-10/19/0fb3542a-bf78-411a-9904-683c85ab3eef/0fb3542a-bf78-411a-9904-683c85ab3eef1.gif)
基于proteus的不带字库的12864的仿真程序(带仿真图)
作者:
心如止水(武汉工程大学)
/************************************************************
本程序为不带字库的12864汉字及英文字符的显示程序,
可以说此程序是所有12864显示程序中最简单最易懂的
显示程序。
之所以写这个程序,是因为我看很多学单片
机的人(特别是初学者)对12864有一种恐惧感,觉得它
很难,看完这个程序,相信你能明白它的显示原理。
还要注意的是:
带中文字库和不带中文字库的程序不一样,
不可混用。
************************************************************/
先上图吧,哈哈
下面看程序吧,相信你一定能看懂,很简单的哟!
!
!
#include
#defineucharunsignedchar
#defineuintunsignedint
//sbitdatabus=P1;
#definedatabusP1
//sbitReset=P3^0;//复位
sbitrs=P3^7;//指令数据选择
sbite=P3^5;//指令数据控制
sbitcs1=P3^3;//左屏幕选择,低电平有效
sbitcs2=P3^4;//右屏幕选择
sbitwr=P3^6;//读写控制
//sbitbusy=P1^7;//忙标志
voidSendCommand(ucharcommand);//写指令
voidWriteData(uchardat);//写数据
voidLcdDelay(uinttime);//延时
voidSetOnOff(ucharonoff);//开关显示
voidClearScreen(ucharscreen);//清屏
voidSetLine(ucharline);//置页地址
voidSetColum(ucharcolum);//置列地址
voidSetStartLine(ucharstartline);//置显示起始行
voidSelectScreen(ucharscreen);//选择屏幕
voidShow1616(ucharlin,ucharcolum,uchar*address);//显示一个汉字
voidInitLcd();//初始化
voidResetLcd();//复位
voidShow_english(ucharlin,ucharcolum,uchar*address);
constucharcodehzk[]={
/*--文字:
I--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x00,0x08,0x08,0xF8,0x08,0x08,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,
/*--文字:
--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*--文字:
c--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x00,0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x0E,0x11,0x20,0x20,0x20,0x11,0x00,
/*--文字:
a--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x19,0x24,0x22,0x22,0x22,0x3F,0x20,
/*--文字:
n--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x3F,0x21,0x00,0x00,0x20,0x3F,0x20,
/*--文字:
--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*--文字:
m--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x20,0x3F,0x20,0x00,0x3F,0x20,0x00,0x3F,
/*--文字:
a--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x19,0x24,0x22,0x22,0x22,0x3F,0x20,
/*--文字:
k--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x08,0xF8,0x00,0x00,0x80,0x80,0x80,0x00,0x20,0x3F,0x24,0x02,0x2D,0x30,0x20,0x00,
/*--文字:
e--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x22,0x22,0x22,0x22,0x13,0x00,
/*--文字:
--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*--文字:
i--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x00,0x80,0x98,0x98,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,
/*--文字:
t--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=8x16--*/
0x00,0x80,0x80,0xE0,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x1F,0x20,0x20,0x00,0x00,
/*--文字:
!
--*/
/*--宋体12;此字体下对应的点阵为:
宽x高=16x16--*/
0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x5F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*--文字:
我--*/
/*--楷体_GB231212;此字体下对应的点阵为:
宽x高=16x16--*/
0x00,0x00,0x80,0x90,0xF0,0x48,0x40,0x7F,0xC0,0x20,0x24,0xA8,0x00,0x00,0x00,0x00,
0x08,0x08,0x04,0x14,0x3F,0x02,0x09,0x08,0x05,0x06,0x09,0x10,0x20,0x78,0x00,0x00,
/*--文字:
的--*/
/*--楷体_GB231212;此字体下对应的点阵为:
宽x高=16x16--*/
0x00,0xC0,0x60,0x50,0x2C,0xE0,0x80,0x40,0xA0,0x38,0x26,0x10,0xF0,0x00,0x00,0x00,
0x00,0x07,0x19,0x09,0x08,0x1F,0x00,0x00,0x00,0x03,0x10,0x20,0x1F,0x00,0x00,0x00,
/*--文字:
未--*/
/*--楷体_GB231212;此字体下对应的点阵为:
宽x高=16x16--*/
0x00,0x00,0x80,0x80,0x90,0x90,0xFF,0xC8,0x48,0x48,0x40,0x40,0x00,0x00,0x00,0x00,
0x10,0x10,0x08,0x04,0x02,0x01,0x7F,0x00,0x01,0x02,0x04,0x08,0x18,0x10,0x10,0x00,
/*--文字:
来--*/
/*--楷体_GB231212;此字体下对应的点阵为:
宽x高=16x16--*/
0x00,0x80,0x80,0xA8,0xC8,0x88,0xFF,0x84,0x64,0x54,0x40,0x40,0x00,0x00,0x00,0x00,
0x00,0x10,0x10,0x08,0x04,0x02,0x7F,0x01,0x02,0x04,0x0C,0x08,0x08,0x08,0x08,0x00,
/*--文字:
不--*/
/*--楷体_GB231212;此字体下对应的点阵为:
宽x高=16x16--*/
0x00,0x00,0x08,0x08,0x08,0x88,0x48,0xE4,0x14,0x8C,0x84,0x04,0x04,0x04,0x00,0x00,
0x00,0x04,0x04,0x02,0x01,0x00,0x00,0x3F,0x00,0x00,0x00,0x01,0x03,0x06,0x00,0x00,
/*--文字:
是--*/
/*--楷体_GB231212;此字体下对应的点阵为:
宽x高=16x16--*/
0x00,0x00,0x80,0x80,0x82,0x9E,0xAA,0xAA,0xA1,0x5D,0x43,0x40,0x00,0x00,0x00,0x00,
0x20,0x20,0x10,0x08,0x06,0x04,0x08,0x1F,0x12,0x22,0x22,0x20,0x20,0x20,0x20,0x00,
/*--文字:
梦--*/
/*--楷体_GB231212;此字体下对应的点阵为:
宽x高=16x16--*/
0x00,0x90,0x50,0x30,0xFE,0x28,0x48,0x28,0x18,0xFF,0x14,0x24,0x24,0x40,0x40,0x00,
0x00,0x00,0x40,0x48,0x44,0x26,0x2B,0x12,0x0A,0x06,0x00,0x00,0x00,0x00,0x00,0x00,
/*--文字