找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5797|回复: 4
打印 上一主题 下一主题
收起左侧

hx711重力传感器arduino例程 1Kg 5Kg 10Kg 20Kg

[复制链接]
跳转到指定楼层
楼主
ID:420039 发表于 2018-11-3 10:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题,重力传感器hx711代码

  1. #include "HX711.h"
  2. float Weight = 0;

  3. void setup()
  4. {
  5.         Init_Hx711();                                //初始化HX711模块连接的IO设置

  6.         Serial.begin(9600);
  7.         Serial.print("Welcome to use!\n");

  8.         delay(3000);
  9.         Get_Maopi();                //获取毛皮
  10. }

  11. void loop()
  12. {
  13.         Weight = Get_Weight();        //计算放在传感器上的重物重量
  14.         Serial.print(float(Weight/1000),3);        //串口显示重量
  15.         Serial.print(" kg\n");        //显示单位
  16.         Serial.print("\n");                //显示单位
  17.         delay(1000);                                //延时1s

  18. }
复制代码
  1. #include "hx711.h"

  2. long HX711_Buffer = 0;
  3. long Weight_Maopi = 0,Weight_Shiwu = 0;

  4. #define GapValue 215//10kg

  5. //****************************************************
  6. //初始化HX711
  7. //****************************************************
  8. void Init_Hx711()
  9. {
  10.         pinMode(HX711_SCK, OUTPUT);       
  11.         pinMode(HX711_DT, INPUT);
  12. }


  13. //****************************************************
  14. //获取毛皮重量
  15. //****************************************************
  16. void Get_Maopi()
  17. {
  18.         Weight_Maopi = HX711_Read();               
  19. }

  20. //****************************************************
  21. //称重
  22. //****************************************************
  23. long Get_Weight()
  24. {
  25.         HX711_Buffer = HX711_Read();
  26.         Weight_Shiwu = HX711_Buffer;
  27.         Weight_Shiwu = Weight_Shiwu - Weight_Maopi;                                //获取实物的AD采样数值。
  28.         Weight_Shiwu = (long)((float)Weight_Shiwu/GapValue);        
  29.         return Weight_Shiwu;
  30. }

  31. //****************************************************
  32. //读取HX711
  33. //****************************************************
  34. unsigned long HX711_Read(void)        //增益128
  35. {
  36.         unsigned long count;
  37.         unsigned char i;
  38.         bool Flag = 0;

  39.         digitalWrite(HX711_DT, HIGH);
  40.         delayMicroseconds(1);

  41.         digitalWrite(HX711_SCK, LOW);
  42.         delayMicroseconds(1);

  43.           count=0;
  44.           while(digitalRead(HX711_DT));
  45.           for(i=0;i<24;i++)
  46.         {
  47.                   digitalWrite(HX711_SCK, HIGH);
  48.                 delayMicroseconds(1);
  49.                   count=count<<1;
  50.                 digitalWrite(HX711_SCK, LOW);
  51.                 delayMicroseconds(1);
  52.                   if(digitalRead(HX711_DT))
  53.                         count++;
  54.         }
  55.         digitalWrite(HX711_SCK, HIGH);
  56.         count ^= 0x800000;
  57.         delayMicroseconds(1);
  58.         digitalWrite(HX711_SCK, LOW);
  59.         delayMicroseconds(1);
  60.        
  61.         return(count);
  62. }
复制代码



HX711_1Kg.rar

1.3 KB, 下载次数: 32, 下载积分: 黑币 -5

HX711_5Kg.rar

1.3 KB, 下载次数: 32, 下载积分: 黑币 -5

HX711_10Kg.rar

1.31 KB, 下载次数: 24, 下载积分: 黑币 -5

HX711_20Kg.rar

1.31 KB, 下载次数: 39, 下载积分: 黑币 -5

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏3 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:437882 发表于 2019-1-3 15:14 | 只看该作者
你好,为什么我下载了1Kg的试用后,数据一直是0kg?给压力也没变化
回复

使用道具 举报

板凳
ID:833646 发表于 2020-10-23 21:33 | 只看该作者
你好  我的称重是负值是什么问题啊
回复

使用道具 举报

地板
ID:255258 发表于 2020-10-24 13:09 | 只看该作者
可能是传感器方向接反了
回复

使用道具 举报

5#
ID:714430 发表于 2021-1-31 21:38 | 只看该作者
10千克的为什么下不了,还有这个文件是您写的吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表