欢迎来到第一文库网! | 帮助中心 第一文库网-每个人都是第一
第一文库网
全部分类
  • 研究报告>
  • 学术论文>
  • 全科教育>
  • 应用文档>
  • 行业资料>
  • 企业管理>
  • 技术资料>
  • 生活休闲>
  • ImageVerifierCode 换一换
    首页 第一文库网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    128x64液晶KS0108控制器驱动程序.docx

    • 资源ID:155044       资源大小:41.88KB        全文页数:17页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录 微博登录
    二维码
    扫码关注公众号登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    128x64液晶KS0108控制器驱动程序.docx

    #include"absacc.h"include"intrins.h"自定义库在"C:comp51UserLib"文件夹中include“.incASCII816.h”标准ASCII库include”.incHZTable.h"汉字点阵库(自做)#include".incMenu.h"菜单库(自做)/LCD128*64数据线#defineLCD12864DataPortPl/LCD128*64I/O信号管脚sbitdi=P3A1;/数据、指令选择sbitrw=P3八3;读、写选择sbiten=P3A2;/读、写使能sbitcsl=P3八4;片选1,低有效(前64列)sbitcs2=P3A5;/片选2,低有效(后64列)sbitreset=P0A7;/复位*/*函数歹u表*开关显示voidSetOnOfffunsignedcharonoff)选择屏幕/screen:0全屏,1左屏,2-右voidSelectScreen(unsignedcharscreen)清屏/screen:0全屏,1左屏,2-右voidClearScreen(unsignedcharscreen)显示8*8点阵旋转90度:字模被竖着切分lin:行(0-7),column:列(0-15)/address:字模区首地址voidShow88(unsignedcharlin,unsignedcharcolumn,unsignedintaddress)显示8*16字符旋转90度:字模被竖着切分lin:行(0-3),column:列(0-15)“character:字符代码(标准ASCII码)voidShowChar(unsignedcharlin,unsignedcharcolumn,unsignedcharcharacter)显示8*16字符串!只能显示在一行上即:串长+column<=15旋转90度:字模被竖着切分lin:行(0-3),column:列(0-15)/address:字模区首地址voidShowString(unsignedcharlin,unsignedcharcolumn,unsignedchar*string)显示一个汉字旋转90度:字模被竖着切分lin:行(0-3),column:列(0-15)/hzcode:汉字代码档定义的)voidShowHZ(unsignedcharlin,unsignedcharcolumn,unsignedinthzcode)显示图片旋转90度:字模被竖着切分/startline:开始行startcolumn:开始歹ijlinechar:图片行点除8(图片以8*8点阵为单位)/columnchar:图片列点除8(图片以8*8点阵为单位)/address:字模区首地址voidShowPicturefunsignedcharstartline,unsignedcharstartcolumn,unsignedcharlinechar;unsignedcharcolumncharzunsignedintaddress)!问题大户显示一行汉字lin:行/lineheadaddr:此行汉字代码区首地址voidShowLine(unsignedcharlin,unsignedintlineheadaddr)显示一屏汉字pageheadaddr:此屏汉字代码地址区首地址voidShowPage(unsignedintpageheadaddr)反显一个8*8字块lin:行(0-3),column:列(07)voidReverseShow88(unsignedcharlin,unsignedcharcolumn)反显一个字符lin:行(0-4),column:列(0-15)voidReverseShowChar(unsignedcharlin,unsignedcharcolumn)反显一个汉字lin:行(0-3),column:列(0-7)ReverseShowHZ(unsignedcharlin,unsignedcharcolumn)反显一行汉字lin:行ReverseShow(unsignedcharlin)初始化LCDvoidlnitLCD()*函数列表结束*/*/*基本函数源程序*/延时Lcdl2864delay()unsignedinti=500;while(i-);)/*/状态检查voidCheckState()(unsignedchardat;di=0;rw=l;doLCD12864DataPort=0xff;en=l;dat=LCD12864DataPort;en=0;dat=0x90&dat;仅当第4,7位为0时才可操作while(!(dat=0x00);)/*/写显示数据dat:显示数据voidWriteByte(unsignedchardat)CheckState();di=l;rw=0;LCD12864DataPort=dat;en=l;en=0;向LCD发送命令/command:命令SendCommandToLCD(unsignedcharcommand)(CheckState();rw=0;LCD12864DataPort=command;en=l;en=0;)设定行地址(页卜-X0-7voidSetLine(unsignedcharline)line=line&0x07;/0<=line<=7line=line10xb8;/1011lxxxSendCommandToLCD(line);设定列地址-Y0-63voidSetColumn(unsignedcharcolumn)column=column&0x3f;/0=<column<=63column=column|0x40;/OlxxxxxxSendCommandToLCD(column);)设定显示开始行XXvoidSetStartLine(unsignedcharstartline)/0-63startline=startline&0x07;startline=startline|0xc0;/11000000SendCommandToLCD(startline);)开关显示voidSetOnOff(unsignedcharonoff)onoff=0x3e|onoff;/0011lllxSendCommandToLCD(onoff);)选择屏幕/screen:0全屏,1左屏2右屏voidSelectScreen(unsignedcharscreen)(北京显示器:负有效csl:0-右;cs2:0-左switch(screen)case0:csl=0;全屏_nop_();_nopj);_nopj);_nop_();_nop_();_nop_();_nopj);_nop_();_nopj);_nop_();_nop_();cs2=0;_nopj);_nop_();_nopj);_nopj);_nop_();_nopj);_nopj);_nopj);_nop_();_nop_();nopj);break;case 1: csl=l;左屏_nopj);_nop_();_nopj);_nopj);_nop_();_nopj);_nopj);_nopj);_nop_();_nop_();cs2=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();break;case 2: csl=0;右屏_nop_();_nopj);_nopj);_nopj);_nop_();_nopj);_nop_();_nopj);_nop_();_nopj);cs2=l;_nop_();_nopj);_nopj);_nop_();_nop_();_nop_();_nopj);_nop_();_nopj);_nop_();break;)nop_();_nop_();_nop_();_nop_();)清屏/screen:0全屏3左屏2右voidClearScreen(unsignedcharscreen)unsignedcharij;SelectScreen(screen);for(i=0;i<8;i+)SetLine(i);for(j=0;j<64;j+)WriteByte(OxOO);)/*/显示8*8点阵旋转90度:字模被竖着切分lin:行(0-7),column:列(0-15)/address:字模区首地址voidShow88(unsignedcharlin,unsignedcharcolumn,unsignedintaddress)unsignedchari;if(column>16)return;if(column<8)SelectScreen;如果列数<8(0,1,234,5,6,7)则写在第一屏上elseSelectScreen(2);否则(8,9,10,11,12,23,14,15)写在第二屏上column=column&0x07;防止越界)SetLine(lin);SetColumn(column«3);for(i=0;i<8;i+)WriteByte(CBYTEaddress+i);)/*/显示8*16字符旋转90度:字模被竖着切分lin:行(0-3),column:列(0-15)“character:字符代码(标准ASCII码)voidShowChar(unsignedcharlin,unsignedcharcolumn,unsignedcharcharacter)Show88(lin,column,ASCII816character-0x20);Show88(lin+1,column,ASCII816character-0x20+8);)/*/*显示8*16字符串!只能显示在一行上即:串长+column<=15旋转90度:字模被竖着切分lin:行(0-3),column:列(0-15)/address:字模区首地址voidShowString(unsignedcharlin,unsignedcharcolumn,unsignedchar*string)unsignedcharch;unsignedchari=0;while(*string!='O')(ch=*string;if(i+column>15)break;(只能显示在一行上即:串长+columnv=15)ShowChar(lin,i+column,c

    注意事项

    本文(128x64液晶KS0108控制器驱动程序.docx)为本站会员(lao****ou)主动上传,第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知第一文库网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 001doc.com网站版权所有   

    经营许可证编号:宁ICP备2022001085号

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



    收起
    展开