micro_climate/Drivers/EC801E/EC801E.c

75 lines
2.1 KiB
C
Raw Normal View History

#include "EC801E.h"
#include "stdio.h"
#include "usart.h"
#include "string.h"
#include "cJSON.h"
#include "uart_dev.h"
//<2F><><EFBFBD><EFBFBD><EFBFBD>ϵ粢<CFB5><E7B2A2><EFBFBD><EFBFBD>
void EC801E_Power_ON()
{
// PWR_KEY_4G_Pin<69>͵<EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>ϵ<EFBFBD><CFB5>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>
HAL_GPIO_WritePin(GPIO_4G_PWR_KEY_GPIO_Port, GPIO_4G_PWR_KEY_Pin, GPIO_PIN_SET);
//<2F>ϵ<EFBFBD>
HAL_GPIO_WritePin(GPIO_4G_PWR_CTRL_GPIO_Port, GPIO_4G_PWR_CTRL_Pin, GPIO_PIN_SET);
}
//<2F><><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>
//HAL_OK:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8_t Read_Status()
{
uint8_t temp_status = HAL_ERROR;
temp_status = HAL_GPIO_ReadPin(GPIO_4G_STATUS_GPIO_Port, GPIO_4G_STATUS_Pin) == GPIO_PIN_SET ? HAL_OK : HAL_ERROR;
return temp_status;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><D8B6><EFBFBD><EFBFBD><EFBFBD>ӡ
size_t __write(int handle, const unsigned char * buffer, size_t size)
{
if(HAL_OK == HAL_UART_Transmit(&huart1,(uint8_t *)buffer,size,100000))
{
return size;
}
else
{
return -1;
}
}
// MQTT<54>򿪿ͻ<F2BFAABF><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.<2E><><EFBFBD><EFBFBD>MQTT<54><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.<2E><><EFBFBD><EFBFBD>
void MQTT_Config()
{
// ȷ<><C8B7>4Gģ<47><C4A3><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>
osDelay(5000);
// <20>򿪿ͻ<F2BFAABF><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uart_sendstr(g_ec801_uart_handle, "AT+QMTOPEN=0,199.7.140.10,1883\r\n");
// HAL_UART_Transmit(&huart5, (uint8_t *)"AT+QMTOPEN=0,199.7.140.10,1883\r\n", 30, 0xFFFF);
// ȷ<><C8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
osDelay(5000);
// <20><><EFBFBD>ӷ<EFBFBD><D3B7><EFBFBD><EFBFBD><EFBFBD>
uart_sendstr(g_ec801_uart_handle, "AT+QMTCONN=0,Test_SUB\r\n");
// HAL_UART_Transmit(&huart5, (uint8_t *)"AT+QMTCONN=0,Test_SUB\r\n", sizeof("AT+QMTCONN=0,Test_SUB\r\n"), 0xFFFF);
// ȷ<><C8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
osDelay(5000);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uart_sendstr(g_ec801_uart_handle, "AT+QMTSUB=0,0,Test_Topic,0\r\n");
// HAL_UART_Transmit(&huart5, (uint8_t *)"AT+QMTSUB=0,0,Test_Topic,0\r\n", sizeof("AT+QMTSUB=0,0,Test_Topic,0\r\n"), 0xFFFF);
}
void MQTT_Trans_Json()
{
char *cjson_str = NULL;
cJSON * JsonRoot = cJSON_CreateObject();
cJSON_AddStringToObject(JsonRoot, "deviId", "ռλ");
cJSON_AddStringToObject(JsonRoot, "frameType", "ռλ");
cJSON_AddNumberToObject(JsonRoot, "timeStamp", 1722844604);
cJSON_AddNumberToObject(JsonRoot, "Version", 10);
cjson_str = cJSON_Print(JsonRoot);
HAL_UART_Transmit(&huart1, cjson_str, sizeof(cjson_str), 0xFFFF);
// printf("%s", cjson_str);
free(cjson_str);
cJSON_Delete(JsonRoot);
}