- 1、本文档共71页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
YangZhou Vocational college of environment and resources《单片机C语言应用技术与实践》讲课稿 主讲人: 计算机科学与技术系 陈爱文项目12 液晶显示器显示电路设计★ 知识目标 1.熟练使用单片机的定时器。 2.熟练运用字符串、数组、指针。★ 能力目标: 1.掌握LCM1602液晶模块显示西文的原理及使用方法。 2.掌握用8位数据模式及4位数据模式驱动LCM1602液晶的C语言编程方法 3.掌握用LCM1602液晶模块显示数字的C语言编程方法。 任务1 LCM1602液晶8位数据显示模式的设计 1.1 提出任务用AT89S51驱动LCM1602液晶显示器,使液晶屏在第一行显示“welcome AT89S51!,在第二行显示LCD1602test..OK。1.2 分析任务1. 单片机与LCM1602接口电路设计1.2 分析任务1. 单片机与LCM1602接口电路设计用单片机的P0口接LCM1602液晶显示器的8位数据线,P2.5接RS,P2.6接RW,P2.7接E。电路原理图如图12.1所示。图12.1 8位数据显示模式电路原理图1.2 分析任务2. 软件程序设计软件程序设计要严格按照LCM1602液晶显示器的读操作时序和写操作时序来编写。单片机所用的晶体振荡器频率不同,在编写延时程序时延时参数要作适当的修改,使之符合LCM1602的时序要求。编写程序时尽量按照模块化的编程思想进行编程。其程序流程如图12.2所示。 图12.2 8位数据显示模式显示流程图1.2 分析任务3. 参考源程序#include reg51.h#include intrins.h#define uchar unsigned char#define uint unsigned int#define DPORT P0 //数据接口sbit RW=P2^6; //读写控制选择sbit E=P2^7; //便能端sbit RS=P2^5; //数据寄存器与指令寄存器选择控制端sbit RS=P2^5; //数据寄存器与指令寄存器选择控制端uchar *s=welcome AT89S51!;uchar *s1=LCD1602test...OK ;const uchar NoDisp=0; //无显示const uchar NoCur=1; //有显示无光标const uchar CurNoFlash=2; //有光标不闪烁const uchar CurFlash=3; //有光标且闪烁1.2 分析任务3. 参考源程序/********************函数声明**************************/void LcdPos(uchar, uchar);//确定光标位置void LcdWd(uchar); //写字符void LcdWc(uchar); //送控制字(检测忙)void LcdWcn(uchar); //送控制字(不检测忙)void mDelay(uint); //延时m毫秒void WaitIdle(); //检测LCD控制器状态/*********************在指定行列显示指定字符***********///参数:xPox 光标所在列 yPos 光标所在行 c 待显示字符void WriteChar(uchar c, uchar xPos, uchar yPos){ LcdPos(xPos, yPos); LcdWd(c);}1.2 分析任务3. 参考源程序/************显示字符串********************************///参数: *s 指向待显示字符串;yPos光标所在行;xPos光标所在列void WriteString(uchar *s, uchar xPos, uchar yPos){ uchar i; if(*s==0) //遇到字符串结束 return; for(i=0;;i++) { if(*(s+i)==0) break; WriteChar(*(s+i), xPos, yPos); xPos++; if(xPos15) break; }}/***************设置光标*******************************///参数:Para 4种光标类型void SetCur(uchar Para){ mDelay(2); switch(Para) { case 0: { LcdWc(0x08); //关显示 break; } case 1: { LcdWc(
您可能关注的文档
- 项目一数字化测图相关知识概述.ppt
- 项目一构建SOHO型网络概述.ppt
- 项目一构建小型家庭办公网络.pptx
- 项目一物流成本及其管理入门.pptx
- 项目一电子称的设计与制作.pptx
- 项目一网络营销概述.pptx
- 项目一络筒工艺设计与实施.pptx
- 项目一计算器.pptx
- 项目一货物认识体验货物认知与养护.pptx
- 项目一识别与检测常用电子元器件.pptx
- 2024年度党员干部民主生活会班子对照检查材料.docx
- 公司党委领导班子2024年度民主生活会对照检查材料4个带头方面.docx
- 市府办(政府办)领导班子2024年民主生活会会后综合情况报告.docx
- 在2025年市司法局信息宣传工作推进会上的讲话.docx
- 在2025年全省文化旅游高质量发展推进会上的讲话.docx
- 在2025年全区工业、住建大规模设备更新推进会上的讲话.docx
- 党支部2024年组织生活会民主评议党员情况总结报告_1.docx
- 2024年度组织生活会个人对照检查剖析材料.docx
- 镇党委书记2024年度民主生活会对照检查材料1.docx
- 党支部2024年组织生活会民主评议党员情况总结报告.docx
文档评论(0)