我的用例会受益于高速,但我无法让它以 60Hz 运行。我在带有 XCUBE-TOF1 软件的 NUCLEO-L476RG 板上使用 X-NUCLEO-53L5A1。我正在使用 SimpleRanging 示例程序:XCUBE-TOF1ProjectsNUCLEO-L476RGExamples53L5A153L5A1_SimpleRanging
我已经在轮询周期较短的轮询模式和中断模式下进行了尝试。两者都不会超过 17Hz。
我在 app_x-cube-tof1.c 中编辑这一行以提高速度:
我插入了一个简单的 HAL_Get
tick() 并计算了实际频率,它的运行速度不会超过 16.67Hz。5Hz 和 10Hz 效果很好,但随后会达到最大值,如下所示:
- Profile.Frequency = 5; /* Actually runs at 4.97Hz */
- Profile.Frequency = 10; /* Actually runs at 9.95Hz */
- Profile.Frequency = 20; /* Actually runs at 16.59Hz */
- Profile.Frequency = 30; /* Actually runs at 16.61Hz */
- Profile.Frequency = 60; /* Actually runs at 16.67Hz */
有什么限制它的想法,或者我应该在哪里优化代码以加快速度?谢谢你的帮助!