引入mqtt 引入cjson

This commit is contained in:
2584532475@qq.com committed 2023-11-30 08:10:01 +08:00
1 parent a69c1a58d6
commit f8591b8b99
86 files changed
+12141 -2157

No files matched your search

+24
View File
@@ -0,0 +1,24 @@
#include "stm32g0xx_hal.h"
#include <easyflash.h>
#include <stdlib.h>
#include <string.h>
// 获取uint32_t 的数值
uint32_t ef_get_integer(const char * key);
// 获取double 的数值
double ef_get_double(const char* key);
// 获取字符串的数值
char* ef_get_string(const char* key);
// 存储无符号整
void ef_save_uint(const char* key, unsigned int value);
// 存储string类型
void ef_save_string(const char* key, char* value, int size);
+25 -4
View File
@@ -2,19 +2,19 @@
#include <easyflash.h>
#include <stdlib.h>
#include <string.h>
#include "rtthread.h"
// 获取uint32_t 的数值
uint32_t ef_get_integer(const char * key)
{
uint32_t integer = NULL;
char * value_ptr;
char * value_ptr;
/* get the boot count number from Env */
value_ptr = ef_get_env (key);
integer = atol (value_ptr);
integer = atoi (value_ptr);
return integer;
}
@@ -42,3 +42,24 @@ char * ef_get_string(const char * key)
}
// 存储无符号整
void ef_save_uint(const char* key, unsigned int value)
{
char valuebuff[128];
rt_sprintf(valuebuff, "%u", value);
ef_set_env(key, valuebuff);
ef_save_env();
}
// 存储string类型
void ef_save_string(const char* key, char* value, int size)
{
char valuebuff[128];
rt_sprintf(valuebuff, "%*.s", size, value);
//rt_kprintf("%s\r\n",valuebuff);
ef_set_env(key, valuebuff);
ef_save_env();
}
+33 -22
View File
@@ -40,15 +40,21 @@ static const ef_env default_env_set[] = {
{"iap_need_uart_update", "0"}, // 需要通过串口升级
{"iap_app_filename", "App.bin"},
{"stop_in_bootloader", "0"},
{"device_id", "0000000001"},
{"boot_times", "0"},
{"jump_boot_time", "10"}, // BOOT 等待时间 10s
// 基础参数设置
{"device_id", "0000000003"},
{"app_id", "220000"}, // 业务ID
{"user_pass", "123456"},
{"sys_pass", "898909"},
{"mqtt_user", "admin"},
{"mqtt_pass", "admin"},
{"mqtt_addr", "mqtt.zyjzjs.cn"},
{"mqtt_port", "1883"},
{"boot_times", "0"},
{"jump_boot_time", "10"}, // BOOT 等待时间 10s
{"net_drv", "dtu"}, // mqtt dtu ec200
{"eth2_chann", "1"}, //以太网通道2
{"mqtt_topic", "sluice"}, //订阅topic
{"net_drv", "dtu"}, // mqtt dtu ec200 eth
{"eth2_chann", "0"}, //以太网通道2 支持modbus
// 传感器基础参数配置
{"di1", "0"},// 0 表示未定义 1 表示 上限位,2:下限位 3: 开关4:关 5:停止
@@ -58,14 +64,10 @@ static const ef_env default_env_set[] = {
{"di5", "0"},// 0 表示未定义 1 表示 上限位,2:下限位 3: 开关4:关 5:停止
{"di6", "0"},// 0 表示未定义 1 表示 上限位,2:下限位 3: 开关4:关 5:停止
// 485 配置参数
{"s4851num", "1"}, // 4851 接入传感器的个数
{"s4852num", "0"}, // 4852 接入传感器的个数
{"s4851func", "0100000000000000"}, // 4851 接入传感器的类型
{"s4852func", "0000000000000000"}, // 4852 接入传感器的类型
{"s4851bute", "9600"}, // 4851 波特率
{"s4852bute", "19200"}, // 4852 波特率
{"s4851para", "0"}, // 4851 接入传感器的个数
{"s4852para", "0"}, // 4851 接入传感器的个数
{"u485func", "mg1000"}, // 用于一个柜子控制多台闸门
{"s4851func", "rds600"}, // 4851 接入传感器的类型 rds600 tds300
{"s4852func", "modbus"}, // 4852 接入传感器的类型
// 模拟量配置
{"ai1", "0"}, // AI1接入设备
{"ai2", "0"}, // AI2接入设备
@@ -80,18 +82,27 @@ static const ef_env default_env_set[] = {
{"pwm4", "0"}, // PWM4功能
// 闸门参数设置
{"maxopen", "140"}, // PWM4功能
{"maxecode", "0"}, // PWM4功能
{"minecode", "0"}, // PWM4功能
{"codepre", "0"}, // 编码器和闸门开度的比
{"max_open", "1400"}, // 最大开度
{"max_ecode", "31241"}, // 编码器最大编码
{"min_ecode", "32828"}, // 编码器最小编码
{"exec_time", "50"}, // 异常检测时间 单位100ms 50 就是 5s
// 闸门参数设置
{"motortype", "140"}, // PWM4功能
{"codertype", "0"}, // PWM4功能
{"loadrtype", "0"}, // PWM4功能
{"flowrtype", "0"}, // 编码器和闸门开度的比
{"ctrl_mode", "0"}, // 控制模式 // 1 直接开度控制,0 反馈开度控制
{"motor_type", "mg1000"}, // 电机类型 // mg a3 b5
{"simu_flow", "0"}, // 0 未启动 1 水位流量关系表 2巴歇尔槽启动流量关系表
{"parshall", "7"}, // 巴歇尔槽规格
// 流量数据存储
{"ttflow", "0"}, // 累计流量
{"chancnt", "1"}, // 流量计通道数
{"site_type", "sluice"}, // 0,闸门站,1,流量站,2,渗流渗压站,3,自动化采集站,4,串口服务器
{"level","[0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0]"},
{"flow", "[0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0]"},
{"wsid","[128,2,3,4,5,6]"},
// 水位流量关系表 配置10 个点
{"speed", "0"}, // 编码器和闸门开度的比
};