STM32 CAN 通信 濾波設置問題

使用的是 32位的標識符屏蔽位模式

CAN_FilterIdHigh和CAN_FilterIdLow組合成一個32位寄存器,用來存儲將要過濾的ID

CAN_FilterMaskIdHigh和CAN_FilterMaskIdLow組合成一個32位寄存器,用來表示這個ID的哪些位

必須符合(置1),哪些位不care(置0).

使用標示符屏蔽模式可以實現接收包含特定位的幀,即一系列的幀。

 

CAN的接收郵箱標示符寄存器中,31~3位存儲29位的擴展標示符。

 


所以通過濾波器要接收ID爲0x0A的幀,

CAN_FilterIdLow = 0x000A << 3; CAN_FilterIdHigh = 0;

CAN_FilterMaskIdLow = 0x00FF << 3; CAN_FilterMaskIdHigh = 0;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章