| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- /**
- * @file ubus_config.h
- *
- * @brief Konfigurácia protokolu uBUS
- * @author Juraj Dudak
- * @date 20.12.2022
- */
- /** @addtogroup Firmware
- * @{
- */
- /** @addtogroup Implementácia_uBUS
- *
- * @{
- */
- /** @addtogroup Konfigurácia
- * @brief Konfigurácia komunikačného zásobníka uBUS, súbor ubus_config.h
- *
- * @{
- *
- * ## Základné nastavenia
- *
- * Základné naastavenie konfigurácie je potrebné urobiť pri konfiguráciu použitého MCU. Pri konfigurácii MCU je potrebné nastaviť:
- *
- * - želanú frekvenciu jadra.
- * - aktivovať komunikažné rozhranie USART
- * - povoliť prerušenie na USART
- * - v prípade aktivácie nastavenia USE_USART_DMA_TX, pridať DMA kanál pre smer TX
- * - aktivovať základný časovať TIM (TIM6 alebo TIM7)
- * - povoliť prerušenie na použitom časovači.
- * - GPIO pin procesora, ktorý bude použitý pre svetelnú signalizáciu
- */
- #ifndef __UBUS_CONFIG_H__
- #define __UBUS_CONFIG_H__
- /** @brief Základná komunikačná rýchlosť modulu. */
- #define UART_BAUDRATE 19200
- /** @brief Parita pre komunikačné rozhanie.
- *
- * Povolené hodnoty: UART_PARITY_EVEN, UART_PARITY_ODD, UART_PARITY_NONE. Default: UART_PARITY_EVEN
- */
- #define UBUS_UART_PARITY UART_PARITY_EVEN
- /**
- * @brief Rodina dosky, resp. typové označenie meracieho modulu.
- *
- * Maximálna povolená dĺžka sú 4 znaky.
- */
- #define FW_FAMILY "TEST"
- /**
- * @brief Globalne povoluje resp zakazuje použitie možnosti šifrovania komunikácie.
- *
- * Vypnutie RSA šifrovania ušetrí cca 2kB.
- */
- #define ENABLE_RSA 1
- /**
- * @brief Globalne povoluje resp zakazuje vypoctu pomocou tabulky CRC.
- *
- * Vypnutím direktívy sa zmnčí pamäťová náročnosť FLASH (asi o 600 B) ale spomalí sa výpočet CRC prijímaného a odosielaného paketu.
- */
- #define USE_FAST_CRC 1
- /**
- * @brief Určuje, či sa použije hardvérové riadenie zbernice RS485.
- */
- #define USE_SW_485 1
- /**
- * @brief Spôsob odoslania odpovede (blokujúci/DMA).
- *
- * 0 - blokujuci spôsob, 1- neblokujúci spôsob pomocou DMA. Využitie neblokujúcej komunikácie má význam
- * len pri BULK dátovom prenose, kedy ako odpoveď na požiadavku o prebos väčšieho množstva dát (4kB) sa odošle viecero rámcov za sebou.
- */
- #define USE_USART_DMA_TX 0
- /**
- * @brief UART Timeout - pri jeho vypsani sa doska restartuje.
- *
- * Podmienka restaru, bude ze do doby vyprsania timeoutu nebude ziadna komunikacia na rozhrani UART.
- * hodnota = minuty + offset 35s
- */
- #define UART_WATCHDOG 30 * 60 * 1000 + 35000
- /**
- * @brief Podpora pre formát Qm.n pre namerané dáta.
- *
- * Touto direktívou sa zapne práca s typom float.
- */
- #define QFORMAT_SUPPORT_ENABLE 1
- /**
- * @brief Umožní monitorovanie prevádzkovýách napätí meracieho modulu.
- *
- * Ak je monitorovaine aktivované, vyžaduje sa aby v konfigurácii modulu uBUS bolo aktivované rozhranie ADC.
- */
- #define SELF_MONITORING 0
- /** @brief Aktivuje sub-slave 14 (0xE) - driver 1-wire. Implementácia je v súbore ubus_dev_E.c */
- //#define UBUS_CHANNEL_E
- /** @brief Aktivuje sub-slave 15 - pamäť konfigurácie (0xF). Implementácia je v súbore ubus_dev_F.c */
- #define UBUS_CHANNEL_F
- /**
- * @}
- */
- /**
- * @}
- */
- /**
- * @}
- */
- #endif
|