/******************************************************************************** * File Name: Modem.h * Function Describe: Header file for Modem.c * Explain: * Writer: ShiLiangWen * Date: 2015-1-30 *******************************************************************************/ #ifndef __MODEM_H #define __MODEM_H /***********************************************************************************/ #include //Modem Reset #define MODEM_RESET_PIN GPIO_Pin_12 #define MODEM_RESET_PORT GPIOB #define MODEM_RESET_HIGH MODEM_RESET_PORT->BSRR = MODEM_RESET_PIN #define MODEM_RESET_LOW MODEM_RESET_PORT->BRR = MODEM_RESET_PIN //Modem Powerkey #define MODEM_PWRKEY_PIN GPIO_Pin_13 #define MODEM_PWRKEY_PORT GPIOB #define MODEM_PWRKEY_HIGH MODEM_PWRKEY_PORT->BSRR = MODEM_PWRKEY_PIN #define MODEM_PWRKEY_LOW MODEM_PWRKEY_PORT->BRR = MODEM_PWRKEY_PIN #define MODEM_AT_MSG_DATA_LEN (1024+20)//单条AT指令长度,理论上是最长1024加一此AT字节 //但实际上都每条都不会这么长 //不要151,此芯片内存没有很多,因此做这个配置就好了 typedef struct{ unsigned short MsgLen; unsigned char MsgData[MODEM_AT_MSG_DATA_LEN]; }SUT_MODEM_AT_MSG; typedef enum{ TCPUDP_ASCII=0x30, TCPUDP_HEX=0x31 }TCPUDP_DEF; //extern OS_MBX PocMsgBox; //extern U32 PocMpool[]; //extern OS_MBX AtMsgBox; //extern U32 AtMpool[]; extern SUT_MODEM_AT_MSG sutAtm,sutAtmPro; extern unsigned char g_ucModemSentTcpCt; void ModemSendAT(char *p); void ModemSendData(unsigned char *pData,unsigned short datalen); int ModemInit(void); void ModemPoweroff(void); int ModemStrCmp(char *msg,char *str); int ModemWaitMsg(char *pMsgBuf,unsigned short MsgBufLen,int timeout); int ModemWaitAckMsg(char *pAck,char *pMsgBuf,unsigned short MsgBufLen,int timeout); int ModemSendTcpData(unsigned char socket,unsigned char *pData,unsigned short len); int ModemSendUdpData(unsigned char socket,unsigned char *pData,unsigned short len); unsigned short StrToNum(char *str); int CSQ2Num(char *str); int ModemGetMEID(void); int ModemGetIMEI(void); void ModemInfo(void); int ModemCheckPocParam(void); int ModemSendAT2WaitAckMsg(char *pATCmd,char *pAck,SUT_MODEM_AT_MSG **pMsg,int timeout); int ModemCheckUIM(void); void MC8332ModemSendTcpData(unsigned char socket,unsigned char *pData,unsigned short len); int ModemGPSStart(void); char GPSModeSet(void); char SetModemTCPHexMode(TCPUDP_DEF mode); void M9507CSendTcpData(unsigned char socket, unsigned char *pData, unsigned short len); void ModemApnConfig(void); void ModemPocVersionCheck(void); char WaitModemStart(void); void ModemSetSpeed(void); char GetUniStringByID(char *HardIDString); #endif /***********************************************************************************/