国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 948|回復(fù): 0
打印 上一主題 下一主題

基于TI AM62x的SPI接口配置

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2024-3-22 15:52:36 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

SPI(Serial Peripheral Interface)通信總線以其高速、全雙工、同步的特性而被廣泛應(yīng)用,它只需要四根線就能實現(xiàn)數(shù)據(jù)傳輸,有效地節(jié)約了芯片管腳的數(shù)量,同時為PCB布局帶來了空間上的優(yōu)化和便捷。正因為它簡單易用的特點(diǎn),現(xiàn)在越來越多的芯片選擇集成SPI通信協(xié)議。

作為TI Sitara™產(chǎn)品線新一代MPU產(chǎn)品,TI AM62x處理器特別配備了多達(dá)4路的SPI接口以及1路OSPI接口(有時也稱為QSPI),豐富的SPI接口配置使得該處理器能夠同時與多個設(shè)備進(jìn)行通信連接,大大提高了系統(tǒng)的擴(kuò)展性和靈活性。



01 SPI的工作流程和時序

我們首先需要了解一下SPI是如何工作的——通常SPI通過4個引腳與外部器件相連:

(1) MISO:主設(shè)備輸入/從設(shè)備輸出引腳

該引腳在從模式下發(fā)送數(shù)據(jù),在主模式下接收數(shù)據(jù);

(2) MOSI:主設(shè)備輸出/從設(shè)備輸入引腳

該引腳在主模式下發(fā)送數(shù)據(jù),在從模式下接收數(shù)據(jù);

(3) CLK:串口時鐘

作為主設(shè)備的輸出,從設(shè)備的輸入;

(4) NSS:從設(shè)備選擇

這是一個可選的引腳,用來選擇從設(shè)備。


SPI的工作流程是這樣的:

(1) 主機(jī)先將NSS信號拉低,這樣保證開始接收數(shù)據(jù);

(2) 當(dāng)接收端檢測到時鐘的邊沿信號時,將立即讀取數(shù)據(jù)線上的信號,這樣就得到了一位數(shù)據(jù);

(3) 由于時鐘是隨數(shù)據(jù)一起發(fā)送的,因此指定數(shù)據(jù)的傳輸速度并不重要,盡管設(shè)備將具有可以運(yùn)行的最高速度;

(4) 主機(jī)發(fā)送到從機(jī)時,主機(jī)產(chǎn)生相應(yīng)的時鐘信號,然后數(shù)據(jù)一位一位地將從MOSI信號線上進(jìn)行發(fā)送到從機(jī);

(5) 主機(jī)接收從機(jī)數(shù)據(jù)時,如果從機(jī)需要將數(shù)據(jù)發(fā)送回主機(jī),則主機(jī)將繼續(xù)生成預(yù)定數(shù)量的時鐘信號,并且從機(jī)會將數(shù)據(jù)通過MISO信號線發(fā)送。


SPI工作時序圖如下:



02

AM62x處理器中SPI總線的特點(diǎn)

在AM62x這款芯片中,TI將SPI的MISO與MOSI設(shè)計為d0和d1,具體哪一個作為輸入,哪一個作為輸出,是由設(shè)備樹中的 ti,pindir-d0-out-d1-in= <1>來設(shè)置的。


默認(rèn)屬性值為0,即d0是輸入,d1是輸出;

當(dāng)屬性值為1時,d0為輸出,d1為輸入。


03 AM62x的SPI應(yīng)用

1. menuconfig配置:

將該項選中,SPI驅(qū)動將編譯進(jìn)內(nèi)核中。

makemenuconfi

DeviceDrivers ->

SPIsupport ->

Usermode SPI device driver support

(注:在飛凌嵌入式OK6254-C開發(fā)板中,SPI驅(qū)動編譯已進(jìn)去。)


2. 設(shè)備樹配置:

(1) 選擇需要使用的spi,這里我們用spi0,節(jié)點(diǎn)為&main_spi0;

(2) 將該節(jié)點(diǎn)所用的引腳復(fù)用為相應(yīng)的功能。



