| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- #ifndef _AIR780E_H_
- #define _AIR780E_H_
- #include "systick.h"
- #include "gd32f10x_it.h"
- #include "../Hardware/boardinit.h"
- #include "public.h"
- #define MQTT_SERVER_IP "test-mqtt.cpyypt.cn"
- #define MQTT_SERVER_PORT "9000"
- #define MQTT_UPLINK_TOPIC "cpyypt/up/"
- #define MQTT_DNLINK_TOPIC "cpyypt/down/"
- #define MQTT_DNLINK_TOPIC_CASE "cpyypt/down/"
- #define MQTT_LOGUPLINK_TOPIC "cpyypt/logup/"
- #define TIMER_4G 60000 // 1分钟
- extern FIFO_T g_4Grxfifo; // 4G的接收缓冲区
- extern FIFO_T g_4Gtxfifo; // 4G的发送缓冲区
- typedef struct _4G_MSG_{
- uint8_t bconnect; // mqtt是否连接
- uint8_t breturn; /*发送数据时有返回*/
- uint8_t noreturnNum; /* 发送数据时,没有返回的次数*/
- uint8_t cregStatus; // 附着网络的状态 1:已附着
- int dBm; /*精确的网络信号强度*/
- uint8_t delay; // 时间 1:代表1分钟 3: 代表3分钟
- uint8_t bHaveSim;
- uint8_t imei[15]; // imei
- uint8_t iccid[20]; // iccid
- timeout_t timer; // 4G 连接时间
- char upTopic[64];
- char upLogTopic[64];
- }__attribute__((packed))_4GMsgInfo;
- extern _4GMsgInfo g_4gMsg;
- /* mqtt IP地址 端口号*/
- typedef struct _MQTT_IP_PORT_{
- uint8_t flag;
- char port[6]; // 端口号
- char ip[32]; //IP地址
- char admin[8]; // 用户名
- char password[16]; // 密码
- }__attribute__((packed)) MqttMsg;
- extern MqttMsg g_mqttMsg;
- typedef struct _change_mqtt_msg_{
- uint8_t bChangeMqtt; // 1:为切换mqtt 服务器
- uint8_t bChangeSuc; // 0:初始值 1: 切换成功 2: 切换连接失败
- uint8_t connectNum; // 连接次数
- uint8_t mqttIdlen;
- uint8_t mqttPortlen;
- uint8_t mqttUserlen;
- uint8_t mqttPwdlen;
- MqttMsg mqttMsg; // mqtt的IP地址和端口
- }__attribute__((packed))MqttCHmsg;
- extern MqttCHmsg g_mqttCHmsg;
- extern uint8_t rxfifo[1024];
- enum {
- AT_NULL = 0x00,
- AT_MQTTSTATUS = 0x01,
- AT_AT = 0x02,
- AT_MIPCLOSE = 0x03,
- AT_CGREG = 0x04,
- AT_CGATT = 0x05,// 查询是否附着上数据网络
- AT_MCONFIG = 0x06,
- AT_MIPSTART = 0x07,
- AT_MCONNECT = 0x08,
- AT_MQTTMODE = 0x09,
- AT_ATE = 0x0A,
- AT_CREGSET = 0x0B,
- AT_CREG = 0x0C, // 检测网络状态
- AT_ICCID = 0x0D,
- AT_CGSN = 0x0E,
- AT_CSQ = 0x0F, //
- AT_SUB = 0x010,
- AT_MDISCONNECT = 0x11,
- AT_HTTPACTION = 0x12,
- AT_ATI = 0x13,
- AT_CPIN = 0x14, // 查询SIM卡是否正常
- AT_SAPRB_GPRS = 0x15,
- AT_SAPRB_APN = 0x16,
- AT_SAPRB_11 = 0x17,
- AT_SAPRB_21 = 0x18,
- AT_SAPRB_01 = 0x19,
- };
- #define NET_HEAD_LEN 12
- typedef struct _NET_HEAD_DATA_{
- uint16_t start;
- uint8_t proVer;
- uint32_t msgId;
- uint8_t msgType1;
- uint16_t msgType2;
- uint16_t palen;
- uint8_t info[256-12];
- }__attribute__((packed))netMsgFormat;
- extern unsigned char HexToChar(unsigned char bChar);
- static uint8_t waiting_uart_return(uint32_t timeout, char*str, uint32_t *value);
- extern uint8_t send_data_to_mqtt(uint8_t type, uint8_t *data, uint8_t len);
- extern void AIR_HTTP_GET(const char *url, uint32_t *pLen);
- extern uint8_t * AIR_HTTP_READ(uint32_t start_addr, uint32_t data_len);
- extern void read_mqtt_power_up_msg(void);
- extern void read_mqtt_work_msg(void);
- extern uint8_t init_mqtt_power_up(void);
- extern void close_mqtt(void);
- extern uint8_t add_data_to_4G_txfifo(uint8_t *txdata, uint8_t len, uint8_t msgType1, uint16_t msgType2);
- #endif
|