Helper library to use modem_ref driver.
Dependencies: WizziCom WizziDebug ram_fs modem_ref
Dependents: D7A_Localisation D7A_1x_demo_send_file_data_and_forget D7A_1x_demo_CodeUpgradeProtocol D7A_1x_demo_LoRaWAN ... more
modem_d7a.h
00001 #ifndef __MODEM_D7A_H__ 00002 #define __MODEM_D7A_H__ 00003 00004 #include "mbed.h" 00005 #include "rtos.h" 00006 #include "WizziDebug.h" 00007 #include "WizziCom.h" 00008 00009 #include "hwcfg.h" 00010 #include "ram_fs.h" 00011 00012 #include "alp.h" 00013 #include "alp_helpers.h" 00014 #include "alp_lwan.h" 00015 #include "alp_spec.h" 00016 #include "d7a_1x.h" 00017 #include "d7a_1x_fs.h" 00018 #include "kal_fs.h" 00019 #include "kal_math.h" 00020 #include "modem_ref.h" 00021 #include "revision.h" 00022 00023 #define DEFAULT_ROOT_KEY {206, 87, 116, 11, 4, 30, 202, 254, 206, 87, 116, 11, 4, 30, 202, 254} 00024 00025 #define MODEM_TIMEOUT_LOCAL 1000 00026 #define MODEM_TIMEOUT_DISTANT 60000 00027 #define MODEM_WAIT_RESP(_s,_t) modem_wait_resp(&(_s), (_t), (char*)__FUNCTION__, __LINE__) 00028 00029 TYPEDEF_STRUCT_PACKED { 00030 uint8_t type; 00031 d7a_sp_cfg_t cfg; 00032 } alp_d7a_itf_t; 00033 00034 int modem_wait_resp(Semaphore* s, uint32_t timeout, char* function, uint32_t line); 00035 int modem_open(modem_ref_callbacks_t* callbacks); 00036 int modem_close(void); 00037 void modem_print_error(uint8_t itf, int error); 00038 00039 int modem_raw_alp(alp_payload_t* alp, alp_payload_t** alp_rsp); 00040 int modem_remote_raw_alp(void* itf, alp_payload_t* alp, alp_payload_t** alp_rsp); 00041 int modem_read_file(uint8_t fid, void *data, uint32_t offset, uint32_t length); 00042 int modem_remote_read_file(void* itf, void *istatus, uint8_t fid, void *data, uint32_t offset, uint32_t length); 00043 int modem_write_file(uint8_t fid, void *data, uint32_t offset, uint32_t length); 00044 int modem_remote_write_file(void* itf, void *istatus , uint8_t fid, void *data, uint32_t offset, uint32_t length); 00045 int modem_flush_file(uint8_t fid); 00046 int modem_declare_file(uint8_t fid, alp_file_header_t* header); 00047 int modem_notify_file(uint8_t fid, uint32_t offset, uint32_t length); 00048 int modem_d7a_enable_itf(void); 00049 int modem_d7a_disable_itf(void); 00050 00051 int modem_lwan_open(void); 00052 int modem_lwan_set_cfg(lwan_cfg_t* cfg); 00053 int modem_lwan_set_nls(lwan_nls_t* nls); 00054 int modem_lwan_send(alp_payload_t* alp); 00055 int modem_lwan_get_status(lwan_status_t* status); 00056 00057 00058 00059 #define D7_ITF_SIZE(_itf) (1+my_alp_itf_d7a_cfg_size(&(_itf)->cfg)) 00060 int my_alp_itf_d7a_cfg_size(d7a_sp_cfg_t* cfg); 00061 00062 #endif
Generated on Sun Jul 17 2022 05:41:35 by 1.7.2