飞凌嵌入式全志A40i开发板试用体验之 称重系统-硬件环境搭建(2)

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

hx711模块外围电路

其中 com4连接压电传感器的A+,A-,B+,B-,H_SDL,H_SCL与开发板的IIC接口相连.

hx711驱动程序

unsigned long HX711_Buffer = 0; unsigned long Weight_Maopi = 0; unsigned long Weight_Maopi_0 = 0; long Weight_Shiwu = 0; bool HX711_SCK; bool HX711_DOUT; unsigned long HX711_Read(void) //增益128 { unsigned long count; unsigned char i; HX711_DOUT=1; Delay__5us(); HX711_SCK=0; count=0; while(HX711_DOUT); for(i=0;i<24;i++) { HX711_SCK=1; count=count<<1; HX711_SCK=0; if(HX711_DOUT) count++; } HX711_SCK=1; count=count^0x800000;//第25个脉冲下降沿来时,转换数据 Delay__5us(); HX711_SCK=0; return(count); } void Get_Weight() { HX711_Buffer = HX711_Read(); Weight_Shiwu=HX711_Buffer; // Weight_Shiwu = Weight_Shiwu - Weight_Maopi; //获取净重 if(Weight_Shiwu > 0) { Weight_Shiwu = (unsigned int)((float)Weight_Shiwu*10/GapValue)-8530; //计算实物的实际重量 // // if(Weight_Shiwu > 3000) //超重报警 // { // Flag_ERROR = 1; // } // else // { // Flag_ERROR = 0; // } // } // else // { // Weight_Shiwu = 0; // // Flag_ERROR = 1; //负重报警 // } } delay(5); Display_Weight(); }

点此了解更多产品信息>>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值