Демонстрационная прошивка отладочного комплекта МТС NB-IoT
|
См. документацию. 1 #ifndef BOARD_DRIVERS_H_INCLUDED
2 #define BOARD_DRIVERS_H_INCLUDED
16 #include "stm32l1xx.h"
32 #define FIRMWARE_VERSION "2.4 beta 2, 22.01.2021"
34 #define MTS_COAP_SERVER_IP "195.34.49.22"
35 #define MTS_COAP_SERVER_PORT 6683
38 #define DEFAULT_CLOCK_FREQ 16000000UL
39 #define CONSOLE_BAUDRATE 115200UL
41 #define GNSS_BAUDRATE 9600UL
47 #define ECHO_INPUT_CHARS 0
48 #define SARA_R410M_DEFAULT_BAUDRATE 115200UL
52 #define LOCAL_TSENSOR_I2C_ADDR 0x48
53 #define LOCAL_ACCEL_I2C_ADDR 0x18
62 #define MCU_UNIQUE_IDENTIFIER_ADDRESS ((uint32_t *)0x1FF800CC)
74 #define OSC_STARTUP_CYCLES_MAX 2000000UL
81 #define TMR_CNT_1MSEC 1000
83 #define BTN_POLL_PERIOD 50000
87 #define LOGGER_MODE_VALUE 15
90 #define SETTINGS_SIGNATURE_0 0xA5
91 #define SETTINGS_SIGNATURE_1 0x55
93 #define SETTINGS_SIGNATURE_2 0xAA
101 uint8_t target_server_IP[48];
103 uint8_t target_URL[128];
105 uint8_t NIDD_APN_name[64];
180 #define EEPROM_START_ADDRESS ((uint32_t *)0x08080000)
191 void FLASH_WriteEEPROM(
volatile uint32_t *eeprom_ptr,uint32_t *data_ptr,uint16_t data_size_words);
volatile uint32_t CYCLES_PER_1SEC
Калиброванное значение: количество итераций пустого цикла за 1 секунду при текущей тактовой частоте....
uint8_t logger_mode_on_startup
uint8_t use_NIDD
Флаг использования технологии NIDD. Если записана единица, передача будет выполняться через NIDD,...
uint32_t get_uptime_ms(void)
Возвращает время с момента начала работы прошивки
void FLASH_WriteEEPROM(volatile uint32_t *eeprom_ptr, uint32_t *data_ptr, uint16_t data_size_words)
Запись в EEPROM.
volatile uint8_t LSE_failed
В случае, если генератор LSE запустить не удалось, значение этой переменной будет ненулевым.
uint8_t gnss_privacy_mode
Если переменная отлична от нуля, в пакет телеметрии не будут включаться истинные данные,...
Структура, хранящая настройки работы основного демонстрационного приложения
uint16_t target_server_port
Номер порта на сервере для передачи телеметрии через IP.
void recall_device_settings(device_setup_data_t *data)
Загрузка настроек устройства из области EEPROM.
void init_board(void)
Функция выполняет настройку тактирования и инициализацию периферии, используемой демонстрационным при...
void delay_ms(uint32_t N)
Приостанавливает выполнение программы на заданное время. Значение задержки задается в миллисекундах.
uint32_t get_button_press(void)
Возвращает время удержания кнопки нажатой с момента предыдущего вызова функции.
void SARA_R410_PWR_ON_pulse(void)
Генерирует импульс низкого уровня продолжительностью примерно 500 мс на линии PWR_ON радиомодуля.
void switch_LED(uint8_t state)
Включает или выключает светодиод на плате.
void store_device_settings(device_setup_data_t *data)
Сохранение настроек устройства в область EEPROM.
uint32_t telemetry_interval_ms
Интервал передачи телеметрии в миллисекундах
void apply_backspace(uint8_t *str, uint16_t max_length)
Модифицирует строку с учетом символов backspace.