《单片机技术与应用》 课件 项目二 智能车间生产线计数系统设计与制作任务3(LCD1602显示产品数)_第1页
《单片机技术与应用》 课件 项目二 智能车间生产线计数系统设计与制作任务3(LCD1602显示产品数)_第2页
《单片机技术与应用》 课件 项目二 智能车间生产线计数系统设计与制作任务3(LCD1602显示产品数)_第3页
《单片机技术与应用》 课件 项目二 智能车间生产线计数系统设计与制作任务3(LCD1602显示产品数)_第4页
《单片机技术与应用》 课件 项目二 智能车间生产线计数系统设计与制作任务3(LCD1602显示产品数)_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

任务3显示模块设计与制作单片机技术与应用项目二智能车间生产线计数系统设计与制作任务3显示模块设计与制作三诺生物传感有限公司【基础任务要求】利用红外光电传感器检测产品进行计数,当计数值达到3时报警,用LCD液晶屏显示产品数,并且每1秒钟信号灯闪烁一次。任务3显示模块设计与制作任务实现四步骤绘制控制电路图搭接硬件电路硬件设计调试控制电路调试控制程序软硬件调试仿真运行实物运行功能实现绘制流程图编程实现功能:用LCD液晶屏显示产品数软件设计01020304重点、难点难点STC89C52单片机时钟电路复位电路电源电路指示灯电路系统框图任务3显示模块设计与制作蜂鸣器电路红外光电传感器电路显示电路任务名:显示模块设计与制作元件名称图片型号数量Proteus中的名称单片机芯片AT89C511用AT89C51代替STC89C52晶振12MHZ1CRYSTAL电容22pF2CAP电解电容22μf/16V1CAP-ELEC电阻0.1KΩ1RES电阻470Ω1RES电阻10KΩ1RES排阻1RESPACK-8滑动电阻POT发光二极管1LED-RED红外光电传感器1用按钮button代替三极管1PNP蜂鸣器1BUZZER液晶屏LCD16021LM016L元器件选型LCD1602引脚硬件电路图任务3显示模块设计与制作硬件设计-绘电路细致规范严谨小锦囊电路绘制规范:用统一规定的元件符号尽量避免导线的交叉导线要求横平竖直设置元器件参数元件放在编辑区内元器件之间要用导线连接软件设计1如何用LCD1602液晶屏显示产品数?重点、难点知识链接1.LCD1602的基本操作RSR/W操作00写命令操作(初始化、光标定位等)01读状态操作(读忙标志)10写数据操作(要显示的内容)11读数据操作(可以把显示存储区中的数据反读出来)使能端E引脚下降沿时执行操作四种操作三种常用单片机对LCD模块有四种基本操作:写命令、写数据、读状态和读数据写命令操作是指给液晶模块写入命令字,也就是指令字。读状态操作用来读入液晶模块的忙标志。写数据操作用来给液晶模块写入显示的数据。RSR/W操作00写命令操作(初始化、光标定位等)01读状态操作(读忙标志)10写数据操作(要显示的内容)11读数据操作(可以把显示存储区中的数据反读出来)四种操作三种常用一般一个独立的模块包括两个文件1)头文件,它里面定义所有液晶显示需要的预定义和函数声明;2)c程序源文件,液晶显示所需要的函数。模块化程序设计工程主函数模块main.c液晶显示模块lcd.hlcd.c定义lcd.h头文件#ifndef__LCD_H_#define__LCD_H_包含头文件#include<reg51.h>重定义关键字#ifndefuchar#defineucharunsignedchar#endif#ifndefuint

#defineuintunsignedint#endif控制端口定义#defineLCD1602_DATAPINSP0sbitLCD1602_E=P2^2;sbitLCD1602_RW=P2^1;sbitLCD1602_RS=P2^0;函数声明voidLcd1602_Delay1ms(uintc);voidLcdWriteCom(ucharcom);//写命令函数voidLcdWriteData(uchar

dat);//写数据函数voidLcdInit(); //初始化函数#endif控制接口定义#defineLCD1602_DATAPINSP0sbitLCD1602_E=P2^2;sbitLCD1602_RW=P2^1;sbitLCD1602_RS=P2^0;在写操作时,使能信号E的下降沿有效。在软件设置顺序上,先设置RS和R/W状态,再设置数据,然后产生E信号的脉冲,最后复位RS和R/W状态。lcd.c#include"lcd.h"voidLcdWriteCom(ucharcom) { LCD1602_E=0; LCD1602_RS=0; LCD1602_RW=0;

