STM32f103 can的两个接收fifo使用方法
生活随笔
收集整理的這篇文章主要介紹了
STM32f103 can的两个接收fifo使用方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
stm32的文檔上說can有兩個接收fifo,但是對具體怎么使用并沒有特別提到,在網上也沒有找到靠譜或者統一的說法
我看了幾個例子和文檔也沒發現具體怎么設置使用哪個fifo
今天仔細的看了下文檔里的圖片,突然想到fifo可能是在設置filter的時候啟用的,然后測試了下證實了想法
可以看看can的幾個例子,filter是必須設置的,不然沒法收到數據,而使用哪個fifo就是圖里標紅的地方,看這一條設置規則對應的哪個fifo,那么這個fifo就能收到這個類型的數據
可以根據需要把不同的消息放到不同的fifo里去
?
?
中斷的配置,fifo0和fifo1的中斷名字不一樣,這個要注意
?
其實中斷函數的名字在:startup里的startup_stm32f10x_hd.s里有,自己找找看
?
記得開啟fifo中斷:
?
這個是fifo1的響應函數,設個中斷就可以看到有數據進來了
?
大家可以把filter的配置里綁定的fifo1改成fifo0,那么對應的fifo0的中斷就能收到數據了
從上面可以看到,fifo0和fifo1是暫存數據的,這兩個fifo是給filter用的,也就是filter先過濾數據,發現需要接收就把這個數據放到filter表項里指定的fifo中去
總結
以上是生活随笔為你收集整理的STM32f103 can的两个接收fifo使用方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 事件控制寄存器(AFIO_EVCR) (
- 下一篇: STM32的CAN总线的接收双FIFO使