那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

迅為RK3568驅動指南|如何在Linux中使用模擬SPI

北京迅為電子 ? 2024-08-01 13:37 ? 次閱讀

瑞芯微RK3568芯片是一款定位中高端的通用型SOC,采用22nm制程工藝,搭載一顆四核Cortex-A55處理器和Mali G52 2EE 圖形處理器。RK3568 支持4K 解碼和 1080P 編碼,支持SATA/PCIE/USB3.0 外圍接口。RK3568內置獨立NPU,可用于輕量級人工智能應用。RK3568 支持安卓 11 和 linux 系統,主要面向物聯網網關、NVR 存儲、工控平板、工業檢測、工控盒、卡拉 OK、云終端、車載中控等行業。

第194章 如何在Linux中使用模擬SPI
在講解SPI基礎的時候提到過SPI可以分為硬件SPI和軟件SPI,在前面的章節中使用的都是硬件SPI,當硬件SPI不夠用時,可以使用GPIO來模擬SPI,在本節課將對軟件SPI進行講解。

I2C協議相比,SPI通信協議比較簡單,沒有起始信號、應答信號和終止信號,所以不會從零編寫模擬SPI的驅動代碼,直接使用Linux源碼中已經寫好的驅動程序即可。

194.1 內核和設備樹配置
首先將模擬SPI驅動編譯進內核,在make menuconfig圖形化配置界面中選中如下選項

Device Drivers --->

[*]SPI support -->

<*> GPIO-based bitbanging SPI Master //選中

wKgZomarHsaAQyPqAAQxtB2QSEw865.png

軟件SPI選定的引腳為開發板背面的4個GPIO,具體引腳功能圖如下所示:

wKgaomarHs-ACfOKAAE0CSCwdL0297.png

設備樹修改步驟如下所示:

首先對rk3568-evb1-ddr4-v10.dtsi設備樹進行修改,在根節點添加SPI5節點,具體內容如下所示:

spi5: spi@gpiol {
compatible = "spi-gpio";
#address-cells = <1>;
gpio-sck = <&gpio0 RK_PB0_GPIO_ACTIVE_LOW>;
gpio-miso = <&gpio1 RK_PB0_GPIO_ACTIVE_LOW>;
gpio-mosi = <&gpio1 RK_PB1_GPIO_ACTIVE_LOW>;
cs-gpios = <&gpio1 RK_PB2_GPIO_ACTIVE_LOW>;
num-chipselects = <1>;
pinctrl-names = "default";
pinctrl-0 = <&spi5_gpios>;
status = "disabled";
};

wKgZomarHtiAFA1EAAMS6Nqgf88656.png


然后對pinctrl節點進行追加,追加內容如下所示:

wKgaomarHuaAdKspAAJc5E6Xx48565.png

spi5_gpios: gpios {
rockchip,pins = <0 RK_PB0 0 &pcfg_pull_none>,
<1 RK_PB0 0 &pcfg_pull_none>,
<1 RK_PB1 0 &pcfg_pull_none>,
<1 RK_PB2 0 &pcfg_pull_none>,
>;
};


最后修改之前編寫的mcp2515節點,修改之后的內容如下所示:

&spi5 {
status = "okay";
mcp2515:mcp2515@0 {
compatible = "rockchip,spidev";
reg = <0>;
spi-max-frequency = <10000000>;
status = "okay";
};
};

wKgaomarHvOAbOmnAAJ4yy_23g4226.png


修改完成之后保存,然后重新編譯內核鏡像,編譯完成的內核鏡像存放路徑為“iTOP-3568開發板\03_【iTOP-RK3568開發板】指南教程\02_Linux驅動配套資料\04_Linux驅動程序\120_soft_spi\01_修改好的內核”。

194.2 運行測試
首先要確保燒寫的是上一小節編譯出來的內核,燒寫完成開發板啟動之后,使用“ls /dev/spidev5.0”查看是否存在spidev5.0節點,如下圖所示:

wKgaomarHvyAbdGpAADOpaIO-qs289.png

修改完成之后保存,然后重新編譯內核鏡像,編譯完成的內核鏡像存放路徑為“iTOP-3568開發板\03_【iTOP-RK3568開發板】指南教程\02_Linux驅動配套資料\04_Linux驅動程序\120_soft_spi\01_修改好的內核”。

194.2 運行測試
首先要確保燒寫的是上一小節編譯出來的內核,燒寫完成開發板啟動之后,使用“ls /dev/spidev5.0”查看是否存在spidev5.0節點,如下圖所示:

wKgaomarHwCASgmcAAKVgN5Osgk207.png

可以看到TX和RX收發的數據是一樣,證明SPI回環成功,至此模擬SPI測試就完成了。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11345

    瀏覽量

    210378
  • SPI
    SPI
    +關注

    關注

    17

    文章

    1721

    瀏覽量

    92108
  • RK3568
    +關注

    關注

    4

    文章

    525

    瀏覽量

    5232
  • 迅為電子
    +關注

    關注

    0

    文章

    36

    瀏覽量

    58
