// // Created by cfif on 25.01.23. // #ifndef MODEM_GONEC_H #define MODEM_GONEC_H #include "SerialPortIO.h" #include "LoggerInterface.h" #include "BaseTypes.h" #include "AtCmdCommonProtected.h" #include "AtModemGonec.h" #include "ModemMain.h" bool Modem_TestAFU(tAtCmd *env); bool Modem_TestAPO(tAtCmd *env); // Периодичность запроса на съем, МС bool Modem_PerDown(tAtCmd *env, bool *isWriteMem, uint32_t value); // Периодичность запроса на съем, МС bool Modem_Get_PerDown(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); bool Modem_Reg(tAtCmd *env, bool *isWriteMem, char *value); bool Modem_Get_SelectPWR(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); bool Modem_SelectPWR(tAtCmd *env, bool *isWriteMem, uint32_t value); // Коррекция передатчика PWR bool Modem_TransmitterPWR(tAtCmd *env, bool *isWriteMem, uint32_t value1, uint32_t value2, uint32_t value3, uint32_t value4); // Коррекция передатчика bool Modem_Get_TransmitterPWR(tAtCmd *env, bool *isWriteMem, uint32_t value1, uint32_t value2, uint32_t value3, uint32_t value4, uint32_t *oldValue1, uint32_t *oldValue2, uint32_t *oldValue3, uint32_t *oldValue4); bool Modem_LogEnable(tAtCmd *env, bool *isWriteMem, uint32_t value); bool Modem_Get_LogEnable(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); bool Modem_LogExtended(tAtCmd *env, bool *isWriteMem, uint32_t value); bool Modem_Get_LogExtended(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); /* // Коррекция передатчика 1 bool Modem_Get_TransmitterPWR1(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); // Коррекция передатчика 2 bool Modem_Get_TransmitterPWR2(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); // Коррекция передатчика 3 bool Modem_Get_TransmitterPWR3(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); // Коррекция передатчика 4 bool Modem_Get_TransmitterPWR4(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); // Коррекция передатчика PWR1 bool Modem_TransmitterPWR1(tAtCmd *env, bool *isWriteMem, uint32_t value); // Коррекция передатчика PWR2 bool Modem_TransmitterPWR2(tAtCmd *env, bool *isWriteMem, uint32_t value); // Коррекция передатчика PWR3 bool Modem_TransmitterPWR3(tAtCmd *env, bool *isWriteMem, uint32_t value); // Коррекция передатчика PWR4 bool Modem_TransmitterPWR4(tAtCmd *env, bool *isWriteMem, uint32_t value); */ // Запись прошивки крипто-платы bool Modem_CryptoSend(tAtCmd *env, uint8_t *pBuf, uint32_t crc, uint32_t offset, uint32_t size); // Запуск прошивкиы bool Modem_RunModemOrCrypto(tAtCmd *env); bool Modem_DelTasi(tAtCmd *env, bool *isWriteMem, uint32_t param); // Останов ожидания маркерного сигнала bool Modem_Stop(tAtCmd *env); // Запуск ожидания маркерного сигнала bool Modem_Start(tAtCmd *env); // Ввод сетевого адреса модема bool Modem_NetAddress(tAtCmd *env, bool *isWriteMem, uint32_t adr); // Ввод каналов ожидания маркерного сигнала bool Modem_MarkerCh(tAtCmd *env, bool *isWriteMem, uint32_t mc1, uint32_t mc2); // Ввод тип адреса 1 - почта; 2 - гонец bool Modem_AddressType(tAtCmd *env, bool *isWriteMem, uint32_t type); // bool Modem_Region(tAtCmd *env, bool *isWriteMem, uint32_t p1, uint32_t p2, uint32_t p3, uint32_t p4, uint32_t p5, uint32_t p6, uint32_t p7, uint32_t p8); // Установка скоростей bool Modem_RxTxBitrate(tAtCmd *env, bool *isWriteMem, uint32_t s1, uint32_t s2, uint32_t s3, uint32_t s4); // Установка приоритета bool Modem_Priority(tAtCmd *env, bool *isWriteMem, uint32_t prior); // bool Modem_RestrictSc(tAtCmd *env, bool *isWriteMem, char *banned); // Установка региона bool Modem_RegRegion(tAtCmd *env, bool *isWriteMem, uint32_t region); // bool Modem_RegTime(tAtCmd *env, bool *isWriteMem, uint32_t time); // bool Modem_DateTime(tAtCmd *env, time_t *timestamp); // Запись во флеш модема bool Modem_WriteMem(tAtCmd *env); // Загрузка ключей с проверкой bool Modem_LoadKey(tAtCmd *env, uint32_t key_num, char *buf, size_t buf_len); // Запрос состояния регистрации bool Modem_RegStatus(tAtCmd *env, uint8_t *status); // Останов регистрации bool Modem_StopRegTask(tAtCmd *env); // Останов задачи передачи bool Modem_StopSendTask(tAtCmd *env); // Запуск задачи передачи bool Modem_StartSendTask(tAtCmd *env); // Запрос слотов bool Modem_Get_Slot(tAtCmd *env, uint8_t id[], uint8_t status[], uint8_t count); // Запись данных в слот bool Modem_Write_Slot(tAtCmd *env, uint32_t id, uint32_t addressAT, uint32_t addressEND, uint32_t urgency, uint32_t confirmation, uint32_t size, uint8_t *pBuf); // Чтение данных из слота bool Modem_Read_Recv_Slot(tAtCmd *env, uint8_t id, uint32_t *size, uint8_t *pBuf); // Запрос слотов приема bool Modem_Get_Recv_Slot(tAtCmd *env, uint8_t id[], uint8_t status[], uint8_t count); // Очистка слота приема bool Modem_Clear_Recv_Slot(tAtCmd *env, char *id); // Останов задачи приема bool Modem_StopRecvTask(tAtCmd *env); // Запуск задачи приема bool Modem_StartRecvTask(tAtCmd *env); // Очистка слота bool Modem_Clear_Slot(tAtCmd *env, char *id); // Запуск регистрации bool Modem_StartRegTask(tAtCmd *env); // Координаты bool Modem_Coord(tAtCmd *env, int latitude, int longitude); // Запуск получения альманаха bool Modem_AlmaRun(tAtCmd *env); // Останов получения альманаха bool Modem_AlmaStop(tAtCmd *env); // Чтения состояния получения альманаха bool Modem_Get_AlmaRun(tAtCmd *env, uint8_t *run); // Запрос состояния получения альманаха bool Modem_AlmaStatus(tAtCmd *env, uint8_t *status); // Чтение пакета альманаха bool Modem_Read_Alma(tAtCmd *env, uint32_t *size, uint8_t *pBuf); // Очистка пакета альманаха bool Modem_Clear_Alma(tAtCmd *env); // Получение логов bool Modem_Get_Log(tAtCmd *env, int32_t *rssi, int32_t *temp, uint32_t *pwramp, uint32_t *state, uint32_t *wasreboot, uint32_t *size, uint8_t *pBuf); // bool Modem_Get_DelTasi(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); // Ввод сетевого адреса модема bool Modem_Get_NetAddress(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); // Ввод каналов ожидания маркерного сигнала bool Modem_Get_MarkerCh(tAtCmd *env, bool *isWriteMem, uint32_t mc1, uint32_t mc2, uint32_t *oldMc1, uint32_t *oldMc2); // Ввод тип адреса 1 - почта; 2 - гонец bool Modem_Get_AddressType(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); // Установка скоростей bool Modem_Get_RxTxBitrate(tAtCmd *env, bool *isWriteMem, uint32_t p1, uint32_t p2, uint32_t p3, uint32_t p4, uint32_t *oldP1, uint32_t *oldP2, uint32_t *oldP3, uint32_t *oldP4); // Установка приоритета bool Modem_Get_Priority(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); // bool Modem_Get_RestrictSc(tAtCmd *env, bool *isWriteMem, char *value, char oldValue[255]); bool Modem_Get_BanReg(tAtCmd *env, bool *isWriteMem, char *value, char oldValue[255]); // Установка региона bool Modem_Get_RegRegion(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); // Время жизни регистрации bool Modem_Get_RegTime(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); // Чтение версии bool Modem_Get_Version(tAtCmd *env, char *versionModem, uint8_t *sizeModem, char *versionCrypto, uint8_t *sizeCrypto); bool Modem_Get_MaxDist(tAtCmd *env, bool *isWriteMem, uint32_t value, uint32_t *oldValue); bool Modem_Get_Reg(tAtCmd *env, bool *isWriteMem, char *value, char oldValue[255]); bool Modem_Ban(tAtCmd *env, bool *isWriteMem, char *value); bool Modem_MaxDist(tAtCmd *env, bool *isWriteMem, uint32_t value); #endif //MODEM_GONEC_H