




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
12864A 图形LCD显示函数模块/*/ GLCD.C:12864A128X64dotsGraphicTypeSTNdotmatrixLCDModuleSubroutine/*/#defineLcdDataPortPioPortB#defineLcdCtrlPortPioPortC/*BitAddressAssignment*/#defineLcdRegPin0x01/*bit0oftheport*/#defineLcdRWPin0x02/*bit1oftheport*/#defineLcdEnablePin0x04/*bit2oftheport*/#defineLcdCS1Pin0x08/*bit3oftheport*/#defineLcdCS2Pin0x10/*bit4oftheport*/#defineLcdELPin0x20/*bit5oftheport*/*forLcdSystem*/unsignedcharlcd_row,lcd_column;unsignedcharlcd_hrow,lcd_hcolumn,lcd_ascii;unsignedcharlcd_x;bitlcd_color;charTranDec4;codecharBit_table=0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80;codecharHex_table=0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F;codecharChar_Bit6=0x00,0x00,0x00,0x00,0x00,0x00,/*/0x00,0x00,0x4F,0x00,0x00,0x00,/*!*/0x00,0x04,0x03,0x04,0x03,0x00,/*/0x14,0x7F,0x14,0x7F,0x14,0x00,/*#*/0x24,0x2A,0x7F,0x2A,0x12,0x00,/*$*/0x23,0x13,0x08,0x64,0x62,0x00,/*%*/0x36,0x49,0x56,0x20,0x58,0x00,/*&*/0x00,0x00,0x05,0x03,0x00,0x00,/*/0x00,0x1C,0x22,0x41,0x00,0x00,/*(*/0x00,0x41,0x22,0x1C,0x00,0x00,/*)*/0x22,0x14,0x7F,0x14,0x22,0x00,/*/0x08,0x08,0x3E,0x08,0x08,0x00,/*+*/0x00,0x00,0x28,0x18,0x00,0x00,/*,*/0x08,0x08,0x08,0x08,0x08,0x00,/*-*/0x00,0x00,0x60,0x60,0x00,0x00,/*.*/0x20,0x10,0x08,0x04,0x02,0x00,/*/*/0x3e,0x51,0x49,0x45,0x3e,0x00,/*0*/0x00,0x42,0x7f,0x40,0x00,0x00,/*1*/0x42,0x61,0x51,0x49,0x46,0x00,/*2*/0x21,0x41,0x45,0x4B,0x31,0x00,/*3*/0x18,0x14,0x12,0x7F,0x10,0x00,/*4*/0x27,0x45,0x45,0x45,0x39,0x00,/*5*/0x3C,0x4A,0x49,0x49,0x30,0x00,/*6*/0x01,0x01,0x71,0x0D,0x03,0x00,/*7*/0x36,0x49,0x49,0x49,0x36,0x00,/*8*/0x06,0x49,0x49,0x29,0x1E,0x00,/*9*/0x00,0x00,0x36,0x36,0x00,0x00,/*:*/0x00,0x00,0x56,0x36,0x00,0x00,/*;*/0x00,0x08,0x14,0x22,0x41,0x00,/*/0x02,0x01,0x51,0x09,0x06,0x00,/*?*/0x3E,0x41,0x5D,0x55,0x3E,0x00,/*/0x7C,0x12,0x11,0x12,0x7C,0x00,/*A*/0x7F,0x49,0x49,0x49,0x36,0x00,/*B*/0x3E,0x41,0x41,0x41,0x22,0x00,/*C*/0x7F,0x41,0x41,0x22,0x1C,0x00,/*D*/0x7F,0x49,0x49,0x49,0x41,0x00,/*E*/0x7F,0x09,0x09,0x09,0x01,0x00,/*F*/0x3E,0x41,0x49,0x49,0x7A,0x00,/*G*/0x7F,0x08,0x08,0x08,0x7F,0x00,/*H*/0x00,0x41,0x7f,0x41,0x00,0x00,/*I*/0x20,0x40,0x41,0x3F,0x01,0x00,/*J*/0x7F,0x08,0x14,0x22,0x41,0x00,/*K*/0x7F,0x40,0x40,0x40,0x40,0x00,/*L*/0x7F,0x02,0x0C,0x02,0x7F,0x00,/*M*/0x7F,0x04,0x08,0x10,0x7F,0x00,/*N*/0x3E,0x41,0x41,0x41,0x3E,0x00,/*O*/0x7F,0x09,0x09,0x09,0x06,0x00,/*P*/0x3E,0x41,0x51,0x21,0x5E,0x00,/*Q*/0x7F,0x09,0x19,0x29,0x46,0x00,/*R*/0x26,0x49,0x49,0x49,0x32,0x00,/*S*/0x01,0x01,0x7f,0x01,0x01,0x00,/*T*/0x3F,0x40,0x40,0x40,0x3F,0x00,/*U*/0x1F,0x20,0x40,0x20,0x1F,0x00,/*V*/0x3F,0x40,0x38,0x40,0x3F,0x00,/*W*/0x63,0x14,0x08,0x14,0x63,0x00,/*X*/0x03,0x04,0x78,0x04,0x03,0x00,/*Y*/0x61,0x51,0x49,0x45,0x43,0x00,/*Z*/0x00,0x7F,0x41,0x41,0x00,0x00,/*/0x02,0x04,0x08,0x10,0x20,0x00,/*/0x00,0x41,0x41,0x7F,0x00,0x00,/*/0x10,0x08,0x04,0x08,0x10,0x00,/*/0x40,0x40,0x40,0x40,0x40,0x00;/*_*/*汉字点阵*/codeHchar_Bit32=0x00,0x08,0x24,0xa2,0xff,0xa1,0x20,0x00,0x40,0x5e,0x52,0xd2,0x52,0x5e,0x40,0x00,0x00,0x04,0x02,0x01,0x1f,0x01,0x02,0x00,0x12,0x12,0x12,0x1f,0x12,0x12,0x12,0x00,0x00,0x00,0xfb,0x04,0x54,0x54,0x54,0x57,0xff,0x54,0x54,0x54,0xf2,0x44,0x44,0x00,0x00,0x00,0xff,0x00,0x79,0x29,0x29,0x29,0x2f,0x29,0x29,0x29,0x79,0x00,0x00,0x00,0x00,0xf0,0x00,0xfe,0x20,0x10,0x48,0x48,0x48,0xff,0x48,0x48,0x48,0x48,0x08,0x00,0x00,0x40,0x38,0x07,0x04,0x08,0x12,0x02,0x02,0x7f,0x02,0x02,0x22,0x22,0x1e,0x00,0x00,0x40,0x20,0x98,0x8e,0x8a,0x88,0x88,0xf8,0x88,0x88,0x88,0x88,0x08,0x00,0x00,0x00,0x08,0x08,0x0f,0x08,0x08,0x08,0x08,0xff,0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x00,0x10,0x08,0x84,0x42,0x20,0x00,0x40,0x44,0x44,0x44,0x44,0xc4,0x44,0x44,0x40,0x00,0x02,0x01,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0xc0,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x7f,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x84,0x84,0xfc,0x84,0x84,0xf0,0x00,0xfe,0x00,0x00,0x84,0xfc,0x84,0x84,0x04,0x00,0x20,0x30,0x1f,0x10,0x10,0x61,0x10,0x0f,0x20,0x20,0x20,0x3f,0x20,0x20,0x20,0x00,0x02,0x02,0x02,0x02,0x02,0x02,0xfe,0x12,0x22,0x42,0x82,0x02,0x02,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x42,0xcc,0x00,0x00,0x00,0xfe,0x22,0x22,0x22,0x22,0x22,0x7e,0x00,0x00,0x00,0x20,0x10,0x1f,0x10,0x24,0x22,0x21,0x20,0x20,0x21,0x22,0x24,0x28,0x20,0x00,0x00,0x62,0x52,0x4a,0xc6,0x42,0x52,0x62,0x80,0x00,0xfc,0x00,0x00,0xff,0x00,0x00,0x00,0x22,0x12,0x12,0x1f,0x12,0x12,0x12,0x00,0x00,0x07,0x20,0x20,0x3f,0x00,0x00;voidLcdDelay(void);/*延时*/voidLcdDelay()datachari;for(i=0;i10;i+);voidLcdBacklight(bit);/*背光*/voidLcdBacklight(biton)if(on)LcdCtrlPort=LcdCtrlPort|LcdELPin;elseLcdCtrlPort=LcdCtrlPort&(LcdELPin0xff);voidLcdCmd(char);/*LCD命令*/voidLcdCmd(charc)PioCon=0x0c|0x02|0x00;/*InputOutputPortA=0x000x01PortB=0x000x02PortC=0x000x0cCounter=Disable*/LcdDataPort=c;LcdCtrlPort=LcdCtrlPort&(LcdRegPin0xff);LcdCtrlPort=LcdCtrlPort&(LcdRWPin0xff);LcdCtrlPort=LcdCtrlPort|LcdCS1Pin;LcdCtrlPort=LcdCtrlPort|LcdCS2Pin;LcdCtrlPort=LcdCtrlPort|LcdEnablePin;LcdDelay();LcdCtrlPort=LcdCtrlPort&(LcdEnablePin0xff);LcdDelay();voidLcdData(char);/*赋LCD数据*/voidLcdData(charc)PioCon=0x0c|0x02|0x00;/*InputOutputPortA=0x000x01PortB=0x000x02PortC=0x000x0cCounter=Disable*/LcdDataPort=c;LcdCtrlPort=LcdCtrlPort|LcdRegPin;LcdCtrlPort=LcdCtrlPort&(LcdRWPin0xff);LcdCtrlPort=LcdCtrlPort|LcdCS1Pin;LcdCtrlPort=LcdCtrlPort|LcdCS2Pin;LcdCtrlPort=LcdCtrlPort|LcdEnablePin;LcdDelay();LcdCtrlPort=LcdCtrlPort&(LcdEnablePin0xff);LcdDelay();voidLcdData1(char);/*Phototypeofroutine*/voidLcdData1(charc)PioCon=0x0c|0x02|0x00;/*InputOutputPortA=0x000x01PortB=0x000x02PortC=0x000x0cCounter=Disable*/LcdDataPort=c;LcdCtrlPort=LcdCtrlPort|LcdRegPin;LcdCtrlPort=LcdCtrlPort&(LcdRWPin0xff);LcdCtrlPort=LcdCtrlPort|LcdCS1Pin;LcdCtrlPort=LcdCtrlPort&(LcdCS2Pin0xff);LcdCtrlPort=LcdCtrlPort|LcdEnablePin;LcdDelay();LcdCtrlPort=LcdCtrlPort&(LcdEnablePin0xff);LcdDelay();voidLcdData2(char);/*Phototypeofroutine*/voidLcdData2(charc)PioCon=0x0c|0x02|0x00;/*InputOutputPortA=0x000x01PortB=0x000x02PortC=0x000x0cCounter=Disable*/LcdDataPort=c;LcdCtrlPort=LcdCtrlPort|LcdRegPin;LcdCtrlPort=LcdCtrlPort&(LcdRWPin0xff);LcdCtrlPort=LcdCtrlPort&(LcdCS1Pin0xff);LcdCtrlPort=LcdCtrlPort|LcdCS2Pin;LcdCtrlPort=LcdCtrlPort|LcdEnablePin;LcdDelay();LcdCtrlPort=LcdCtrlPort&(LcdEnablePin0xff);LcdDelay();charLcdRead1(void);/*Phototypeofroutine*/charLcdRead1()dataunsignedcharc;PioCon=0x0c|0x00|0x00;/*InputOutputPortA=0x000x01PortB=0x000x02PortC=0x000x0cCounter=Disable*/LcdCtrlPort=LcdCtrlPort|LcdRegPin;LcdCtrlPort=LcdCtrlPort|LcdRWPin;LcdCtrlPort=LcdCtrlPort|LcdCS1Pin;LcdCtrlPort=LcdCtrlPort&(LcdCS2Pin0xff);LcdCtrlPort=LcdCtrlPort|LcdEnablePin;LcdDelay();LcdCtrlPort=LcdCtrlPort&(LcdEnablePin0xff);LcdDelay();LcdCtrlPort=LcdCtrlPort|LcdEnablePin;LcdDelay();c=LcdDataPort;LcdCtrlPort=LcdCtrlPort&(LcdEnablePin0xff);LcdDelay();return(c);charLcdRead2(void);/*Phototypeofroutine*/charLcdRead2()dataunsignedcharc;PioCon=0x0c|0x00|0x00;/*InputOutputPortA=0x000x01PortB=0x000x02PortC=0x000x0cCounter=Disable*/LcdCtrlPort=LcdCtrlPort|LcdRegPin;LcdCtrlPort=LcdCtrlPort|LcdRWPin;LcdCtrlPort=LcdCtrlPort&(LcdCS1Pin0xff);LcdCtrlPort=LcdCtrlPort|LcdCS2Pin;LcdCtrlPort=LcdCtrlPort|LcdEnablePin;LcdDelay();LcdCtrlPort=LcdCtrlPort&(LcdEnablePin0xff);LcdDelay();LcdCtrlPort=LcdCtrlPort|LcdEnablePin;LcdDelay();c=LcdDataPort;LcdCtrlPort=LcdCtrlPort&(LcdEnablePin0xff);LcdDelay();return(c);voidLcdInit(void);/*LCD初始化*/voidLcdInit()datachari,j;LcdCmd(0x3f);/*Displayon/off,0x3f=on,0x3e=off*/LcdCmd(0xc0);/*ScanStart(0-63),0xc0to0xff*/for(i=0;i8;i+)/*Fillthescreentoblank*/LcdCmd(0xb8|i);/*XPage(0-7),0xb8to0xbf*/for(j=0;j64;j+)LcdCmd(0x40|j);/*YLine(0-63),0x40to0x7f*/LcdData(0x00);/*AccesstotwoLCDarea*/lcd_row=1;lcd_column=1;lcd_color=1;voidLcdClear(void);/*LCD清屏*/voidLcdClear()LcdInit();voidLcdGoto(char,char);/*定位光标坐标*/voidLcdGoto(charrow,charcolumn)lcd_row=row;lcd_column=column;voidLcdHgoto(char,char);/*定位汉字显示坐标voidLcdHgoto(charrow,charcolumn)lcd_hrow=row;lcd_hcolumn=column;lcd_ascii=column;voidLcdChar(char);/*Phototypeofroutine*/voidLcdChar(charc)dataunsignedcharloop;lcd_x=(lcd_column-1)*6;LcdCmd(0xb8|(lcd_row-1)&0x07);/*XPage(0-7),0xb8to0xbf*/for(loop=0;loop63)if(lcd_color)LcdData2(Char_Bitc-0x20loop);elseLcdData2(Char_Bitc-0x20loop0xff);elseif(lcd_color)LcdData1(Char_Bitc-0x20loop);elseLcdData1(Char_Bitc-0x20loop0xff);lcd_column+;if(lcd_column21)lcd_column=1;lcd_row+;if(lcd_row8)lcd_column=1;voidLcdHchar(char);/*显示汉字字符*/voidLcdHChar(charc)dataunsignedcharloop1,loop2;loop2=0;lcd_x=(lcd_hcolumn-1)*16;LcdCmd(0xb8|(lcd_hrow-1)*2)&0x07);/*XPage(0-7),0xb8to0xbf*/for(loop1=0;loop163)if(lcd_color)LcdData2(Hchar_Bitcloop1);elseLcdData2(Hchar_Bitcloop10xff);elseif(lcd_color)LcdData1(Hchar_Bitcloop1);elseLcdData1(Hchar_Bitcloop10xff);LcdCmd(0xb8|(lcd_hrow-1)*2+1)&0x07);/*XPage(0-7),0xb8to0xbf*/for(;loop163)if(lcd_color)LcdData2(Hchar_Bitcloop1);elseLcdData2(Hchar_Bitcloop10xff);elseif(lcd_color)LcdData1(Hchar_Bitcloop1);elseLcdData1(Hchar_Bitcloop10xff);loop2+;lcd_hcolumn+;if(lcd_hcolumn8)lcd_column=1;lcd_hrow+;if(lcd_hrow4)lcd_hcolumn=1;voidLcdStr(char*);/*显示ASCII码字符串*/voidLcdStr(char*c)dataunsignedchard=0;while(cd!=0)WDT=1;LcdChar(cd+);voidLcd_Ascii(char);/*显示ASCII码字符*/voidLcd_Ascii(charc)unsignedcharloop;unsignedchartempdata;unsignedcharj;j=0;lcd_x=(lcd_ascii-1)*8;LcdCmd(0xb8|(lcd_hrow-1)*2)&0x07);/*XPage(0-7),0xb8to0xbf*/for(loop=0;loop63)if(lcd_color)if(loop=0|loop=7)LcdData2(0x00);elsetempdata=(Char_Bitc-0x20j+4)&0xf0;LcdData2(tempdata);elseif(loop=0|loop=7)LcdData2(0x00);elsetempdata=(Char_Bitc-0x20j+4)&0xf0;LcdData2(tempdata);elseif(lcd_color)if(loop=0|loop=7)LcdData1(0x00);elsetempdata=(Char_Bitc-0x20j+4)&0xf0;LcdData1(tempdata);elseif(loop=0|loop=7)LcdData1(0x00);elsetempdata=(Char_Bitc-0x20j+4)&0xf0;LcdData1(tempdata);LcdCmd(0xb8|(lcd_hrow-1)*2+1)&0x07);/*XPage(0-7),0xb8to0xbf*/j=0;for(loop=0;loop63)if(lcd_color)if(loop=0|loop=7)LcdData2(0x00);elsetempdata=(Char_Bitc-0x20j+4)&0x0f;LcdData2(tempdata);elseif(loop=0|loop=7)LcdData2(0x00);elsetempdata=(Char_Bitc-0x20j+4)&0x0f;LcdData2(tempdata);elseif(lcd_color)if(loop=0|loop=7)LcdData1(0x00);elsetempdata=(Char_Bitc-0x20j+4)&0x0f;LcdData1(tempdata);elseif(loop=0|l
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- HCy-Lyso-生命科学试剂-MCE
- 2025年甘肃省大数据中心招聘工作人员考前自测高频考点模拟试题完整参考答案详解
- GSK-J4-Standard-生命科学试剂-MCE
- 2025年橡塑专用仪器项目合作计划书
- 2025安徽合力股份有限公司校园招聘模拟试卷附答案详解(典型题)
- 我的特别礼物写物作文7篇
- 2025年大型并网风力发电机组发电机合作协议书
- 文档管理流程及归档工具模板
- 2025广东省第二中医院招聘内分泌科医师1人考前自测高频考点模拟试题附答案详解(考试直接用)
- 员工培训与评估综合工具
- 注塑加工项目可行性研究报告
- 中医治未病课件版
- 痛风中医辨证论治课件
- 【课件】工作危害分析法(JHA)专项培训课件丨
- 2025-2030年中国礼品盒行业市场现状供需分析及投资评估规划分析研究报告
- 带储热的液态空气储能系统性能的多维度剖析与优化策略
- 水体环境完整版本
- 新北师大版四年级数学上册第二单元(线与角)课后练习题及答案1
- DB1311T 091-2025 旧水泥混凝土路面多锤头碎石化施工技术规范
- 采砂作业合同协议
- 排他协议合同协议
评论
0/150
提交评论