C51程序实现重量测量及液晶屏显示
需积分: 12 143 浏览量
更新于2024-09-07
1
收藏 7KB TXT 举报
"这篇文档是关于使用C51语言编程,通过YM12864C液晶屏显示重量测量实验板测量标准砝码重量的过程。程序设计中涉及到ADC转换来获取重量数据,并允许一定的误差范围。"
在C51编程环境中,这个程序使用了YM12864C液晶屏来显示重量测量的结果。YM12864C是一种常见的128x64点阵图形液晶模块,常用于嵌入式系统中的数据显示。为了在液晶屏上正确显示重量信息,我们需要初始化LCD的相关控制引脚,并定义相应的寄存器和位定义。
首先,程序包含了`<reg52.h>`和`<intrins.h>`头文件,这两个文件提供了51系列单片机的标准寄存器定义以及内联函数支持。接着,定义了`LCD_DATAP2`,表明液晶屏的数据线连接到了P2口。
在ADC转换部分,程序中定义了与ADC相关的SFR(特殊功能寄存器),如`PLASF`、`ADC_CONTR`、`ADC_RES`等,这些都是51单片机中进行模数转换所必需的。ADC转换的控制涉及到`ADC_POWER`、`ADC_FLAG`、`ADC_START`等位定义,这些位用来开启ADC电源、启动转换以及检查转换是否完成。`InitADC()`函数用于设置ADC的工作模式和速度,而`ADC_GET(ucharn)`则用于获取指定通道的ADC转换结果。
为了显示测量的重量,程序还定义了两个计数器变量:`mypage`表示当前显示的页面,`timecount`可能用于计时或控制显示更新。此外,还定义了两个字符数组`zhong[]`和`liang[]`,分别存储数字字符,便于在液晶屏上显示数字。
液晶屏的初始化函数`InitLcd(void)`中,设置了控制引脚如`RST`、`CS1`、`CS2`、`E`、`R_W`、`RS`以及检测忙信号的`BUSY`和背光控制的`ON`。这些引脚的设置和操作确保了与液晶屏的正确通信。
在实际应用中,测量结果可能会有误差,程序没有明确提及误差处理的具体方式,但可以推测会在读取ADC结果后进行一定的校准或滤波处理,以确保显示的重量值在允许的误差范围内。
整个程序的核心流程大致如下:
1. 初始化UART、ADC和LCD。
2. 启动ADC转换,获取标准砝码的重量数据。
3. 将重量数据转换为字符形式,并存储在字符数组中。
4. 利用LCD控制函数在液晶屏上显示重量信息。
5. 可能会有一个循环结构,周期性地更新显示或在检测到新的重量数据时更新。
这个程序实例展示了嵌入式系统中硬件接口的控制、ADC转换以及数据显示的基本方法,对于学习C51编程和重量测量系统的设计具有参考价值。
2010-12-27 上传
2009-07-28 上传
2008-04-01 上传
2008-04-04 上传
卿卿要冲鸭
- 粉丝: 1
- 资源: 3
最新资源
- Angular实现MarcHayek简历展示应用教程
- Crossbow Spot最新更新 - 获取Chrome扩展新闻
- 量子管道网络优化与Python实现
- Debian系统中APT缓存维护工具的使用方法与实践
- Python模块AccessControl的Windows64位安装文件介绍
- 掌握最新*** Fisher资讯,使用Google Chrome扩展
- Ember应用程序开发流程与环境配置指南
- EZPCOpenSDK_v5.1.2_build***版本更新详情
- Postcode-Finder:利用JavaScript和Google Geocode API实现
- AWS商业交易监控器:航线行为分析与营销策略制定
- AccessControl-4.0b6压缩包详细使用教程
- Python编程实践与技巧汇总
- 使用Sikuli和Python打造颜色求解器项目
- .Net基础视频教程:掌握GDI绘图技术
- 深入理解数据结构与JavaScript实践项目
- 双子座在线裁判系统:提高编程竞赛效率