LCD1602_DATAPINS=com;

Lcd1602_Delay1ms(1); LCD1602_E=1;//写入时序

Lcd1602_Delay1ms(5); LCD1602_E=0;}voidLcd1602_Delay1ms(uintc){

uchar

a,b;for(;c>0;c--){for(b=199;b>0;b--){for(a=1;a>0;a--);}}

}写命令函数voidLcdWriteData(uchar

dat) { LCD1602_E=0; LCD1602_RS=1; LCD1602_RW=0;

LCD1602_DATAPINS=dat;

Lcd1602_Delay1ms(1); LCD1602_E=1; Lcd1602_Delay1ms(5); LCD1602_E=0;}写数据函数voidLcdInit()//LCD初始化

{

LcdWriteCom(0x38);//显示2行

LcdWriteCom(0x0c);//开显示不显示光标

LcdWriteCom(0x01);//清屏

LcdWriteCom(0x06);//写一个指针加1,光标移动设置

LcdWriteCom(0x80);//设置数据指针起点}LCD初始工作方式设置显示状态设置清屏返回输入方式设置001DLNF00DL:设置LCD的连接方式;DL=1:8位、DL=0:4位;N:设置LCD显示的行数;N=1:2行、N=0:1行F:用来设置LCD字符显示的点阵;F=1:5×10、F=0:5×7例:设置数据位数8位,2行显示,5×7点阵字符00111000

LcdWriteCom(0x38);//数据位数8位

//2行显示,5×7点阵字符化工作方式设置LCD初始工作方式设置显示状态设置清屏返回输入方式设置00001DCBD:整体显示开关,D=1,表示开显示,D=0,表示关显示C:光标开关,C=1,表示有光标显示,C=0,表示没有光标显示B:控制光标是否闪烁,B=1,光标闪烁,B=0,光标不闪烁例如:设置开显示,没有光标,光标位字符不闪烁

00001100

LcdWriteCom(0x0C);//开显示,没有光标,光标位字符不闪烁化显示状态设置试一试:写出设置开显示,有光标,光标位字符闪烁的命令字是什么呢?voidLcdInit()//LCD初始化

{

LcdWriteCom(0x38);//显示2行

LcdWriteCom(0x0c);//开显示不显示光标

LcdWriteCom(0x01);//清屏

LcdWriteCom(0x06);//写一个指针加1,光标移动设置

LcdWriteCom(0x80);//设置数据指针起点}LCD初始工作方式设置显示状态设置清屏返回输入方式设置LcdWriteCom(0x01);//LCD清屏,同时光标定位在第1行,第1列化清屏命令voidLcdInit()//LCD初始化

{

LcdWriteCom(0x38);//显示2行

LcdWriteCom(0x0c);//开显示不显示光标

LcdWriteCom(0x01);//清屏

LcdWriteCom(0x06);//写一个指针加1,光标移动设置

LcdWriteCom(0x80);//设置数据指针起点}LCD初始化工作方式设置显示状态设置清屏返回输入方式设置000001I/DSI/D:光标移动方向设置,I/D=1:增量方式右移、I/D=0:减量方式左移S:控制屏幕上所有文字是否移动,S=1:移位、S=0:不移位例如:设置光标增量方式右移,显示字符不移动

00000110

LcdWriteCom(0x06);

//光标增量方式右移,显示字符不移动输入方式设置voidLcdInit()//LCD初始化

{

LcdWriteCom(0x38);//显示2行

LcdWriteCom(0x0c);//开显示不显示光标

LcdWriteCom(0x01);

//清屏

LcdWriteCom(0x06);//写一个指针加1,光标移动设置

LcdWriteCom(0x80);//设置数据指针起点}(1)表中命令字以十六进制形式给出,该命令字就是与LCD显示位置相对应的DDRAM地址。(2)第一行和第二行的命令字是不连续的。LcdWriteCom(0x80);//光标定位在第1行第1列voidLcdInit()//LCD初始化

{

LcdWriteCom(0x38);//显示2行

LcdWriteCom(0x0c);//开显示不显示光标

LcdWriteCom(0x01);//清屏

LcdWrit

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论