Ⅰ 用STM32做了个电子秤,电路代码原理挺简单的
这个基于STM32和HX711的智能体重秤项目在开源网站上被发现,不仅能够测量体重,还能调整测量单位,支持克和千克,最低测量单位可设置为100克。这里分享了项目的开源教程,涵盖了功能、硬件组成、电路原理、软件解析以及注意事项。这个项目成本低廉,仅为67元,由7个部分的硬件组成,包括电源电路、主控电路、晶振电路、称重电路、稳压电路、通信电路、复位电路和OLED显示接口。
HX711是一种高精度的称重传感器处理芯片,能够通过四个压力应变片构成全桥来精确测量体重。主控芯片STM32与HX711通信,通过解析压力应变片的变形量来计算重量,再与手机端的MX-01蓝牙模块进行数据传输。以下是电路拆分解析:
- **电源电路**:由TYPE-C接口、锂电池模块、充电电路组成,提供稳定的电源。充电完成后,LED2指示灯亮起,TP4056芯片管理锂电池充电。P2接口接入3.7V锂电池。
- **主控电路**:选用STM32F103C8T6作为主控芯片,具备2.0v~3.6v的工作电压,最大时钟频率为72MHz,拥有64KB的闪存和20KB的SRAM,支持多种通信和外部设备连接需求。电源输入部分需添加100nf电容进行滤波。
- **晶振电路**:使用32.768Khz的低速晶振和8Mhz的高速晶振,配置时钟输入源为外部输入。
- **称重电路**:HX711作为数模转换芯片,通过SPI或简化串行接口将模拟信号转换为便于与微控制器通信的数字数据。压力传感器通过全桥连接方式接入HX711的E+、A+、GND、A-接口。
- **稳压电路**:采用AMS1117稳压芯片输出3.3V。
- **通信电路**:通过蓝牙模块MA-01A实现与手机的无线连接,支持BLE5.2蓝牙接口,具有良好的通信距离和低功耗特性。
- **复位电路**:通过按下主控的RESET引脚实现复位,松开后系统重新启动。
- **OLED显示接口**:OLED显示器通过I2C协议与主控芯片通信,用于显示体重信息。
软件解析包括手机端应用和嵌入式软件两个部分:
- **手机端应用**:采用微信小程序设计,能够存储和分析称重数据,并通过ec-canvas控件动态展示图表。
- **嵌入式软件**:使用STM32CUBE进行时钟配置,关键代码包括从HX711模块读取传感器数值、将压力传感器数值转换为重量并储存、OLED显示字符串代码等。
注意事项涉及原理图绘制、布线和调试的关键点,确保项目成功实现。
本项目为开源,旨在提供一个成本低廉、功能全面的智能体重秤解决方案,适合DIY爱好者和技术学习者。详细资料和源代码可下载获取。通过关注嘉立创EDA头条号,可获得一手优质开源项目的最新动态和资源。