can_config.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. /*
  2. * Copyright (c) 2006-2025, RT-Thread Development Team
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. * Change Logs:
  7. * Date Author Notes
  8. * 2025-02-11 kurisaW first version
  9. */
  10. #ifndef __CAN_CONFIG_H__
  11. #define __CAN_CONFIG_H__
  12. #include <rtthread.h>
  13. #include "hal_data.h"
  14. #ifdef __cplusplus
  15. extern "C"
  16. {
  17. #endif
  18. #if defined(BSP_USING_CAN0)
  19. #ifndef CANFD0_CONFIG
  20. #define CANFD0_CONFIG \
  21. { \
  22. .name = "canfd0", \
  23. .num_of_mailboxs = 48, \
  24. .p_api_ctrl = &g_canfd0_ctrl, \
  25. .p_cfg = &g_canfd0_cfg, \
  26. }
  27. #endif /* CAN0_CONFIG */
  28. #endif /* BSP_USING_CAN0 */
  29. #if defined(BSP_USING_CAN1)
  30. #ifndef CANFD1_CONFIG
  31. #define CANFD1_CONFIG \
  32. { \
  33. .name = "canfd1", \
  34. .num_of_mailboxs = 48, \
  35. .p_api_ctrl = &g_canfd1_ctrl, \
  36. .p_cfg = &g_canfd1_cfg, \
  37. }
  38. #endif /* CAN1_CONFIG */
  39. #endif /* BSP_USING_CAN1 */
  40. const canfd_afl_entry_t p_canfd0_afl[CANFD_CFG_AFL_CH0_RULE_NUM] =
  41. {
  42. {
  43. .id =
  44. {
  45. .id = 0x00,
  46. .frame_type = CAN_FRAME_TYPE_DATA,
  47. .id_mode = CAN_ID_MODE_STANDARD
  48. },
  49. .destination =
  50. {
  51. .minimum_dlc = CANFD_MINIMUM_DLC_0,
  52. .rx_buffer = CANFD_RX_MB_NONE,
  53. .fifo_select_flags = CANFD_RX_FIFO_0
  54. }
  55. },
  56. };
  57. const canfd_afl_entry_t p_canfd1_afl[CANFD_CFG_AFL_CH1_RULE_NUM] =
  58. {
  59. {
  60. .id =
  61. {
  62. .id = 0x01,
  63. .frame_type = CAN_FRAME_TYPE_DATA,
  64. .id_mode = CAN_ID_MODE_STANDARD
  65. },
  66. .destination =
  67. {
  68. .minimum_dlc = CANFD_MINIMUM_DLC_1,
  69. .rx_buffer = CANFD_RX_MB_NONE,
  70. .fifo_select_flags = CANFD_RX_FIFO_1
  71. }
  72. },
  73. };
  74. #ifdef __cplusplus
  75. }
  76. #endif
  77. #endif