如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
/*以下程序是自己在做天津市TI电设时调试的12864程序,每一部分都亲自调试过,功能都可以实现,建议使用者先花一点时间把程序看懂,不是很难。程序里有许多注释掉的函数,都是相关的一些测试函数,使用者可根据需要,解冻相关测试函数,来调试一下功能。当然,前提还是你要先熟悉一下全部的程序结构,不然很可能改动出现错误。实现功能:画点,画线(水平线、垂直线、任意指定首尾坐标的斜线、折线)、画圆,键盘控制上下左右来画任意图形,以及指定一初始点后按使用者指定的路径自动完成一副图形(譬如矩形、三角形,更复杂的可由使用者继续优化算法。)*/#include<stdio.h>#include<math.h>#include<reg52.h>#include<string.h>/******************************************************************//*定义接口信息*//******************************************************************/sbitRS=P2^4;//并行:指令(H)/数据(L)选择;串行:片选信号(CS)sbitWRD=P2^5;//并行:读写选择;串行:数据口(SID)sbitE=P2^6;//并行:使能信号;串行:时钟信号(SLK)sbitPSB=P2^1;//选择并口或者串口工作模式sbitRES=P2^3;//复位信号,低电平有效sbitkey1=P3^0;//定义按键位置sbitkey2=P3^1;sbitkey3=P3^2;sbitkey4=P3^3;/******************************************************************//*定义数组*//******************************************************************/unsignedcharcodepic2[];voidTransferData(chardata1,bitDI);voiddisplay(void);voiddelayms(unsignedintn);voiddelay(unsignedintm);/******************************************************************//*液晶初始化-图形*//******************************************************************/voidinitina2(void)//LCD显示图片(扩展)初始化程序{delay(40);//大于40mS的延时程序PSB=1;//设置为8BIT并口工作模式delay(1);//延时RES=0;//复位delay(1);//延时RES=1;//复位置高delay(10);TransferData(0x36,0);//ExtendedFunctionSetRE=1:extendedinstructiondelay(100);//大于100uS的延时程序TransferData(0x36,0);//ExtendedFunctionSet:RE=1:extendedinstructionsetdelay(37);////大于37uS的延时程序TransferData(0x3E,0);//EXFUNCTION(DL=8BITS,RE=1,G=1)delay(100);//大于100uS的延时程序TransferData(0x01,0);//CLEARSCREENdelay(100);//大于100uS的延时程序}/********************************************************************************///图形区清RAM函数/*******************************************************************************/voidLCD_ClearBMP(void){unsignedchari,j;TransferData(0x34,0);//8Bit扩充指令集,即使是36H也要写两次TransferData(0x36,0);//绘图ON,基本指令集里面36H不能开绘图for(i=0;i<32;i++)//12864实际为256