nbus_config.h.default 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. /**
  2. * @file nbus_config.h
  3. *
  4. * @brief Konfigurácia protokolu nBUS
  5. * @author Juraj Dudak
  6. * @date 29.10.2023
  7. */
  8. #ifndef __NBUS_CONFIG_H__
  9. #define __NBUS_CONFIG_H__
  10. #define MODULE_ADDRESS 5
  11. #define MODULE_MASTER 0
  12. #define MODULE_SLAVE 1
  13. // MUST BE 2 BYTE LONG
  14. #define VERSION_FW "01" //MAJOR MINOR
  15. // MUST BE 2 BYTE LONG
  16. #define VERSION_HW "01" //MAJOR MINOR
  17. // MUST BE 8 BYTE LONG
  18. #define MODULE_NAME "prototyp"
  19. // Do not modify
  20. #define MODULE_FSR 1
  21. #define MODULE_IMU 2
  22. #define MODULE MODULE_FSR
  23. #if MODULE == MODULE_FSR
  24. // MUST BE 3 BYTE LONG
  25. #define MODULE_TYPE "FSR"
  26. #define MODULE_INIT_IP_ADC
  27. #endif
  28. #if MODULE == MODULE_IMU
  29. // MUST BE 3 BYTE LONG
  30. #define MODULE_TYPE "IMU"
  31. #define MODULE_INIT_IP_SPI
  32. #endif
  33. #define CRC8_INIT_VALUE 0x0
  34. /** @brief Základná komunikačná rýchlosť modulu. */
  35. #define UART_BAUDRATE 921600
  36. #define UART_TIMER_PRESCALER 7 //32MHz/8 => Mhz t=0.25us (1)
  37. /**
  38. * @brief Určuje, či sa použije hardvérové riadenie zbernice RS485.
  39. */
  40. #define USE_SW_485 1
  41. /**
  42. * @brief Spôsob odoslania odpovede (blokujúci/DMA).
  43. *
  44. * 0 - blokujuci spôsob, 1- neblokujúci spôsob pomocou DMA. Využitie neblokujúcej komunikácie má význam
  45. * 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.
  46. */
  47. #define USE_USART_DMA_TX 1
  48. /**
  49. * @brief UART Timeout - pri jeho vypsani sa doska restartuje.
  50. *
  51. * Podmienka restaru, bude ze do doby vyprsania timeoutu nebude ziadna komunikacia na rozhrani UART.
  52. * hodnota = minuty + offset 35s
  53. */
  54. #define UART_WATCHDOG 30 * 60 * 1000 + 35000
  55. #endif