I use STM Peripheral Library to configure and use CANBus. The problem is that I have to put a delay between Tx packets or I start to drop packets. Entering read status lines, etc., It seems to have no effect. Does anyone have a working example that doesn't include adding a magic number delay?
This does not apply to CAN or STM32, but really about how often something happens in the microcontroller.
There are several ways to solve this problem:
1) Use a timer
, , . (.. 10 ). . , ; "", , , , , , .
2) , FreeRTOS
RTOS , . , , . , 10 , 200 .
STM32 + HAL + FreeRTOS
# , 3x . .
,
translation()
Source: https://habr.com/ru/post/1628163/More articles:How to disable F10 / F11 if I am not debugging Visual Studio? - visual-studioWhy evaluating boolean objects takes time in python - performance"function call must have constant value in constant expression" - c ++C #: HttpClient, file upload process when uploading multiple files as MultipartFormDataContent - c #VBA Using Sendkey to Launch Excel Hot Keys - vbaGithub rewrites old project - javaConvert multiple columns from integer to numeric in R data.frame - type-conversiong_bus_get_sync returns NULL, but dbus_g_bus_get_private works - cКак предотвратить спам прослушивания onclick? - javascriptСравнение строки, созданной с помощью char [] - javaAll Articles