Rh850 上的 CAN Stack 实现

标签 c embedded can-bus

我正在研究 CAN 堆栈并使用 RH850 Controller ,它每个 channel 有 16 个 Rx 缓冲区和 8 个 Tx 缓冲区。我需要处理大约 70-75 个 Rx 帧和 30-35 个 Tx 帧。实现这么多框架是否有任何资源问题?请回复您对此的经验/想法。 提前致谢!

最佳答案

一切都取决于您的环境。无论如何,您应该避免在中断处理程序期间直接从这些硬件缓冲区分析 CAN 消息,因为这会花费太多时间。我建议您检查 DMA 是否支持 CAN 消息传输。如果是,您可以在 RAM 中拥有更大的空间,并且不受硬件缓冲区的限制。此解决方案的最大优点是您无需立即分析帧,因此您可以专注于更关键的任务。

关于Rh850 上的 CAN Stack 实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34656809/

相关文章:

arrays - 将给定大小的字符数组复制到 C 中的整数的正确方法是什么?

mobile - 根据 SAE J1939 标准进行编程

c - 动态字符数组大小调整

linux - busybox 不完全支持命令 "ip"?

c - 带回调函数的驱动程序

C 风格类型注解与其他注解

c - 为什么C中的全局变量初始值为零?

CMSIS-驱动外设

c - 头文件中的内存分配

embedded - 是时候在9600波特序列上发送32KB了?