MS-DTU/MS-DTU-V1/User/drv_dtu.h

64 lines
2.0 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
*********************************************************************************************************
* IAR Development Kits
* on the
*
* M451
*
* Filename : drv_dtu.h
* Version : V1.00
* Programmer(s) : Qian Xianghong
*********************************************************************************************************
*/
#ifndef USER_DRV_DTU_PRESENT
#define USER_DRV_DTU_PRESENT
#include "type.h"
// 是否打印DTU串口收到的字符
extern uint8_t DTU_uartPrint;
extern const uint16_t DTU_tmrQPendShort;
// 4G模块型号决定是否基站定位等
#define DTU_MODEL_NONE 0 // 无4G模块
#define DTU_MODEL_LIERDA 1 // 利尔达
#define DTU_MODEL_QUECTEL 2 // 移远
extern uint8_t DTU_model;
// 基站定位获取的经纬度
extern int32_t DTU_longitude, DTU_latitude;
// 模块上/关电
void DTU_PowerOn();
void DTU_PowerOff();
void DTU_Sleep();
void DTU_CheckSleep();
char *DTU_DecideAPN();
char *DTU_DecideAPNUser();
char *DTU_DecideAPNPwd();
uint32_t DTU_ParseResult(char *checkPattern, char *checkErrPattern, char *resultBuff, uint16_t waitSeconds);
// GPRS拨号
uint32_t Sim808_GPRSDial();
// 读取GPRS网络信息信息
uint32_t Sim808_ReadGPRS();
// 获取基站定位经纬度
uint32_t Sim808_GetCellLocPosition();
uint32_t Sim808_Connect(uint8_t ssl, char *server, int port);
uint32_t Sim808_SendAndRecv(uint8_t ssl, uint8_t *data, uint16_t len, uint16_t *recvLen, uint8_t *recvBuff, uint16_t recvSize);
uint32_t DTU_Connect(uint8_t ssl, char *server, short port);
uint32_t DTU_SendAndRecv(uint8_t ssl, uint8_t *data, uint16_t len, uint16_t *recvLen, uint8_t *recvBuff, uint16_t recvSize);
uint32_t DTU_Close(uint8_t ssl);
uint32_t Sim808_MqttConnect(const char *server, int port, char *product, char *device, char *secret);
uint32_t Sim808_MqttPublish(uint8_t *data, uint16_t len, char *product, char *device);
uint32_t MQTT_Close();
// 执行命令,等待结果
uint32_t DTU_ExecuteCmd(char *cmd, char *checkPattern, char *checkErrPattern, char *resultBuff, uint16_t waitSeconds);
#endif