- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
目 录
1 题目 1
2 电路原理图的设计 1
2.1 传送带产品计数器设计的电路原理图 1
2.2 LCD显示模块 2
2.3 计数模块 2
2.4 键盘模块 2
3 软件系统设计 3
3.1 软件系统的流程结构 3
3.2 LCD显示程序模块 3
3.3 计数程序模块 3
4 仿真及调试 4
5 总论 5
参 考 文 献 6
致 谢 7
题目
2 电路原理图的设计
2.1 传送带产品计数器设计的电路原理图
2.2 LCD显示模块[11]
2.3计数模块
2.4 键盘模块
3 软件系统设计
3.1 软件系统的流程结构
3.2 LCD显示程序模块
/*-----------------------------------------------------------
文件名:lcd1602.h头文件
功能:LCD1602驱动函数的声明
-----------------------------------------------------------*/
#ifndef _LCD1602_H_
#define _LCD1602_H_
#include reg52.h
#define uint unsigned int
#define uchar unsigned char
//接口定义
sbit LcdRs = P2^0;
sbit LcdRw = P2^1;
sbit LcdEn = P2^2;
sfr DBPort = 0x80; //P0口为LCD数据总线
/*-----------------------------------------------------------
功能:LCD初始化函数
-----------------------------------------------------------*/
void LCD_Initial();
/*-----------------------------------------------------------
功能:LCD显示字符(ASIIC码)函数
参数:x-列0~15;y-行0~1;str-要显示的字符串指针
-----------------------------------------------------------*/
void LCD_Prints(uchar x, uchar y,uchar *str);#endif
/*-----------------------------------------------------------
文件名:lcd1602.c
函数功能:LCD1602的驱动函数
原理:采用普通IO口方式模拟LCD1602时序,未采用总线方式
-----------------------------------------------------------*/
#include REG52.H
#include intrins.h //次头文件中定义有_nop_()函数
#include lcd1602.h
/*-----------------------------------------------------------
功能:内部等待函数
返回参数:P0数据
-----------------------------------------------------------*/
uchar LCD_Wait(void)
{LcdRs=0;
LcdRw=1; _nop_();
LcdEn=1; _nop_();
//while(DBPort0x80);
/* 在用Proteus仿真时,屏蔽此语句,否则会进入死循环,
实际硬件操作时打开此语句.*/
LcdEn=0;
return DBPort;}
/*-----------------------------------------------------------
功能:写LCD命令/数据 函数
参数:style为写命令/数据,0-命令,1-数据;input为写入的8位命令/数据
-----------------------------------------------------------*/
#define LCD_COMMAND 0 // 命令
#define LCD_DATA 1 // 数据
#define LCD_CLEAR_SCREEN 0x01 // 清屏
#d
文档评论(0)