|
Eric,硬汉新年好!
请教:在FDCAN例程中,对于 FDCAN1 和 FDCAN2 的发送配置都一样的:
hfdcan1.Init.TxEventsNbr = 16; /* 设置Tx Event FIFO中元素个数,范围0-32 */
hfdcan1.Init.TxBuffersNbr = 8; /* 设置Tx Buffer中元素个数,范围0-32 */
hfdcan1.Init.TxFifoQueueElmtsNbr = 8; /* 设置用于Tx FIFO/Queue的Tx Buffers个数。范围0到32 */
hfdcan1.Init.TxFifoQueueMode = FDCAN_TX_FIFO_OPERATION; /* 设置FIFO模式或者QUEUE队列模式 */
hfdcan1.Init.TxElmtSize = FDCAN_DATA_BYTES_8; /* 设置Tx Element中的数据域大小,支持8,12,16,20,24,32,48或者64字节 */
hfdcan2.Init.TxEventsNbr = 16; /* 设置Tx Event FIFO中元素个数,范围0-32 */
hfdcan2.Init.TxBuffersNbr = 8; /* 设置Tx Buffer中元素个数,范围0-32 */
hfdcan2.Init.TxFifoQueueElmtsNbr = 8; /* 设置用于Tx FIFO/Queue的Tx Buffers个数。范围0到32 */
hfdcan2.Init.TxFifoQueueMode = FDCAN_TX_FIFO_OPERATION; /* 设置FIFO模式或者QUEUE队列模式 */
hfdcan2.Init.TxElmtSize = FDCAN_DATA_BYTES_8; /* 设置Tx Element中的数据域大小,支持8,12,16,20,24,32,48或者64字节 */
有几个问题没弄清楚:
1、Tx 事件FIFO 一共有32个,Tx 缓冲区总共也是32个,当模式设置成 FDCAN_TX_FIFO_OPERATION 时,Tx 发送是选择 FIFO呢,还是缓冲区?
2、如例程, 发送事件数量都为8时,FDCAN1 和 FDCAN2是共享使用 FIFO0~FIFO7,还是FDCAN1使用FIFO0~FIFO7,FDCAN2使用FIFO8~FIFO15呢?
3、Tx 事件FIFO 和 Tx缓冲区有什么区别呢?
谢谢!
|
|