51单片机电子秤(HX711模块 + LCD1602)

您所在的位置:网站首页 电子秤怎样调秤克数 51单片机电子秤(HX711模块 + LCD1602)

51单片机电子秤(HX711模块 + LCD1602)

2024-06-29 13:23| 来源: 网络整理| 查看: 265

51单片机电子秤(HX711模块 + LCD1602)

(简单易懂)

1.---------------序 2.HX711测重模块 3.LCD1602显示模块 4.电子秤整体实现原理 5.模块升级>>去皮与还原 6.源代码

零.先来一个效果展示 在这里插入图片描述 这里可以看到3个20g砝码加上去显示60g的重量 5个20g砝码加上去显示100g的重量,精度是比较准的 在这里插入图片描述 在这里插入图片描述

一.首先考虑如何把这样一个项目设计出来

1.明确目标 –做这样一个东西,我们需要实现怎样的效果– 2.思路清晰 –整个执行过程我门需要设计哪些事– –整个执行过程我们要按照怎样的一个逻辑– 3.确保执行 –有效(花时间并不等于有效)的执行力是成功所必不可缺的– 4.总结收获 –在实现项目过程中我们学到了什么– –以后应对不同的项目有哪些想法是可以通用的–

二.HX711测重模块原理

1.HX711模块可以看成由三个部分组成>>压力传感器,电压放大器,ad转换芯片

压力传感器:感知物体重力,并转化为电压信号 这里是0~5kg压力传感器,灵敏电压为1mv, 即1kg重力产生1mv电压 电压放大器:由于压力传感器产生电压太小,需要对电压信号放大 这里用的是128倍电压增益 ad转换芯片(24位):将模拟信号(放大后的电压值)转化为数字信号(ad值)

2.ad值转化为重力大小

假设重力为x kg, ad = (x/5)*128*2^24*(5/5000),(满量程为5kg,128倍放大,精度为2^24) (传感器满偏电压5mv,单片机为5v) ad = 429496.7296x >> x = ad/429496.7296 (按g显示再乘1000即可) //ad转化为重力大小公式,(float)将整除转化为小数运算,再将运算结果强制转化为无符号整型数值 Weight_Shiwu = (unsigned int)((float)Weight_Shiwu/423.15); //理论上是除以429.5,实际上存在误差(传感器曲线以及电压的微小误差),需要根据显示情况来调整这一数值

3.HX711时序图 & ad取值代码

在这里插入图片描述

sbit HX711_DOUT = P2^1; //声明P2^1口接HX711数据线 sbit HX711_SCK = P2^0; //声明P2^0口接HX711时钟线 unsigned long HX711_Read(void) { unsigned long count; //存ad值 unsigned char i; HX711_DOUT = 1; //数据端口拉高,参照时序图写 _nop_(); //延时 _nop_(); HX711_SCK = 0; //时钟端口拉低 count = 0; //ad值初始化 for(i=0; i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3