spi0_pins_default: spi0-pins-default {    pinctrl-single,pins = <            AM62X_IOPAD(0x1B4, PIN_OUTPUT, 0) /* (A13) SPI0_CS0 */            AM62X_IOPAD(0x1B8, PIN_OUTPUT, 0) /* (C13) SPI0_CS1 */            AM62X_IOPAD(0x1C0, PIN_INPUT, 0) /* (B13) SPI0_D0 */            AM62X_IOPAD(0x1BC, PIN_OUTPUT, 0) /* (A14) SPI0_CLK */            AM62X_IOPAD(0x1C4, PIN_INPUT, 0) /* (B14) SPI0_D1 */        >;    };

(3) 描述節(jié)點(diǎn)的屬性,具體配置項的功能見注釋。


&main_spi0 {  status = "okay";  pinctrl-names = "default";  pinctrl-0 = <&spi0_pins_default>; /* 描述引腳復(fù)用節(jié)點(diǎn) */  ti,spi-num-cs = <2>;      /* 描述片選的數(shù)量 */  ti,pindir-d0-out-d1-in = <1>; /* 描述輸入輸出分別是哪個 */    /* 描述子節(jié)點(diǎn)spidev0設(shè)備 */  spidev@0 {              spi-max-frequency = <24000000>; /* 描述spidev0設(shè)備的最大頻率 */              reg = <0>;   /* 描述spidev0設(shè)備所用的片選,這里是第0個 */              spi-cs-high;  /* 描述spidev0設(shè)備高有效 */              compatible = "rohm,dh2228fv";  /* 描述spidev0設(shè)備所用驅(qū)動 */  };  /* 描述子節(jié)點(diǎn)spidev1設(shè)備 */  spidev@1 {              spi-max-frequency = <24000000>;              reg = <1>;              compatible = "rohm,dh2228fv";  };};

3. 編譯燒錄:

在源碼路徑下輸入以下命令:​​​​​​​

. build.shsudo ./build.sh kernel

沒有報錯即為編譯成功。


將源碼路徑下的image中的OK6254-C.dtb文件放到開發(fā)板的/boot目錄中,重啟開發(fā)板即可。


4. SPI測試:

將spi0_D0和spi0_D1短接

重啟開發(fā)板后,在/dev目錄下看到多出兩個spidev設(shè)備。

使用我們的測試程序


fltest_spidev_test -D /dev/spidev3.0 -s 42000

有如下打印信息即為成功:

spimode: 0

bitsper word: 8

maxspeed: 42000 Hz (42 KHz)

FFFF FF FF FF FF

4000 00 00 00 95

FFFF FF FF FF FF

FFFF FF FF FF FF

FFFF FF FF FF FF

DEAD BE EF BA AD

F00D


您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产无限资源 | 免费在线观看日韩 | 日本欧美中文字幕人在线 | 一级做a爰片久久毛片图片 一级做a爰片久久毛片人呢 | 色噜噜色噜噜天天拍一拍 | 日韩免费一级a毛片在线播放一级 | 一区二区手机视频 | 日本在线观看网址 | 亚洲天堂五月天 | 亚洲精品中文字幕麻豆 | 久草综合在线视频 | 99re9| 四虎影视精品永久免费 | 天天干天天玩天天操 | 亚洲国产日韩在线人高清 磁力 | 特级毛片网站 | 国产观看精品一区二区三区 | 亚洲欧洲精品成人久久曰 | 人间正道是沧桑全集手机免费观看 | 色偷偷成人 | 亚洲福利影院 | 欧美日韩一区二区三区久久 | 亚洲天堂精品在线观看 | 日韩新片在线观看网 | 亚洲高清在线看 | 精品精品国产高清a毛片 | 一级毛片黄片 | 成人精品综合免费视频 | 色综合欧美色综合七久久 | 欧美精品国产第一区二区 | 青青热久免费精品视频精品 | 国产黄在线免费观看 | 青青青青久久国产片免费精品 | 欧美高清一级 | 国产小视频精品 | 亚洲欧美日韩中文字幕在线一区 | 亚洲天堂日韩在线 | 四虎永久免费884hutv | 欧美成人全部免费观看1314色 | 亚洲专区在线视频 | 亚洲视频在线一区二区 |