找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 6133|回復(fù): 4
收起左側(cè)

電子秤HX711AD模塊資料包(V3.0)Arduino與單片機(jī)例程

[復(fù)制鏈接]
ID:390849 發(fā)表于 2018-8-28 16:24 | 顯示全部樓層 |閱讀模式
    在使用壓力傳感器制作電子秤時(shí)需要進(jìn)行模數(shù)轉(zhuǎn)換,HX711是專門用于電子秤設(shè)計(jì)的高精度AD模塊

0.png

全部資料51hei下載地址:
電子秤HX711AD模塊資料包(V3.0).rar (3.12 MB, 下載次數(shù): 95)

單片機(jī)源程序如下:
  1. #include "hx711.h"

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

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


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

  20. //****************************************************
  21. //稱重
  22. //****************************************************
  23. unsigned int Get_Weight()
  24. {
  25.         HX711_Buffer = HX711_Read();
  26.         HX711_Buffer = HX711_Buffer/100;
  27.         Serial.print(HX711_Buffer);
  28.         Serial.print("\n");
  29.         if(HX711_Buffer > Weight_Maopi)                        
  30.         {
  31.                 Weight_Shiwu = HX711_Buffer;
  32.                 Weight_Shiwu = Weight_Shiwu - Weight_Maopi;                                //獲取實(shí)物的AD采樣數(shù)值。
  33.         
  34.                 Weight_Shiwu = (unsigned int)((float)Weight_Shiwu/4.05+0.05);         
  35.                         //計(jì)算實(shí)物的實(shí)際重量
  36.                         //因?yàn)椴煌膫鞲衅魈匦郧不一樣,因此,每一個(gè)傳感器需要矯正這里的4.30這個(gè)除數(shù)。
  37.                         //當(dāng)發(fā)現(xiàn)測(cè)試出來(lái)的重量偏大時(shí),增加該數(shù)值。
  38.                         //如果測(cè)試出來(lái)的重量偏小時(shí),減小改數(shù)值。
  39.                         //該數(shù)值一般在4.0-5.0之間。因傳感器不同而定。
  40.                         //+0.05是為了四舍五入百分位
  41.         }

  42.         if(Weight_Shiwu > 5000 || HX711_Buffer < Weight_Maopi - 30)
  43.         {
  44.                 Serial.print("Error");
  45.         }
  46.         return Weight_Shiwu;
  47. }

  48. //****************************************************
  49. //讀取HX711
  50. //****************************************************
  51. unsigned long HX711_Read(void)        //增益128
  52. {
  53.         unsigned long count;
  54.         unsigned char i;
  55.         bool Flag = 0;

  56.         digitalWrite(HX711_DT, HIGH);
  57.         delayMicroseconds(1);

  58.         digitalWrite(HX711_SCK, LOW);
  59.         delayMicroseconds(1);

  60.           count=0;
  61.           while(digitalRead(HX711_DT));
  62.           for(i=0;i<24;i++)
  63.         {
  64.                   digitalWrite(HX711_SCK, HIGH);
  65.                 delayMicroseconds(1);
  66.                   count=count<<1;
  67.                 digitalWrite(HX711_SCK, LOW);
  68.                 delayMicroseconds(1);
  69.                   if(digitalRead(HX711_DT))
  70.                         count++;
  71.         }
  72.          digitalWrite(HX711_SCK, HIGH);
  73.         delayMicroseconds(1);
  74.         digitalWrite(HX711_SCK, LOW);
  75.         delayMicroseconds(1);
  76.         //count ^= 0x800000;
  77.         return(count);
  78. }
復(fù)制代碼

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:162514 發(fā)表于 2018-8-29 08:38 | 顯示全部樓層
是51單片機(jī),不是arduino!
回復(fù)

使用道具 舉報(bào)

ID:443255 發(fā)表于 2018-12-10 14:05 | 顯示全部樓層
謝謝分享
回復(fù)

使用道具 舉報(bào)

ID:666747 發(fā)表于 2019-12-18 09:19 | 顯示全部樓層
hx711的庫(kù)
回復(fù)

使用道具 舉報(bào)

ID:951142 發(fā)表于 2021-7-9 12:24 | 顯示全部樓層
包內(nèi)有hx711.h嗎?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表