// // Created by cfif on 25.01.23. // #ifndef GONEC_GSM_ATGGMSIM800F_H #define GONEC_GSM_ATGGMSIM800F_H #include #include "AtCmdCommonProtected.h" #include "AsciiStringParsingUtils.h" #include "AtGsm_NetworkRegistrationStatus.h" typedef enum { AT_DETACH_FROM_GPRS_SERVICE = '0', AT_ATTACH_FROM_GPRS_SERVICE = '1' } tAtGsm_AttachOrDetachFromGPRSService; typedef enum { IP_INITIAL = 0, IP_START = 1, IP_CONFIG = 2, IP_GPRSACT = 3, IP_STATUS = 4, TCP__CONNECTING = 5, UDP_CONNECTING = 6, SERVER_LISTENING = 7, CONNECT_OK = 8, TCP_CLOSING = 9, UDP_CLOSING = 10, TCP_CLOSED = 11, UDP_CLOSED = 12, PDP_DEACT = 13, PDP_NOT_FOUND_ERROR = 100 } tAtGsm_QueryCurrentConnectionStatus; typedef enum { SIM_READY = 0, SIM_SIM_PIN = 1, SIM_SIM_PUK = 2, SIM_PH_SIM_PIN = 3, SIM_PH_SIM_PUK = 4, SIM_SIM_PIN2 = 5, SIM_SIM_PUK2 = 6, SIM_SIM_NOT_FOUND_ERROR = 100 } tAtGsm_PINStatus; typedef enum { GSM_STATUS_OK = 0, GSM_STATUS_ERROR_PIN_STATUS = 1, GSM_STATUS_ERROR__WAIT_NETWORK_REGISTRATION = 2, GSM_STATUS_ERROR_ATTACH_GPR_SERVICE = 3 } tAtGsm_StatusError; // // Created by cfif on 25.01.23. // #include "AtGsmSim800f.h" #include "stdlib.h" // начало-------------------------- Служебные ---------------------------------------------------------------------- // начало-------------------------- Служебные ---------------------------------------------------------------------- // начало-------------------------- Служебные ---------------------------------------------------------------------- // IMEI AtCommandResult AtGsm_Simcom800f_GET_CGSN(tAtCmd *env, char *acpString, size_t *acpStringLen); AtCommandResult AtGsm_Simcom800f_CCID(tAtCmd *env, char *acpString, size_t *acpStringLen); // конец-------------------------- Служебные ---------------------------------------------------------------------- // конец-------------------------- Служебные ---------------------------------------------------------------------- // конец-------------------------- Служебные ---------------------------------------------------------------------- // начало-------------------------- Инициализация ---------------------------------------------------------------------- // начало-------------------------- Инициализация ---------------------------------------------------------------------- // начало-------------------------- Инициализация ---------------------------------------------------------------------- // Проверка готовности SIM-карты AtCommandResult AtGsm_Simcom800f_PINStatus(tAtCmd *env, tAtGsm_PINStatus *state); // Уровень сигнала AtCommandResult AtGsm_Simcom800f_SignalQualityReport(tAtCmd *env, uint32_t *rssi, int *error); // Проверка наличия регистрации в сети GSM. AtCommandResult AtGsm_Simcom800f_NetworkRegistrationStatusGSM( tAtCmd *env, tAtGsm_NetworkRegistrationReportMode *mode, tAtGsm_NetworkRegistrationState *state, int *error ); // Проверка получения доступа к услугам пакетной передачи данных. AtCommandResult AtGsm_Simcom800f_AttachOrDetachFromGPRSService( tAtCmd *env, tAtGsm_AttachOrDetachFromGPRSService *state, int *error ); // Установка количества соединений с сокетом - 0 AtCommandResult AtGsm_Simcom800f_StartUpMultiIPConnection(tAtCmd *env, uint8_t count); // Режим передачи данных 0 - Ручной AtCommandResult AtGsm_Simcom800f_SelectTCPIPApplicationMode(tAtCmd *env, uint8_t mode); // Режим передачи данных 0 - Ручной AtCommandResult AtGsm_Simcom800f_SelectDataTransmittingMode(tAtCmd *env, uint8_t mode); // Режим приема данных 1 - Ручной AtCommandResult AtGsm_Simcom800f_GetDataFromNetworkManuallySet(tAtCmd *env, uint8_t mode) ; // конец----------------------------------- Инициализация -------------------------------------------------------------- // конец----------------------------------- Инициализация -------------------------------------------------------------- // конец----------------------------------- Инициализация -------------------------------------------------------------- // начало---------------------- Настройка контекста и открытие соединения ----------------------------------- // начало---------------------- Настройка контекста и открытие соединения ----------------------------------- // начало---------------------- Настройка контекста и открытие соединения ----------------------------------- // Деактивация контекста AtCommandResult AtGsm_Simcom800f_DeactivateGPRSPDPContext(tAtCmd *env); // Настройка точки доступа APN AtCommandResult AtGsm_Simcom800f_StartTaskAndSetAPN(tAtCmd *env, char *apn, int apnLen); // Запрос текущего статуса соединения AtCommandResult AtGsm_Simcom800f_QueryCurrentConnectionStatus(tAtCmd *env, tAtGsm_QueryCurrentConnectionStatus *state); // Активация контекста AtCommandResult AtGsm_Simcom800f_BringUpWirelessConnectionWithGPRS(tAtCmd *env); // Установление TCP соединения AtCommandResult AtGsm_Simcom800f_StartUpTCPOrUDPConnection(tAtCmd *env, char *url, int urlLen, uint16_t port); // Закрытие соединения AtCommandResult AtGsm_Simcom800f_CloseTCPorUDPConnection(tAtCmd *env); // конец---------------------------- Настройка контекста и открытие соединения ----------------------------------------- // конец---------------------------- Настройка контекста и открытие соединения ----------------------------------------- // конец---------------------------- Настройка контекста и открытие соединения ----------------------------------------- // начало----------------------- Передача данных с подтверждением в командном режиме ----------------------------------- // начало----------------------- Передача данных с подтверждением в командном режиме ----------------------------------- // начало----------------------- Передача данных с подтверждением в командном режиме ----------------------------------- // Начать отправку данных на сервер AtCommandResult AtGsm_Simcom800f_SendDataThroughTCPOrUDPConnection(tAtCmd *env, uint8_t *pBuf, uint16_t size); // конец----------------------- Передача данных с подтверждением в командном режиме ----------------------------------- // конец----------------------- Передача данных с подтверждением в командном режиме ----------------------------------- // конец----------------------- Передача данных с подтверждением в командном режиме ----------------------------------- // начало----------------------- Прием данных в командном режиме, ручной вывод принятых данных ------------------------- // начало----------------------- Прием данных в командном режиме, ручной вывод принятых данных ------------------------- // начало----------------------- Прием данных в командном режиме, ручной вывод принятых данных ------------------------- // Получить количества данных готовых для чтения AtCommandResult AtGsm_Simcom800f_GetDataFromNetworkManuallyGetSize(tAtCmd *env, uint16_t *size); // Получить данные готовые для чтения из сокета AtCommandResult AtGsm_Simcom800f_GetDataFromNetworkManuallyGet(tAtCmd *env, uint8_t *pBuf, uint16_t sizeRead, uint16_t *sizeRealRead); // конец----------------------- Прием данных в командном режиме, ручной вывод принятых данных ------------------------- // конец----------------------- Прием данных в командном режиме, ручной вывод принятых данных ------------------------- // конец----------------------- Прием данных в командном режиме, ручной вывод принятых данных ------------------------- #endif //GONEC_GSM_ATGGMSIM800F_H