嵌入式Linux下CAN匯流排配置
阿新 • • 發佈:2018-12-14
題背景:本人開發板使用的是迅為iTOP4412精英版,額外購買的CAN/485模組,如下圖:
但是插上模組之後,在終端使用ifconfig can0命令發現開發板讀不到CAN裝置,顯示“ifconfig: SIOCGIFFLAGS: No such device”。如下圖:
在重新配置核心後,可以讀出CAN的裝置來了。如下圖
配置方法如下:
(1) 開啟官方搭建好環境的Ubuntu,進入核心目錄
(2) 在核心目錄下輸入命令“make menuconfig”進入核心配置介面
(3) 因為CAN匯流排是GPIO上SPI的複用,所以首先要配置SPI。
首先進入“Device Drivers”;
再進入“SPI Support”
選中“GPIO-based Bitbanging SPI Master”和“Samsung S3C64XX series type SPI”
取消選中“RC522 Module driver support”(防止佔用CAN埠)
(4)回到主介面,進入“Networking Support”
進入“CAN bus system support”
進入“Can Device Drivers”
選中“Platform CAN drivers with Netlink support”,“CAN bit-timing calculation”,“Microchip MCP251x SPI CAN controllers”三項。
(5)退出核心配置介面,詢問是否儲存對話方塊選擇“Yes”。
(6)使用“make zImage”編譯核心後,將核心燒寫進開發板即可。