Modem.h 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. /********************************************************************************
  2. * File Name: Modem.h
  3. * Function Describe: Header file for Modem.c
  4. * Explain:
  5. * Writer: ShiLiangWen
  6. * Date: 2015-1-30
  7. *******************************************************************************/
  8. #ifndef __MODEM_H
  9. #define __MODEM_H
  10. /***********************************************************************************/
  11. #include <rtl.h>
  12. //Modem Reset
  13. #define MODEM_RESET_PIN GPIO_Pin_1
  14. #define MODEM_RESET_PORT GPIOB
  15. #define MODEM_RESET_HIGH MODEM_RESET_PORT->BSRR = MODEM_RESET_PIN
  16. #define MODEM_RESET_LOW MODEM_RESET_PORT->BRR = MODEM_RESET_PIN
  17. //Modem Powerkey
  18. #define MODEM_PWRKEY_PIN GPIO_Pin_0
  19. #define MODEM_PWRKEY_PORT GPIOB
  20. #define MODEM_PWRKEY_HIGH MODEM_PWRKEY_PORT->BSRR = MODEM_PWRKEY_PIN
  21. #define MODEM_PWRKEY_LOW MODEM_PWRKEY_PORT->BRR = MODEM_PWRKEY_PIN
  22. //DTR <--> PPT KEY
  23. #define MODEM_DTR_PIN GPIO_Pin_15
  24. #define MODEM_DTR_PORT GPIOB
  25. #define MODEM_DTR_HIGH MODEM_DTR_PORT->BSRR = MODEM_DTR_PIN
  26. #define MODEM_DTR_LOW MODEM_DTR_PORT->BRR = MODEM_DTR_PIN
  27. //RING <--> CH_DM KEY
  28. #define MODEM_RING_PIN GPIO_Pin_11
  29. #define MODEM_RING_PORT GPIOA
  30. #define MODEM_RING_HIGH MODEM_RING_PORT->BSRR = MODEM_RING_PIN
  31. #define MODEM_RING_LOW MODEM_RING_PORT->BRR = MODEM_RING_PIN
  32. //DSR <--> CH_DU KEY
  33. #define MODEM_DSR_PIN GPIO_Pin_14
  34. #define MODEM_DSR_PORT GPIOB
  35. #define MODEM_DSR_HIGH MODEM_DSR_PORT->BSRR = MODEM_DSR_PIN
  36. #define MODEM_DSR_LOW MODEM_DSR_PORT->BRR = MODEM_DSR_PIN
  37. //DCD <--> PA_EN (out)
  38. #define MODEM_DCD_PIN GPIO_Pin_8
  39. #define MODEM_DCD_PORT GPIOA
  40. #define MODEM_DCD_HIGH MODEM_DSR_PORT->BSRR = MODEM_DSR_PIN
  41. #define MODEM_DCD_LOW MODEM_DSR_PORT->BRR = MODEM_DSR_PIN
  42. //#define MODEM_POC_MSG_DATA_LEN 100
  43. //typedef struct{
  44. // unsigned short MsgLen;
  45. // unsigned char MsgData[MODEM_POC_MSG_DATA_LEN];
  46. //}SUT_MODEM_POC_MSG;
  47. #define MODEM_AT_MSG_DATA_LEN 1024+256
  48. typedef struct{
  49. unsigned short MsgLen;
  50. unsigned char MsgData[MODEM_AT_MSG_DATA_LEN];
  51. }SUT_MODEM_AT_MSG;
  52. typedef enum {
  53. Un_Known,
  54. ONLY_Telecom,
  55. Mobile_unicom,
  56. All_Netcom
  57. }SUPPORT_TYPE;
  58. extern SUPPORT_TYPE support_type;
  59. //extern OS_MBX PocMsgBox;
  60. //extern U32 PocMpool[];
  61. //extern OS_MBX AtMsgBox;
  62. //extern U32 AtMpool[];
  63. typedef enum{
  64. AUTH_LOGIN_NONE,
  65. AUTH_LOGIN_PAP,
  66. AUTH_LOGIN_CHAP
  67. }AUTH_LOGINDEF;
  68. extern unsigned char g_ucModemSentTcpCt;
  69. extern unsigned char g_usModeHTime;
  70. extern unsigned char g_usModeMTime;
  71. extern unsigned char g_usModeSTime;
  72. extern unsigned char g_usModeYTime;//Äê
  73. extern unsigned char g_usModemTime;//ÔÂ
  74. extern unsigned char g_usModeDTime;//ÈÕ
  75. extern SUT_MODEM_AT_MSG sutAtm,sutAtmPro;
  76. void ModemSendAT(char *p);
  77. void ModemSendData(unsigned char *pData,unsigned short datalen);
  78. int ModemInit(void);
  79. void ModemPoweroff(void);
  80. void ModemSetDtrLow(void);
  81. void ModemSetRingLow(void);
  82. int ModemStrCmp(char *msg,char *str);
  83. int ModemWaitMsg(char *pMsgBuf,unsigned short MsgBufLen,int timeout);
  84. int ModemWaitAckMsg(char *pAck,char *pMsgBuf,unsigned short MsgBufLen,int timeout);
  85. //int ModemSendTcpData(unsigned char socket,unsigned char *pData,unsigned short len);
  86. int ModemSendUdpData(unsigned char socket,unsigned char *pData,unsigned short len);
  87. unsigned short StrToNum(char *str);
  88. int CSQ2Num(char *str);
  89. //int ModemGetIMEI(void);
  90. //int ModemGetVer(void);
  91. //int ModemCheckPDP(void);
  92. //int ModemSetAPN(char *pApnName,char *pApnPass);
  93. int ModemCheckPocParam(void);
  94. int ModemSendAT2WaitAckMsg(char *pATCmd,char *pAck,SUT_MODEM_AT_MSG **pMsg,int timeout);
  95. //int ModemCheckSIM(void);
  96. //int ModemCheckUIM(void);
  97. //int ModemWaitRegistered(void);
  98. void HexToStr(unsigned char *HexStr,char *AscStr,unsigned short len);
  99. int ModemWaitOpen(int timeout);
  100. /**********************W*************************************/
  101. int ModemCheckSIM(void);
  102. int ModemCheckPDP(void);
  103. /**********************end************************************/
  104. /**********************C*************************************/
  105. int ModemCheckUIM(void);
  106. int ModemSetMC8332APN(char *pApnName,char *pApnPass);
  107. int MC8332ModemWaitRegistered(void);
  108. void MC8332ModemSendTcpData(unsigned char socket,unsigned char *pData,unsigned short len);
  109. char WaitModemStart(void);
  110. void ModemResetForIPErr(void);
  111. void ModemPinConfig(void);
  112. void HexToAsc(unsigned char Hex,char *pAsc);
  113. void ModemInfo(void);
  114. int ModemGetIMEI(void);
  115. void ModemPocVersionCheck(void);
  116. void ModemApnConfig(void);
  117. void M9507CSendTcpData(unsigned char socket, unsigned char *pData, unsigned short len);
  118. void ModemSetSpeed(void);
  119. void VolumeSet(void);
  120. void SimpleUserInfoScan(unsigned char firstIn,unsigned char direction);
  121. void ServerTimeGet(void);
  122. void SetModemPocSimpleMode(void);
  123. void SpeakTTSVoice(void);
  124. char GetUniStringByID(char *HardIDString);
  125. int ModemCheckFotaDomain(void);
  126. void CheckPocType(void);
  127. char ModemLCCCheck(void);
  128. int ModemSetCodec(unsigned char addr,unsigned short value);
  129. void VolumeSetSpk(void);
  130. /**********************end************************************/
  131. #endif
  132. /***********************************************************************************/