From 3af64bb2b209706b2f3db2ea08fd1b663c623c34 Mon Sep 17 00:00:00 2001 From: Lizongdi <1210855344@qq.com> Date: Mon, 29 Jun 2026 16:36:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9FDCAN=E6=B3=A2=E7=89=B9?= =?UTF-8?q?=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Core/Src/fdcan.c | 4 ++-- cmake/stm32cubemx/CMakeLists.txt | 15 +++++++-------- robot | 2 +- robot_h743.ioc | 14 ++++++++------ 4 files changed, 18 insertions(+), 17 deletions(-) diff --git a/Core/Src/fdcan.c b/Core/Src/fdcan.c index c10df44..5e39066 100644 --- a/Core/Src/fdcan.c +++ b/Core/Src/fdcan.c @@ -47,7 +47,7 @@ void MX_FDCAN1_Init(void) hfdcan1.Init.NominalPrescaler = 20; hfdcan1.Init.NominalSyncJumpWidth = 1; hfdcan1.Init.NominalTimeSeg1 = 5; - hfdcan1.Init.NominalTimeSeg2 = 1; + hfdcan1.Init.NominalTimeSeg2 = 2; hfdcan1.Init.DataPrescaler = 1; hfdcan1.Init.DataSyncJumpWidth = 1; hfdcan1.Init.DataTimeSeg1 = 1; @@ -95,7 +95,7 @@ void MX_FDCAN2_Init(void) hfdcan2.Init.NominalPrescaler = 20; hfdcan2.Init.NominalSyncJumpWidth = 1; hfdcan2.Init.NominalTimeSeg1 = 5; - hfdcan2.Init.NominalTimeSeg2 = 1; + hfdcan2.Init.NominalTimeSeg2 = 2; hfdcan2.Init.DataPrescaler = 1; hfdcan2.Init.DataSyncJumpWidth = 1; hfdcan2.Init.DataTimeSeg1 = 1; diff --git a/cmake/stm32cubemx/CMakeLists.txt b/cmake/stm32cubemx/CMakeLists.txt index 762fec1..53fdbbf 100644 --- a/cmake/stm32cubemx/CMakeLists.txt +++ b/cmake/stm32cubemx/CMakeLists.txt @@ -108,7 +108,7 @@ set(FreeRTOS_Src ${CMAKE_CURRENT_SOURCE_DIR}/../../Middlewares/Third_Party/FreeRTOS/Source/timers.c ${CMAKE_CURRENT_SOURCE_DIR}/../../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.c ${CMAKE_CURRENT_SOURCE_DIR}/../../Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.c + ${CMAKE_CURRENT_SOURCE_DIR}/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.c ) set(LwIP_Src ${CMAKE_CURRENT_SOURCE_DIR}/../../Middlewares/Third_Party/LwIP/src/netif/ppp/auth.c @@ -203,8 +203,7 @@ set(MX_LINK_DIRS set(MX_LINK_LIBS STM32_Drivers ${TOOLCHAIN_LINK_LIBRARIES} - FreeRTOS - LwIP + FreeRTOS LwIP ) # Interface library for includes and symbols add_library(stm32cubemx INTERFACE) @@ -216,11 +215,11 @@ add_library(STM32_Drivers OBJECT) target_sources(STM32_Drivers PRIVATE ${STM32_Drivers_Src}) target_link_libraries(STM32_Drivers PUBLIC stm32cubemx) - -# Create FreeRTOS static library -add_library(FreeRTOS OBJECT) -target_sources(FreeRTOS PRIVATE ${FreeRTOS_Src}) -target_link_libraries(FreeRTOS PUBLIC stm32cubemx) + +# Create FreeRTOS static library +add_library(FreeRTOS OBJECT) +target_sources(FreeRTOS PRIVATE ${FreeRTOS_Src}) +target_link_libraries(FreeRTOS PUBLIC stm32cubemx) # Create LwIP static library add_library(LwIP OBJECT) diff --git a/robot b/robot index 2b68578..778a14c 160000 --- a/robot +++ b/robot @@ -1 +1 @@ -Subproject commit 2b68578a946d91386e7ff70c84a04b1bc8c3f608 +Subproject commit 778a14c63b91f62ea8b058caf330792cfc4050cc diff --git a/robot_h743.ioc b/robot_h743.ioc index 830c086..93be304 100644 --- a/robot_h743.ioc +++ b/robot_h743.ioc @@ -183,21 +183,23 @@ ETH.RxBuffAddress=0x30040400 ETH.RxBuffLen=1528 ETH.RxDescAddress=0x30040000 ETH.TxDescAddress=0x30040200 -FDCAN1.CalculateBaudRateNominal=285714 -FDCAN1.CalculateTimeBitNominal=3500 +FDCAN1.CalculateBaudRateNominal=250000 +FDCAN1.CalculateTimeBitNominal=4000 FDCAN1.CalculateTimeQuantumNominal=500.0 -FDCAN1.IPParameters=NominalPrescaler,NominalTimeSeg1,RxFifo0ElmtsNbr,TxFifoQueueElmtsNbr,CalculateTimeQuantumNominal,CalculateTimeBitNominal,CalculateBaudRateNominal +FDCAN1.IPParameters=NominalPrescaler,NominalTimeSeg1,RxFifo0ElmtsNbr,TxFifoQueueElmtsNbr,CalculateTimeQuantumNominal,CalculateTimeBitNominal,CalculateBaudRateNominal,NominalTimeSeg2 FDCAN1.NominalPrescaler=20 FDCAN1.NominalTimeSeg1=5 +FDCAN1.NominalTimeSeg2=2 FDCAN1.RxFifo0ElmtsNbr=32 FDCAN1.TxFifoQueueElmtsNbr=32 -FDCAN2.CalculateBaudRateNominal=285714 -FDCAN2.CalculateTimeBitNominal=3500 +FDCAN2.CalculateBaudRateNominal=250000 +FDCAN2.CalculateTimeBitNominal=4000 FDCAN2.CalculateTimeQuantumNominal=500.0 -FDCAN2.IPParameters=NominalPrescaler,NominalTimeSeg1,RxFifo0ElmtsNbr,TxFifoQueueElmtsNbr,CalculateTimeQuantumNominal,CalculateTimeBitNominal,CalculateBaudRateNominal,MessageRAMOffset +FDCAN2.IPParameters=NominalPrescaler,NominalTimeSeg1,RxFifo0ElmtsNbr,TxFifoQueueElmtsNbr,CalculateTimeQuantumNominal,CalculateTimeBitNominal,CalculateBaudRateNominal,MessageRAMOffset,NominalTimeSeg2 FDCAN2.MessageRAMOffset=0x500 FDCAN2.NominalPrescaler=20 FDCAN2.NominalTimeSeg1=5 +FDCAN2.NominalTimeSeg2=2 FDCAN2.RxFifo0ElmtsNbr=32 FDCAN2.TxFifoQueueElmtsNbr=32 FREERTOS.FootprintOK=true