nongye/STM32F103_App1/README.md

4.6 KiB
Raw Blame History

数据采集终端 V1.0.0FreeRTOS · 串口日志中文版)

本工程由「智能水产投料机 V1.5.10」精简而来,只负责 485 数据采集与上报 去掉了控制类硬件相关功能。串口日志为中文输出(GBK 编码,串口工具/蓝牙 APP 字符集请选 GBK

与投料机 V1.5 的差异

已彻底删除(源文件移除,不再参与编译):

  • 四路继电器 + 反馈电路(HardWare/RELAY/ 整目录删除GPIO 不配置)
  • HLW8032 电量计量(HardWare/HLW8032/ 删除UART5/PD2 不再初始化energy/power 不再上报)
  • 电量检测 ADCHardWare/ADC/ 删除)
  • 法拉电容断电保护(断电预警、掉电上报、掉电熄屏流程)
  • 重启历史记录(reset_log.c/h 删除,各复位点不再记录原因)
  • 投喂控制feed_scale 整模块删除,无投喂状态机/单次投量/去皮)
  • 磅秤称重采集(平台不上报任何磅秤参数)
  • 平台下行控制指令处理iot.prop.set 不再响应,下行只处理 OTA本平台产品类只看数据

保留功能:

  • 485 传感器采集HardWare/SENSOR/sensor.cUSART2(PA2/PA3) 9600DMA+IDLE 定帧接收Modbus RTU 主机,一条总线可挂多个传感器(从机地址按下表配置),每 10s 本地查询刷新OLED 实时显示);上传在"OTA 已确认"后 +5s/+30s/+60s 各一次,之后每 5 分钟一次,在线传感器的参数各自组一条 iot.prop.post 上报协议取自《485伴侣/多级菜单》,标识符对齐《采集终端/V3.0》:
从机地址 传感器 上报标识符
0x01 水体PH-EC PH, EC
0x02 大气压温湿度 BS_T(气温), BS_RH(湿度), BS_DO(气压kPa)
0x03 水体溶解氧DO59 DS_T(水温), DO(mg/LUNESCO换算两阶段启动/读取)
0x06 大气百叶箱 BY_TP, BY_RH, BY_HV(光照Lux), BY_CO2(ppm)
0x07 叶面温湿度 YSMD_TP, YSMD_RH
0x08 土壤温湿度 SOIL_TP, SOIL_RH
0x09 土壤氮磷钾 SOIL_NV, SOIL_PV, SOIL_KV
0x0A 土壤PH SOIL_PH
0x0B 土壤电导率 SOIL_RV(uS/cm)
  • 传感器失败原因日志(无应答/帧异常/CRC错/原始帧 hexOLED 轮换显示在线传感器数值5s 一路)
  • 电池电量PA0 ADC 检测,随每轮上传上报 BAT_VAL0~100分压比/电量区间在 main.hBAT_* 宏配置(默认沿用控制板:分压比 11、+0.6V 偏移、10.8V=0%、12.6V=100%
  • 双网络通道4G(Air780E/EG) 优先WiFi(ESP-01S) 兜底,自动切换,记住上次联网方式
  • OTA 远程升级4G/WiFi 双通道 HTTP 下载BootLoader 试运行计数与失败回滚
  • GPS 定位上报Air780EG GNSSPRODUCT_WITH_GPS 宏或蓝牙 GPS0/GPS1 控制
  • 蓝牙调试HLK-B40USART1上电自动配置名称/UUID/发射功率,支持全部调试命令
  • OLED 显示未联网显示联网进度4G 阶段/WiFi 倒计时),联网后显示重量(读不到显示原因)与运行时间,防烧屏像素偏移

硬件接口

模块 接口 说明
日志/蓝牙 HLK-B40 USART1 PA9/PA10 115200GBK
485 磅秤 USART2 PA2/PA3 9600DMA+IDLE
4G Air780E/EG USART3 PB10/PB11 921600CAT_PWR=PC4 开漏拉低开机
WiFi ESP-01S UART4 PC10/PC11 921600ESP_RST=PA5ESP_EN=PA6 高有效
OLED 0.96 CLK=PC12 MOSI=PC9 DC=PC8 CS1=PC7 FSO=PC6 CS2=PB15 RST=PB14 带中文字库
蓝牙控制 BT_MODE=PB0(开漏) BT_RST=PA7(低工作/高复位)
LED NET_NET 等 配网快闪/联网慢闪

配置项(Inc/main.h

  • FIRMWARE_VERSION_STR:固件版本字符串(采集终端独立产品线,从 1.0.0 起)
  • MQTT_CLIENT_ID/USERNAME/PASSWORD:每台设备烧录前改成对应平台的设备三元组
  • PRODUCT_WITH_GPS:默认 14G 通道 GNSS 上报)
  • BLE_NAME / BLE_TX_POWER:蓝牙名称 / 发射功率

蓝牙调试命令

HELP 查看全部命令;常用:

  • STATUS:查询当前采集重量
  • GPS / GPS0 / GPS1:查询/关闭/开启 GPS 上报
  • LOGTRACE LOGDEBUG LOGINFO LOGWARN LOGERROR LOGFATAL日志等级EEPROM 保存)
  • OTA:重启进 BootLoader 检查升级;RECOVERYWiFi 模块恢复出厂;RESET:软复位

编译与烧录

  • Keil MDK 打开 MDK-ARM/STM32F103rb_App1.uvprojx,必须带编译选项 --no_multibyte_chars
  • 编译产物 bin 自动输出到 OutputBin/STM32F103rb_App1.bin(用于平台 OTA 上传)
  • 烧录J-Link 运行 jlink_flash.jlinkBootLoader 在 ../STM32F103_BootLoader,与投料机通用