mirror of
https://github.com/oopuuu/zTC1.git
synced 2025-12-13 05:28:14 +08:00
mqtt real_time_power
This commit is contained in:
@@ -15,7 +15,7 @@
|
|||||||
char rtc_init = 0; //sntp校时成功标志位
|
char rtc_init = 0; //sntp校时成功标志位
|
||||||
uint32_t total_time = 0;
|
uint32_t total_time = 0;
|
||||||
char str_mac[16] = { 0 };
|
char str_mac[16] = { 0 };
|
||||||
uint32_t power = 0;
|
uint32_t real_time_power = 0;
|
||||||
|
|
||||||
system_config_t* sys_config;
|
system_config_t* sys_config;
|
||||||
user_config_t* user_config;
|
user_config_t* user_config;
|
||||||
@@ -146,11 +146,11 @@ int application_start(void)
|
|||||||
while (1)
|
while (1)
|
||||||
{
|
{
|
||||||
//发送功率数据
|
//发送功率数据
|
||||||
uint32_t power2 = 171 * (p_count - last_p_count) / 10;
|
real_time_power = 171 * (p_count - last_p_count) / 10;
|
||||||
last_p_count = p_count;
|
last_p_count = p_count;
|
||||||
//SetPowerRecord(&power_record, power2);
|
//SetPowerRecord(&power_record, real_time_power);
|
||||||
sprintf(power_buf, "{\"mac\":\"%s\",\"power\":\"%u.%u\",\"total_time\":%u}",
|
sprintf(power_buf, "{\"mac\":\"%s\",\"power\":\"%u.%u\",\"total_time\":%u}",
|
||||||
str_mac, (unsigned int)(power2 / 10), (unsigned int)(power2 % 10), (unsigned int)total_time);
|
str_mac, (unsigned int)(real_time_power/10), (unsigned int)(real_time_power%10), (unsigned int)total_time);
|
||||||
UserSend(0, power_buf);
|
UserSend(0, power_buf);
|
||||||
UserMqttHassPower();
|
UserMqttHassPower();
|
||||||
|
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ typedef struct
|
|||||||
extern char rtc_init;
|
extern char rtc_init;
|
||||||
extern uint32_t total_time;
|
extern uint32_t total_time;
|
||||||
extern char str_mac[16];
|
extern char str_mac[16];
|
||||||
extern uint32_t power;
|
extern uint32_t real_time_power;
|
||||||
extern system_config_t* sys_config;
|
extern system_config_t* sys_config;
|
||||||
extern user_config_t* user_config;
|
extern user_config_t* user_config;
|
||||||
extern char socket_status[32];
|
extern char socket_status[32];
|
||||||
|
|||||||
@@ -99,11 +99,11 @@ void UserFunctionCmdReceived(int udp_flag, char* pusrdata)
|
|||||||
char *temp_buf = malloc(16);
|
char *temp_buf = malloc(16);
|
||||||
if (temp_buf != NULL)
|
if (temp_buf != NULL)
|
||||||
{
|
{
|
||||||
sprintf(temp_buf, "%d.%d", (int)(power/10), (int)(power%10));
|
sprintf(temp_buf, "%d.%d", (int)(real_time_power/10), (int)(real_time_power%10));
|
||||||
cJSON_AddStringToObject(json_send, "power", temp_buf);
|
cJSON_AddStringToObject(json_send, "power", temp_buf);
|
||||||
free(temp_buf);
|
free(temp_buf);
|
||||||
}
|
}
|
||||||
os_log("power:%d", (int)power);
|
os_log("power:%d", (int)real_time_power);
|
||||||
}
|
}
|
||||||
//解析主机setting-----------------------------------------------------------------
|
//解析主机setting-----------------------------------------------------------------
|
||||||
cJSON *p_setting = cJSON_GetObjectItem(pJsonRoot, "setting");
|
cJSON *p_setting = cJSON_GetObjectItem(pJsonRoot, "setting");
|
||||||
|
|||||||
@@ -621,7 +621,7 @@ void UserMqttHassPower(void)
|
|||||||
if (send_buf != NULL && topic_buf != NULL)
|
if (send_buf != NULL && topic_buf != NULL)
|
||||||
{
|
{
|
||||||
sprintf(topic_buf, "homeassistant/sensor/%s/power/state", str_mac);
|
sprintf(topic_buf, "homeassistant/sensor/%s/power/state", str_mac);
|
||||||
sprintf(send_buf, "{\"power\":\"%d.%d\"}", (int)(power/10), (int)(power%10));
|
sprintf(send_buf, "{\"power\":\"%d.%d\"}", (int)(real_time_power/10), (int)(real_time_power%10));
|
||||||
UserMqttSendTopic(topic_buf, send_buf, 0);
|
UserMqttSendTopic(topic_buf, send_buf, 0);
|
||||||
}
|
}
|
||||||
if (send_buf) free(send_buf);
|
if (send_buf) free(send_buf);
|
||||||
|
|||||||
Reference in New Issue
Block a user