液晶显示广告牌的设计-课程设计.doc
《液晶显示广告牌的设计-课程设计.doc》由会员分享,可在线阅读,更多相关《液晶显示广告牌的设计-课程设计.doc(17页珍藏版)》请在沃文网上搜索。
1、目录1技术要求12设计方案及原理13实现方案33.1LM016L基本资料33.2硬件连接图74源程序代码85调式过程及结果145.1调式过程145.2结果146心得体会157参考文献16 液晶显示广告牌的设计1 技术要求在日常生活中,经常可见各种广告牌,本设计要求利用单片机控制液晶显示屏显示相关的信息,需完成下列任务:(1) 利用LCD显示某一条固定语句;(2) 能够通过按键对固定语句的显示方式进行修改,比如按一次按键,显示的字符少一个,一直到最后所有字符完全消失;或者按一次按键所有字符显示的位置左移一格等。2 设计方案及原理让LCD显示固定语句在C语言环境下只需将字符串直接赋给LCD即可,让
2、LCD显示的字符方式进行修改就得给LCD传递相关指令。第一步利用LCD显示某一条固定语句。LCD显示字符的时候,是一个一个字符显示,显示一个字符后, 光标加一或减一表示下一个字符显示的位置。因此显示固定语句的时候,我们可以先将固定语句存在一个字符串数组,光标操作为当写一个字符后地址指针加一。选择好初始地址后,利用一个循环结构程序将整个字符串数组内容显示出来。第二步让LCD显示的字符串显示方式进行修改。鉴于LCD自身就能将字符串以不同方式的显示出来,因此我们只需将对应指令语句传递给LCD即可,通过外部按键产生中断,让LCD来响应对应指令语句。方案流程图如图1所示。判断jishu值固定显示字符串系
3、统初始化开始中断返回变量jishu加1并对3取余按键中断产生按键中断右移左移闪烁120图1 程序流程图3 实现方案3.1 LM016L基本资料3.1.1 引脚说明LM016L为字符型液晶显示器LCD,其图形符号、引脚及属性如图2所示。引脚说明如下:数据线D7D0控制线(有3根:RS、RW、E)1根地线Vss一根电源线(VDD) 图2 LCD图形符号和引脚3.1.2 LM016L属性及RAM地址:LM016L的属性设置如下:每行的字符数为16,行数为2;时钟为250KHz;行1的字符地址为80H8FH行2的字符地址为C0HCFH 3.1.3 基本操作时序其具体时序见表1。表1 LM016L信号真
4、值表RSR/WE功能00下降沿写指令代码01高电平读忙标志和AC值10下降沿写数据11高电平读数据3.1.4 LCD指令集(1) 清屏指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB00000000001功能: 清除液晶显示器,即将DDRAM的内容全部填入“空白”的字符码20H; 光标归位,即将光标撤回液晶显示屏的左上方; 将地址计数器(AC)的值设为0。(2) 光标归位指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB0000000001*功能: 把光标撤回到显示器的左上方; 把地址计数器(AC)的值设置为0; 保持DDRAM的内容不变 (3) 输入模式指令设置RSR/
5、WDB7DB6DB5DB4DB3DB2DB1DB000000001I/DS功能:设定每次写入1位数据后光标的移位方向,并且设定每次写入的一个字符是否移动。其中:I/D=1:数据读、写操作后,AC自动增一; I/D=0:数据读、写操作后,AC自动减一; S=1:数据读、写操作,画面平移; S=0:数据读、写操作,画面不动。(4) 显示开关控制指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB00000001DCB功能:控制显示器开/关、光标显示/关闭以及光标是否闪烁。其中:D表示显示开关:D=1为开,D=0为关; C表示光标开关:C=1为开,C=0为关; B表示闪烁开关;B=1为开,B
6、=0为关。(5) 设定显示屏或光标移动方向指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB0000001S/CR/L*功能:使光标移位或使整个显示屏幕移位。其中:S/C=1:画面平移一个字符位; S/C=0:光标平移一个字符位; R/L=1:右移; R/L=0:左移。(6) 功能设定指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB000001DLNF*功能:设定数据总线位数、显示的行数及字型。其中:DL=1,8位数据接口;DL=0,4位数据接口; N=1,两行显示;N=0,一行显示; F=1,510点阵字符;F=0,57点阵字符。(7) 设定DDRAM地址指令RSR/W
7、DB7DB6DB5DB4DB3DB2DB1DB0000A6A5A4A3A2A1A0功能:设定下一个要存入数据的CGRAM的地址。(8) 读取忙信号或AC地址指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB001BFAC6AC5AC4AC3AC2AC1AC0功能: 读取忙碌信号BF的内容,BF=1表示液晶显示器忙,暂时无法接收单片机送来的数据或指令; 当BF=0时,液晶显示器可以接收单片机送来的数据或指令; 读取地址计数器(AC)的内容。(9) 数据写入DDRAM或CGRAM指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB010数据功能: 将字符码写入DDRAM,以使液晶
8、显示屏显示出相对应的字符; 将用户自己设计的图形存入CGRAM。(10) 从CGRAM或DDRAM读出数据的指令RSR/WDB7DB6DB5DB4DB3DB2DB1DB011数据功能:读取DDRAM或CGRAM中的内容。3.1.5 控制器接口时序说明3.1.5.1 读操作时序 图3 读操作时序 3.1.5.2 写操作时序 图4 写操作时序3.2 硬件连接图了解完LM016L基本资料,现在我们可以将LCD与单片机接在一起。实现方案时,将89C51单片机的P1口与LCD数据口连接起来 ,P3口接液晶控制端口及按键。具体的硬件连接图如图5所示。 图5 液晶广告牌硬件设计图4 源程序代码#includ
9、e #include /库函数头文件,代码中引用了_nop_()函数/ 定义控制信号端口sbit RS=P30; /P3.0sbit RW=P31; /P3.1sbit E= P32; /P3.2int jishu=0;/ 声明调用函数void lcd_w_cmd(unsigned char com); /写命令字函数void lcd_w_dat(unsigned char dat); /写数据函数unsigned char lcd_r_start(); /读状态函数void int1(); /LCD初始化函数void delay(unsigned char t); /可控延时函数void d
10、elay1(); /软件实现延时函数,5个机器周期void main() /主函数 unsigned char lcd=i am the best one mei bang si wei te; unsigned char lcd1=i am yu yang yi from whut; unsigned char i; EA=1; /全局中断开 EX1=1; /外部中断0开 IT1=1; /边沿触发,IT1=0表示电平触发 P1=0xff; /送全1到P0口 int1(); /初始化LCD delay(255); lcd_w_cmd(0x80); /设置显示位置 delay(255); for
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 液晶显示 广告牌 设计 课程设计