已阅读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中国药妆店模式创新与跨国品牌本土化竞争报告
- 2026广东佛山市顺德区京师励耘实验学校赴广州面向毕业生招聘教师2人考试笔试备考题库及答案解析
- 药学职业生涯规划教案
- 有趣的生物专业知识讲座省公共课全国赛课获奖教案
- 一年级科学上册二学科学的“好帮手”我的五个好帮手新人教版教案
- 春五年级音乐下册迷人的火塘人音版教案(2025-2026学年)
- 春四年级数学下册认识三角形教案新版西师大版(2025-2026学年)
- 八年级生物下册食物链和食物网新版济南版教案(2025-2026学年)
- 《资治通鉴》教案及导学案设计
- 天津市广通信息技术工程股份有限公司(所属公司)招聘笔试题库2025
- 坚果油冷榨提取设备创新创业项目商业计划书
- 食品废料回收合同范本
- 2024年湖南省常规选调生考试真题
- 客户信息管理标准流程手册
- 中国移动ai面试题库及答案
- 公安基础知识考试模拟题库
- 学堂在线 不朽的艺术:走进大师与经典 章节测试答案
- 2025公需课《人工智能赋能制造业高质量发展》试题及答案
- 【MOOC】研究生英语科技论文写作-北京科技大学 中国大学慕课MOOC答案
- TCALC 003-2023 手术室患者人文关怀管理规范
评论
0/150
提交评论