![GigaDevice Semiconductor GD32A50 Series Скачать руководство пользователя страница 622](http://html.mh-extra.com/html/gigadevice-semiconductor/gd32a50-series/gd32a50-series_user-manual_2225782622.webp)
GD32A50x User Manual
622
filter data configurations in related filter register.
Searching conditions for matched Rx FIFO
Searching conditions for matched Rx FIFO, refers to
If the FS[1:0] bits in CAN_CTL0 register is 0 or 1, it means A or B format of filter table is
adopted, then all the IDE, RTR and ID fields will be compared, using bit 0 to bit 31 filter
data configurations in related filter register.
If the FS[1:0] bits in CAN_CTL0 register is 2, it means C format of filter table is adopted,
then the IDE, RTR will not be compared (no these fields in FIFO descriptor) and ID fields
will be compared, using bit 0 to bit 31 filter data configurations in related filter register.
If the FS[1:0] bits in CAN_CTL0 register is 3, it means D format of filter table is adopted,
then all frames are rejected.
Table 23-10.
Rx FIFO matching
Configuration bit
Field in Rx FIFO descriptor for matching
FS[1:0] (in CAN_CTL0
register)
IDE
RTR
ID
0
Filtered
1
Filtered
2
Never
Filtered
3
Not match
(1)
1.
Not match: All frames are rejected.
Shift-in
The shift-in process is the copy operation of the content from a Rx shift buffer (an internal
mailbox descriptor) to a Rx mailbox or Rx FIFO that matched it.
When there is a matching descriptor found in the FIFO or in the Rx mailboxes, a shift-in
process will be pending. The pending shift-in process starts to transfer when meets all of the
following conditions:
There is a matching winner for the frame in the Rx shift buffer.
The CAN bus is in:
-
The second bit of Intermission field.
-
The first bit of an Overload frame.
The target mailbox is not locked.
When the target mailbox of a pending shift-in process is unlocked during Inactive mode, the
pending shift-in process starts to transfer. While if the unlocking occurs when LPS bit in
CAN_CTL0 register is 1, the pending shift-in process will still be delayed until LPS bit changes
to 0.
When the shift-in process is on-going, the BUSY bit (CODE[0]) of the target mailbox is set to
indicate that the mailbox is being updated.