位置:首页 > IC型号导航 > 首字符S型号页 > 首字符S的型号第9页 > ST92124JR9TC > ST92124JR9TC PDF资料 > ST92124JR9TC PDF资料1第413页

ST92F124 / F150 / F250 - 已知限制
已知限制
(续)
13.1.6 CAN FIFO时损坏2 FIFO
消息是PENDING
描述
在某些条件下, FIFO的腐败可以
发生在下列情况下:
当bxCAN RX FIFO已拥有2 MES系统
圣人(即FMP == 2 )
与应用程序释放的同一FIFO
(与指令CANx_CTRL_CRFRy | =
CRF_rfom ;
X = 0的CAN_0细胞
X = 1为CAN_1细胞
Y = 0的接收FIFO 0
Y = 1的接收FIFO 1 )
图2. FIFO腐败
FMP
初始状态
接收消息一
收到消息B
收到消息C
发布一个信息
0
1
2
3
2
FIFO
*
v
- - -
v
A
v
A
v
A
*
A
D
*
D
*
- -
*
B -
*
B C
v
B C
* v
B C
v
B C
* v
B C
而bxCAN要求的新的转移
收到消息到FIFO (这为期一个CPU
循环)
那么内部FIFO指针没有更新
但在FMP位被正确更新
影响到应用程序:
当FIFO指针没有正确更新,这
导致收到的最后一条消息是过度
写的任何传入的消息。这意味着1
消息丢失,如图中的例子
科幻gure
2
该bxCAN将无法恢复正常运行
直到器件复位。
当FIFO是空的, V和*指向相同的位置
*不动,因为FIFO满(正常工作)
发布消息B
2
和接收消息d
收到群发E
发布消息C
发布群发E
发布消息B
3
2
1
0
正常工作
*不动,指针curruption
D被用E覆盖
发布
发布B代替
*和v没有指向相同的消息
FIFO为空
E
v *
ê B C
v
*
ê B C
* v
ê B C
*指向下一个接收位置
被释放V指向下一条消息
413/426
1