已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
哈 尔 滨 理 工 大 学 荣 成 学 院单片机课程设计题目:基于液晶12864的显示器 班级: 姓名: 学号: 1 题目简介1.1概述随着单片机和显示技术的发展,加上人们不满足单片机系统采用LED数码管的简单显示,利用单片机控制液晶显示成为当前显示系统的主流。12864液晶显示器可以显示字母、数字符号、中文字型及自定图形显示,只要一个最小的微处理系统,将液晶显示模块的接口作为I/O设备直接与之连接,就可以进行控制液晶显示器和数据传输,从而达到理想的显示效果。通过按键可实现单片机对液晶显示汉字的控制。1.2课程设计题目要求要求:1 通过单片机控制12864液晶显示 2 按键显示:专业,班级,姓名,学号。2 实现方案2.1 89C51单片机简介一个8位CPU; 一个片内振荡器及时钟电路; 128字节RAM数据存储器; 4K字节ROM程序存储器; 可寻址64K外部数据存储器和64K外部程序存储器空间的控制电路; 4个8位并行I/O端口; 一个全双工异步串行口; 2个16位定时器/计数器; 具有5个中断源,2个优先级. 2.2 LCD12864简介带字库的12864液晶显示模块概述JM12864M-2汉字图形点阵液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。主要技术参数和显示特性:电源:VDD 3.3V+5V(内置升压电路,无需负压);显示内容:128列 64行显示颜色:黄绿显示角度:6:00钟直视LCD类型:STN与MCU接口:8位或4位并行/3位串行配置LED背光多种软件功能:光标显示、画面移位、自定义字符、睡眠模式等。模块引脚说明引脚号引脚名称方向功能说明1VSS-模块的电源地2VDD-模块的电源正端3V0-LCD驱动电压输入端4RS(CS)H/L并行的指令/数据选择信号;串行的片选信号5R/W(SID)H/L并行的读写选择信号;串行的数据口6E(CLK)H/L并行的使能信号;串行的同步时钟7DB0H/L数据08DB1H/L数据19DB2H/L数据210DB3H/L数据311DB4H/L数据412DB5H/L数据513DB6H/L数据614DB7H/L数据715PSBH/L并/串行接口选择:H-并行;L-串行16NC空脚17/RETH/L复位 低电平有效18NC空脚19LED_A(LED+5V)背光源正极20LED_K(LED-OV)背光源负极接口时序8位并行连接时序图MPU写资料到模块MPU从模块读出资料汉字显示坐标 X坐标Line180H81H82H83H84H85H86H87HLine290H91H92H93H94H95H96H97HLine388H89H8AH8BH8CH8DH8EH8FHLine498H99H9AH9BH9CH9DH9EH9FH3 电路原理图系统的总体框图和电路与原理图整个系统主要由STC89C51芯片、LCD12864液晶和矩阵键盘构成,具体如下图1所示:LCD12864D0-D7RSRWENPSBSTC89C51P0口P3口P2.2P2.1P2.0P2.3按键图1.系统整体框图4 程序流程图开始89C51初始化12864初始化检测12864忙状态是向12864写命令向12864写数据检测是否有键按下否延时去抖检测是否有键按下否判断键,显示相应字5 软件设计源程序#include reg51.h#include intrins.h#define uchar unsigned char#define uint unsigned int#define LCD_data P0 /数据口sbit LCD_RS = P22; /寄存器选择输入 sbit LCD_RW = P21; /液晶读/写控制sbit LCD_EN = P20; /液晶使能控制sbit LCD_PSB = P23; /串/并方式控制sbit key1=P34; sbit key2=P35; sbit key3=P36;sbit key4=P37; sbit wela = P26;sbit dula = P27;uchar code dis1 = 电气工程及自动化;uchar code dis2 = 14-7班;uchar code dis3 = 李平;uchar code dis4 = 1430070710;uchar code dis5 = 电气工程及自动化;uchar code dis6 = 14-7班;uchar code dis7 = 李清鹏;uchar code dis8 = 1430070711;uchar code dis9 = 电气工程及自动化;uchar code dis10 = 14-7班;uchar code dis11 = 李翔然;uchar code dis12 = 1430070712;uchar code dis13 = 电气工程及自动化;uchar code dis14 = 14-7班;uchar code dis15 = 李兴宇;uchar code dis16 = 1430070713;void lcd_pos(uchar X,uchar Y); /确定显示位置void lcd_wstr(uchar str);void keyscan();uchar num; void delayms(uchar n)uchar i; while(n-) for(i=0;i113;i+); void delayus() _nop_();void lcd_busy() bit busy=1; /bit强制转换成位while(busy) LCD_RS = 0; /命令寄存器 LCD_RW = 1; /读操作 LCD_EN = 1; busy=(bit)(P00x80);delayus(); LCD_EN = 0; /由高电平变成低电平,液晶模块执行命令void lcd_wcmd(uchar cmd) lcd_busy(); LCD_RS = 0; /命令寄存器 LCD_RW = 0; /写操作LCD_EN = 1;P0 = cmd;delayus(); LCD_EN = 0; void lcd_wdat(uchar dat) lcd_busy(); LCD_RS = 1; /数据寄存器 LCD_RW = 0; /写操作LCD_EN = 1; P0 = dat;delayus(); LCD_EN = 0; void lcd_init() LCD_PSB = 1; /并口方式(并/串行接口选择:1-并行,0-串行) lcd_wcmd(0x34); /扩充指令操作 delayms(5); lcd_wcmd(0x30); /基本指令操作 delayms(5); lcd_wcmd(0x0C); /开显示,关光标 delayms(5); lcd_wcmd(0x01); /清除LCD的显示内容 delayms(5);void main() delayms(10); /延时 wela=0;dula=0; lcd_init(); /初始化LCD while(1) keyscan();void lcd_pos(uchar X,uchar Y) uchar pos; if (X=0) X=0x80; else if (X=1) X=0x90; else if (X=2) X=0x88; else if (X=3) X=0x98; pos = X+Y ; lcd_wcmd(pos); /显示地址void lcd_wstr(uchar str)uchar num=0;while(strnum) lcd_wdat(strnum+); delayms(1);void keyscan() if(key1=0) delayms(10); if(key1=0) lcd_pos(0,0); /设置显示位置为第一行的第1个字符 lcd_wstr(dis1); /显示字符 lcd_pos(1,0); /设置显示位置为第二行的第1个字符 lcd_wstr(dis2); /显示字符 lcd_pos(2,0); /设置显示位置为第三行的第1个字符 lcd_wstr(dis3); /显示字符 lcd_pos(3,0); /设置显示位置为第四行的第1个字符 lcd_wstr(dis4); /显示字符delayms(500); if(key2=0) delayms(10); if(key2=0) lcd_pos(0,0); /设置显示位置为第一行的第1个字符 lcd_wstr(dis5); /显示字符 lcd_pos(1,0); /设置显示位置为第二行的第1个字符 lcd_wstr(dis6); /显示字符 lcd_pos(2,0); /设置显示位置为第三行的第1个字符 lcd_wstr(dis7); /显示字符 lcd_pos(3,0); /设置显示位置为第四行的第1个字符 lcd_wstr(dis8); /显示字符delayms(500); if(key3=0) delayms(10); if(key3=0) lcd_pos(0,0); /设置显示位置为第一行的第1个字符 lcd_wstr(dis9); /显示字符 lcd_pos(1,0); /设置显示位置为第二行的第1个字符 lcd_wstr(dis10); /显示字符 lcd_pos(2,0); /设置显示位置为第三行的第1个字符 lcd_wstr(dis11); /显示字符 lcd_pos(3,0); /设置显示位置为第四行的第1个字符 lcd_wstr(dis12); /显示字符delayms(500); if(key4=0) delayms(10); if(key4=0) lcd_pos(0,0); /设置显示位置为第一行的第1个字符 lcd_wstr(dis13); /显示字符 lcd_pos(1,0); /设置显示位置为第二行的第1个字符 lcd_wstr(dis14); /显示字符 lcd_pos(2,0); /设置显示位置为第三行的第1个字符 lcd_wstr(dis15); /显示字符 lcd_pos(3,0); /设置显示位置为第四行的第1个字符 lcd_wstr(d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 排球装备搭配直播创新创业项目商业计划书
- 复古螺旋桨飞机仿真模型创新创业项目商业计划书
- 《低碳经济循环经济与加快经济发展方式转变》试题及考答案
- (2025年)药房药店员工入职及岗前培训考试试题含答案
- 2025年未成年人社区矫正学校合作机制考核试卷
- 2024年铜仁市中医医院招聘专业技术人员真题
- 人教版语文二年级上册《葡萄沟》教案简案
- 2024年黔西南州望谟县招聘公费师范毕业生和“优师计划”毕业生真题
- 2025年玉树州辅警招聘考试题库及答案详解一套
- 2025年贵港辅警协警招聘考试备考题库及1套完整答案详解
- 天津市广通信息技术工程股份有限公司(所属公司)招聘笔试题库2025
- 坚果油冷榨提取设备创新创业项目商业计划书
- 食品废料回收合同范本
- 2024年湖南省常规选调生考试真题
- 客户信息管理标准流程手册
- 泌尿结石健康宣教
- 2025年甘肃龙泰实业有限责任公司招聘工作人员笔试考试备考题库及答案解析
- 夜间施工方案及安全措施
- 战时金融科技应用-洞察与解读
- 儿童多指畸形手术方法
- 2025及未来5年中国联想喷墨打印机墨盒市场调查、数据监测研究报告
评论
0/150
提交评论