收藏 人收藏

    評論

    相關推薦

    RK3568開發Android12系統燒寫固件

    RK3568開發Android12系統燒寫 Android 固件
    的頭像 發表于 08-01 16:22 ?2339次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b>開發Android12系統燒寫固件

    RK3568核心板在智慧門禁產品中的解決方案

    RK3568核心板在智慧門禁產品中的解決方案
    的頭像 發表于 07-14 15:50 ?852次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b>核心板在智慧門禁產品中的解決方案

    RK3568開發板驅動指南Linux中通用SPI設備驅動

    RK3568開發板驅動指南Linux中通用SPI
    的頭像 發表于 01-23 11:02 ?1497次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b>開發板<b class='flag-5'>驅動</b><b class='flag-5'>指南</b><b class='flag-5'>Linux</b>中通用<b class='flag-5'>SPI</b>設備<b class='flag-5'>驅動</b>

    混合部署 | 在RK3568上同時部署RT-Thread和Linux系統

    (非對稱多處理)是一種更靈活的架構,允許不同的核心運行不同的操作系統,實現更高效的資源利用和任務分配。通過 AMP,系統可以為不同的任務選擇最合適的操作系統和處理方式。 當前iTOP-RK3568開發板
    發表于 09-18 10:54

    RK3568核心板

    RK3568核心板
    的頭像 發表于 03-03 15:55 ?1773次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b>核心板

    基于RK3568開發板的嵌入式學習之Linux驅動視頻

    基于RK3568開發板的嵌入式學習之Linux驅動視頻
    的頭像 發表于 05-19 16:30 ?1052次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b>基于<b class='flag-5'>RK3568</b>開發板的嵌入式學習之<b class='flag-5'>Linux</b><b class='flag-5'>驅動</b>視頻

    RK3568開發板GPIO之外接模塊

    RK3568開發板GPIO之外接模塊
    的頭像 發表于 08-24 17:41 ?1481次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b>開發板GPIO之外接模塊

    RK3568開發板可實現多屏異顯控方案

    RK3568開發板可實現多屏異顯控方案
    的頭像 發表于 07-15 17:30 ?1932次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b>開發板可實現多屏異顯控方案

    RK3568開發板外接模塊之HX711 稱重模塊

    RK3568開發板外接模塊之HX711 稱重模塊
    的頭像 發表于 08-30 15:24 ?1698次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b>開發板外接模塊之HX711 稱重模塊

    itop-rk3568指導手冊v3

    itop-rk3568指導手冊,專為RK3568編寫!拒絕網絡拼湊!持續更新中.
    發表于 09-06 14:09 ?33次下載

    RK3568開發板驅動開發指南-輸入子系統

    RK3568開發板驅動開發指南-輸入子系統
    的頭像 發表于 02-23 15:11 ?993次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b>開發板<b class='flag-5'>驅動</b>開發<b class='flag-5'>指南</b>-輸入子系統

    北京RK3568開發板嵌入式學習之Linux驅動全新更新-CAN+

    北京RK3568開發板嵌入式學習之Linux驅動全新更新-CAN+
    的頭像 發表于 09-04 15:29 ?612次閱讀
    北京<b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b>開發板嵌入式學習之<b class='flag-5'>Linux</b><b class='flag-5'>驅動</b>全新更新-CAN+

    混合部署 | 在RK3568上同時部署RT-Thread和Linux系統-電子

    混合部署 | 在RK3568上同時部署RT-Thread和Linux系統-電子
    的頭像 發表于 09-06 15:32 ?495次閱讀
    混合部署 | 在<b class='flag-5'>RK3568</b>上同時部署RT-Thread和<b class='flag-5'>Linux</b>系統-<b class='flag-5'>迅</b><b class='flag-5'>為</b>電子

    開發更便利!RK3568/RK3588 定制分區鏡像發布

    開發更便利!RK3568/RK3588 定制分區鏡像發布
    的頭像 發表于 11-11 14:00 ?588次閱讀
    開發更便利!<b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b>/<b class='flag-5'>RK</b>3588 定制分區鏡像發布

    RK3568開發板SPI驅動指南-mcp2515驅動編寫:讀寄存器函數

    RK3568開發板SPI驅動指南-mcp2515驅動
    的頭像 發表于 01-20 14:43 ?312次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b>開發板<b class='flag-5'>SPI</b><b class='flag-5'>驅動</b><b class='flag-5'>指南</b>-mcp2515<b class='flag-5'>驅動</b>編寫:讀寄存器函數
    神娱乐百家乐的玩法技巧和规则| 百家乐官网高额投注| 破战百家乐的玩法技巧和规则 | 威尼斯人娱乐城--老品牌值得您信赖| 五星百家乐官网的玩法技巧和规则 | 百家乐官网稳定打法| 百家乐娱乐城体验金| 百家乐软件代打| 拉斯维加斯娱乐| 真人百家乐分析软件是骗局| 大亨百家乐官网游戏| 威尼斯人娱乐城首选d77com| 网上百家乐辅助软件| 凯斯百家乐官网的玩法技巧和规则 | 威尼斯人娱乐城客户端| 百家乐投注方法| 什么是百家乐官网平注法| 亲朋棋牌捕鱼技巧| 百家乐棋牌正式版| 百家乐官网英皇赌场娱乐网规则 | 明升体育| 百家乐5式直缆打法| 百家乐官网博娱乐网赌百家乐官网的玩法技巧和规则 | 百家乐官网中的概率| 哪个百家乐官网玩法平台信誉好| 星河娱乐| 帝王娱乐城开户| 沙龙百家乐赌场娱乐网规则 | 金宝博百家乐官网娱乐城| 亲朋棋牌捕鱼技巧| 大发888 娱乐平台| 百家乐不锈钢| 最新百家乐的玩法技巧和规则| 百家乐最佳注码法| 贝博百家乐官网的玩法技巧和规则 | 三亚百家乐的玩法技巧和规则| 24山水口决阳宅| 百家乐官网玩法教学视频| 新澳博百家乐官网现金网| 百家乐官网注码投注论坛| 登封市|