欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    16x2字符型带背光液晶显示模块20页word文档.docx

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

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

    16x2字符型带背光液晶显示模块20页word文档.docx

    1、16x2字符型带背光液晶显示模块20页word文档16x2字符型带背光液晶显示模块液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。 这里介绍的字符型液晶模块是一种用5x7点阵图形来显示字符的液晶显示器,根据显示的容量可以分为1行16个字、2行16个字、2行20个字等等,这里以常用的2行16个字的1602液晶模块来介绍它的编程方法。标准型16X2带背光液晶显示字符模块,邮购价格26元一个外形尺寸:PCB外形:36.4*80毫米 液晶屏金属黑框:34.2*72毫米1602采用标准的16脚接口,其中:第1脚:VSS为地电源第2脚:V

    2、DD接5V正电源第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。 第1516脚:空脚1602液晶模块内部的字符发

    3、生存储器(CGROM)已经存储了160个不同的点阵字符图形,如表1所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A” 1602液晶模块内部的控制器共有11条控制指令,如表2所示,它的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平) 指令1:清显示,指令码01H,光标复位到地址00H位置指令2:光标复位,光标返回到地址00H 指令3:光标和显示模式设置 I/D:光标移动方向,高

    4、电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效 指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁 指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符 (有些模块是 DL:高电平时为8位总线,低电平时为4位总线)指令7:字

    5、符发生器RAM地址设置 指令8:DDRAM地址设置 指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。 指令10:写数据 指令11:读数据 DM-162液晶显示模块可以和单片机AT89C51直接接口,电路如图1所示。 液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,表3是DM-162的内部显示地址.比如第二行第一个字符的地址是40H,那么是否直接写入40H就可以将光标定位在第二行第一个字符的位置呢?这样不行,

    6、因为写入显示地址时要求最高位D7恒定为高电平1所以实际写入的数据应该是01000000B(40H)+10000000B(80H)=11000000B(C0H) -直接输入80H+*H即可以下是在液晶模块的第二行第一个字符的位置显示字母“A”的程序: ORG 0000H RS EQU P3.7;确定具体硬件的连接方式 RW EQU P3.6 ;确定具体硬件的连接方式E EQU P3.5 ;确定具体硬件的连接方式MOV P1,#00000001B ;清屏并光标复位ACALL ENABLE;调用写入命令子程序 MOV P1,#00111000B ;设置显示模式:8位2行5x7点阵 ACALL ENA

    7、BLE ;调用写入命令子程序 MOV P1,#00001111B ;显示器开、光标开、光标允许闪烁ACALL ENABLE ;调用写入命令子程序MOV P1,#00000110B ;文字不动,光标自动右移 ACALL ENABLE ;调用写入命令子程序MOV P1,#0C0H ;写入显示起始地址(第二行第一个位置)ACALL ENABLE ;调用写入命令子程序MOV P1,01000001B ;字母A的代码 SETB RS ;RS=1 CLR RW ;RW=0 ;准备写入数据CLR E ;E=0 ;执行显示命令ACALL DELAY ;判断液晶模块是否忙?SETB E ;E=1 ;显示完成,程

    8、序停车AJMP $ENABLE: CLR RS ;写入控制命令的子程序CLR RW CLR E ACALL DELAY SETB E RET DELAY: MOV P1,#0FFH ;判断液晶显示器是否忙的子程序CLR RS SETB RWCLR E NOP SETB E JB P1.7,DELAY ;如果P1.7为高电平表示忙就循环等待 RETEND 程序在开始时对液晶模块功能进行了初始化设置,约定了显示格式。注意显示字符时光标是自动右移的,无需人工干预,每次输入指令都先调用判断液晶模块是否忙的子程序DELAY,然后输入显示位置的地址0C0H,最后输入要显示的字符A的代码41H。TO:无聊的

    9、键盘,1602LCD的C程序/*/ */ FileName : 实验板1602lcd.c ICCAVR V6.31A编译 */ Function : 1602字符型LCD的显示 (8位数据方式) */ Date : 2006-12-11 */ Version : 1.0 */ */ Author : 开关电源 hongtusy163 */ Company : 电子信息技术咨询网 http:/itsn */ */*描述与记事*/实验板的AVR程序,驱动1602LCM(可显示2行,每行16个字符)模块显示实验练习。/说明:RS高显示/低指令输入 RW高读/低写 EN高读数据/下降沿写数据/具体电路

    10、可参照使用指南里的说明。每个字符为57或58的点阵,共162个字符。/使用器件:ATMEGA8535,可更换。 使用默认的片内RC振荡器,1MHz。/接线定义:PD4,5,6 为RS,R/W,EA。数据位为PC口。/使用的开关:SW2-1,2,3.SW1-1,2,3,4,5,6,7,8.SW2-5为背光开关。 SW3-8为系统复位端。/记事:/*#include /头文件,ATmega8535单片机的寄存器定义#include macros.h /可以使用NOP()以及SEI()等指令.typedef unsigned char uchar; /宏typedef unsigned int ui

    11、nt;/*函 数 名: DelaymS()功 能: 毫秒级延时函数输入参数: 延迟时间/系统晶体输出参数: 做相应的延迟处理描 述: /*/void DelaymS (uint i) /延时函数,参数i为延时时间 uint j,k; /双重延时for (j=0;ji;j+) for (k=0;k=50;k+);/*函 数 名: init_mcu()功 能: 单片机初始化函数输入参数: /输出参数: /描 述: 相关口方向的设置等*/void init_mcu(void)DDRC = 0xff; /PC口为推挽1输出,数据位DDRD = 0xff; /PD口为推挽1输出,控制信号/* 子程序名:

    12、 write_data() 功 能: 写入一字节数据 输入参数: / 输出参数: / 描 述: /*/void wtite_data(uchar h) PORTC = h; /先将数据送出 PORTD |= (1PD4); /RS=1,数据 PORTD &= (1PD5); /R/W=0,写 PORTD &= (1PD6); /EN=0 ,使能,产生一个下降沿。 DelaymS (1); PORTD |= (1PD6); /EN=1 ,除能/* 子程序名: write_code() 功 能: 写入一字节指令/地址 输入参数: / 输出参数: / 描 述: /*/void wtite_code(

    13、uchar h) PORTC = h; /先将地址送出 PORTD &= (1PD4); /RS=0,命令或数据 PORTD &= (1PD5); /R/W=0,写 PORTD &= (1PD6); /EN=0 ,使能,产生一个下降沿。 DelaymS (1); PORTD |= (1PD6); /EN=1 ,除能/* 子程序名: init_lcd() 功 能: 初始化LCD 输入参数: / 输出参数: / 描 述: /*/void init_lcd(void) wtite_code(0x01); /清除屏幕 wtite_code(0x38); /功能设定,8位数据口/2行/5*7的点阵 wt

    14、ite_code(0b00001111); /显示幕ON,光标ON,闪烁ON wtite_code(0x06); /模式,加1,显示幕ON。 wtite_code(0b00000011); /光标回到原点/* 子程序名: display_lcd() 功 能: 刷新显示一屏数据,独立的LCD显示程序,用户将显存内容更新后,只要调用此程序即可更新显示。 输入参数: / 输出参数: / 描 述: 在写一个字符前,先设定显示的位置地址,然后再写数据。系统可以自动地址加一。*/void display_lcd(uchar *p) uchar i; wtite_code(0x80); /第一行起始地址,0

    15、b10000000B0x80. for(i=0;i16;i+) wtite_data(pi); wtite_code(0xc0); /第二行起始地址,0b11000000B=0xc0. for(i=16;i32;i+) wtite_data(pi); /*主程序*void main (void) uchar i; uchar buf= welcome! itsn! ; DelaymS(100); init_mcu(); /单片机初始化 init_lcd(); /lcd初始化 display_lcd(buf); /刷新显示一屏 buf0 = i; /可以任意修改显示的内容 display_lcd

    16、(buf); /刷新显示 wtite_code (0xC0); /光标停留在0C2H位置。第1行光标位置有0x80,0x81.0x8f,第2行光标位置有0xc0,0xc1.0xcf. while(1);1602液晶显示模块C语言程序(8位) 2006-11-25 14:16:00 | By: frankle SMC1602A(16*2)模拟口线接线方式连接线图: - |LCM-51 | LCM-51 | LCM-51 | -| |DB0-P1.0 | DB4-P1.4 | RW-P2.0 | |DB1-P1.1 | DB5-P1.5 | RS-P2.1 | |DB2-P1.2 | DB6-P1

    17、.6 | E-P2.2 | |DB3-P1.3 | DB7-P1.7 | VLCD接1K电阻到GND| -注:AT89S51使用12M晶振=*/#define LCM_RW P2_0 /定义引脚#define LCM_RS P2_1#define LCM_E P2_2#define LCM_Data P1#define Busy 0x80 /用于检测LCM状态字中的Busy标识i nclude void WriteDataLCM(unsigned char WDLCM);void WriteCommandLCM(unsigned char WCLCM,BuysC);unsigned char

    18、ReadDataLCM(void);unsigned char ReadStatusLCM(void);void LCMInit(void);void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData);void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData);void Delay5Ms(void);void Delay400Ms(void);unsigned char code uctech = uc

    19、tech;unsigned char code net = uctech.icpcn;void main(void)Delay400Ms(); /启动等待,等LCM讲入工作状态LCMInit(); /LCM初始化Delay5Ms(); /延时片刻(可不要)DisplayListChar(0, 5, uctech);DisplayListChar(0, 0, net);ReadDataLCM();/测试用句无意义while(1);/写数据void WriteDataLCM(unsigned char WDLCM)ReadStatusLCM(); /检测忙LCM_Data = WDLCM;LCM_

    20、RS = 1;LCM_RW = 0;LCM_E = 0; /若晶振速度太高可以在这后加小的延时LCM_E = 0; /延时LCM_E = 1;/写指令void WriteCommandLCM(unsigned char WCLCM,BuysC) /BuysC为0时忽略忙检测if (BuysC) ReadStatusLCM(); /根据需要检测忙LCM_Data = WCLCM;LCM_RS = 0;LCM_RW = 0;LCM_E = 0;LCM_E = 0;LCM_E = 1;/读数据unsigned char ReadDataLCM(void)LCM_RS = 1;LCM_RW = 1;L

    21、CM_E = 0;LCM_E = 0;LCM_E = 1;return(LCM_Data);/读状态unsigned char ReadStatusLCM(void)LCM_Data = 0xFF;LCM_RS = 0;LCM_RW = 1;LCM_E = 0;LCM_E = 0;LCM_E = 1;while (LCM_Data & Busy); /检测忙信号return(LCM_Data);void LCMInit(void) /LCM初始化LCM_Data = 0;WriteCommandLCM(0x38,0); /三次显示模式设置,不检测忙信号Delay5Ms();WriteComma

    22、ndLCM(0x38,0);Delay5Ms();WriteCommandLCM(0x38,0);Delay5Ms();WriteCommandLCM(0x38,1); /显示模式设置,开始要求每次检测忙信号WriteCommandLCM(0x08,1); /关闭显示WriteCommandLCM(0x01,1); /显示清屏WriteCommandLCM(0x06,1); / 显示光标移动设置WriteCommandLCM(0x0C,1); / 显示开及光标设置/按指定位置显示一个字符void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData)Y &= 0x1;X &= 0xF; /限制X不能大于15,Y不能大于1if (Y) X |= 0x40; /当要显示第二行时地址码+0x40;X |= 0x80; / 算出指令码WriteCommandLCM(X, 0); /这里不检测忙信号,发送地址码WriteDataLCM(DData);/按指定位置显示一串字符void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData)unsigned char ListLen


    注意事项

    本文(16x2字符型带背光液晶显示模块20页word文档.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

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




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

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开