云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 基于单片机的称重控制系统设计 - 图文

基于单片机的称重控制系统设计 - 图文

  • 62 次阅读
  • 3 次下载
  • 2025/5/6 14:22:23

基于单片机的称重控制系统设计

图4-1程序结构图

程序大体上分为两部分,即万年历和称重系统,两种模式通过A键来切换,具体的程序流

程图如图4.2。

20

基于单片机的称重控制系统设计

去皮

Y C键 N 设置单价 N 正常走时 B键 Y 校时 A键是否按下 N Y 进入称重模式 进入万年历模式 开始 各个模块初始化

获取数据 显示数据 图4-2程序流程图

4.3各个模块程序设计说明

4.3.1 键盘扫描程序

矩阵键盘扫描程序是在“jianpan.c”源文件中实现的。程序扫描的方法是先给某一行置低

电平,然后对每一列进行完整扫描,列扫描完成后在变化另一行,同样进行列扫描,直至每一行都被扫描过,键盘也就完成了一次扫描,总共有16个按键,也就是说需要做16次判断,如果有键被按下,则返回其键值。由于系统没有设计硬件消抖电路,因此需要在程序中加入软件消抖,具体的实现方法是加入适当的延时,以消除按键抖动造成的电平跳变,从而增加按键稳定性。详细程序请参考附录部分相关内容。 4.3.2 A/D转换程序设计

HX711有两条串口通讯线分别是数据线DOUT和时钟线PD_SCK,利用者两个引脚可以输出数据和选择输入通道以及增益。当DOUT为高电平时,说明明A/D转换器未就绪,需要等待,串口时钟输入信端PD_SCK此时应该为低电平。DOUT从高电平变低电平后,说明A/D转换已经就绪,此时如果PD_SCK输入了25到27个的时钟脉冲。其中第一个时钟脉冲的上升沿将读出输

21

基于单片机的称重控制系统设计

出的24位数据的最高位,一直到第24个时钟脉冲完成,24位数据就完成了输出输。剩下的第25到第27个时钟脉冲是用来设定下一次A/D转换的数据输入通道以及增益调节的。A/D转换器的输入通道或增益任意一个参数发生改变时,都需要至少经过4个数据输出周期输出的数据才能稳定,也就是说4个数据输出周期后DOUT才会变为低电平,开始输出有效数据。详细设置参见表4-1。

表4-1 HX711增益选择

从HX711读出的24位二进制数还需要经过换算才能转换为最终的实际重量。具体换算方法

为:传感器电源为固定的4.3V,传感器灵敏度为1mv/v,经过A/D的128倍放大后的满量程电压(重物为5kg时)的表达式为:

4.3v*1mv/V*128 = 550.4mV (4.1) 同时A/D的参考电压也是4.3V,所以,不难得出满量程最终输出的二进制数为: 550.4mV*224/4.3V ≈ 2147483 (4.2) 根据传感器的线性特征,可以得到,当输出二进制数为 n时,对应的实际质量x为: x≈n/ 4.30g 4.3.3LCD显示程序设计

12864的程序设计采用并行显示方式的,具体的端口定义见图4-3:

图4-3 12864端口定义

液晶初始化完成后,先显示屏幕上一些固定的信息,然后再显示从传感器或芯片上读出的

数据。考虑到要显示的信息比较多,12864有限的屏幕不能一次性地把所有内容显示完全,经测试滚动显示的效果也不理想,因此设计把信息分成了两屏来显示,具体实现方法是通过键盘

22

基于单片机的称重控制系统设计

上的“A”键来切换,对应的两种模式分别为万年历和电子秤,这样就完美地解决了12864单次显示内容少的问题。 4.3.4 报警模块程序设计

报警模块的程序非常简单,根据硬件电路的设计,只要当读取的传感器的数据超过了设定值,

此时只要将连接蜂鸣器和LED的I/O口置为低电平,蜂鸣器和LED就会产生报警信号,经过测试连续的蜂鸣器报警声太过尖锐,会引起使用者的不适,因此后期程序经过了改进,在程序中加入了稍许的延时,实现了间歇性的报警声,效果较之以前有很大提高。 4.3.5 时钟模块程序设计

时钟模块程序设计的难点是时间的调整,部分,根据设计的要求,需要由键盘直接输入时

间的数值,再将调整后的时间值写入DS1302的对应的时间寄存器中,还要同步把调整后的时间显示在12864液晶屏上。时钟模块程序的流程图如图4-4

开始

DS1302初始化 按键B是否被按下 NO YES 进入时间调整状态 时钟芯片正常走时模式

读取内部寄存器中时间的数据转换后显示在12864屏幕上 图4-4时钟模块程序流程图

4.3.6温度模块程序设计

温度模块的主函数中先调用DS18B20的初始化函数即“init_DS18B20( )”,然后再在大

循环中调用DS18B20的温度获取函数。由于本系统只有一个DS18B20温度传感器因此可以跳过读序号列号的操作,直接读取温度寄存器。DS18B20的温度分高分为两个字节存放在两个寄存

23

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

基于单片机的称重控制系统设计 图4-1程序结构图 程序大体上分为两部分,即万年历和称重系统,两种模式通过A键来切换,具体的程序流程图如图4.2。 20 基于单片机的称重控制系统设计 去皮 Y C键 N 设置单价 N 正常走时 B键 Y 校时 A键是否按下 N Y 进入称重模式 进入万年历模式 开始 各个模块初始化 获取数据 显示数据 图4-2程序流程图 4.3各个模块程序设计说明 4.3.1 键盘扫描程序 矩阵键盘扫描程序是在“jianpan.c

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com