单片机/MCU论坛
直播中

小猫猫爱吃鱼

5年用户 118经验值
擅长:可编程逻辑 光电显示 控制/MCU
私信 关注
[资料]

单片机托盘式电子秤制作(HX711)

``24位A/D转换器芯片
      
        HX711是一款专为高精度电子秤而设计的24位A/D转换器芯片。与同类型其它芯片相比,该芯片集成了包括稳压电源、片内时钟振荡器等其它同类型芯片所需要的外围电路,具有集成度高、响应速度快、抗干扰性强等优点。降低了电子秤的整机成本,提高了整机的性能和可靠性。该芯片与后端MCU 芯片的接口和编程非常简单,所有控制信号由管脚驱动,无需对芯片内部的寄存器编程。输入选择开关可任意选取通道A 或通道B,与其内部的低噪声可编程放大器相连。通道A 的可编程增益为128 或64,对应的满额度差分输入信号幅值分别为±20mV或±40mV。通道B 则为固定的32 增益,用于系统参数检测。芯片内提供的稳压电源可以直接向外部传感器和芯片内的A/D 转换器提供电源,系统板上无需另外的模拟电源。芯片内的时钟振荡器不需要任何外接器件。上电自动复位功能简化了开机的初始化过程。


一般应用原理图
       AD-1.png


制作完成的实物

001.PNG

003.PNG

004.PNG

005.PNG

006.PNG

  1. //读取HX711
  2. //****************************************************
  3. unsigned long HX711_Read(void)        //增益128
  4. {
  5.         unsigned long count;
  6.         unsigned char i;
  7.           HX711_DOUT=1;
  8.         Delay__hx711_us();
  9.         Delay__hx711_us();
  10.           HX711_SCK=0;
  11.           count=0;
  12.         EA = 1;
  13.           while(HX711_DOUT);
  14.         EA = 0;
  15.           for(i=0;i<24;i++)
  16.         {
  17.                   HX711_SCK=1;
  18.                   count=count<<1;
  19.                 HX711_SCK=0;
  20.                   if(HX711_DOUT)
  21.                         count++;
  22.         }
  23.         HX711_SCK=1;
  24.           count=count^0x800000;//第25个脉冲下降沿来时,转换数据
  25.         Delay__hx711_us();
  26.         HX711_SCK=0;  
  27.         return(count);
  28. }



`` AD.png

回帖(4)

王栋春

2020-3-1 21:58:58
请教楼主采用的是何种型号的传感器
举报

小猫猫爱吃鱼

2020-3-1 22:20:37
传感器.png

举报

TreeOS系统

2020-3-3 10:16:24
最大检测重量能到多少。
2 举报

hts20100101

2020-5-26 08:49:34
好,很不错,好好学习下先,谢谢分享啊!
举报

更多回帖

发帖
×
20
完善资料,
赚取积分