來源:飛凌嵌入式官網(wǎng)
SPI是一種高速的、全雙工、同步的通信總線,并且在芯片的管腳上只占用四根線,節(jié)約了芯片的管腳,同時為PCB的布局節(jié)省空間,提供方便,正是出于這種簡單易用的特性,現(xiàn)在越來越多的芯片集成了這種通信協(xié)議。
TI AM62x處理器擁有4路SPI以及1路QSPI,豐富的SPI接口可以同時接多個設(shè)備,飛凌OK6254-C開發(fā)板的NOR Flash就接在了OSPI(QSPI)總線上。
OK6254-C開發(fā)板1. SPI的工作流程和時序
在介紹AM62x的SPI之前,我們先來了解一下SPI是如何工作的。通常SPI通過4個引腳與外部器件相連:
MISO:
主設(shè)備輸入/從設(shè)備輸出引腳。該引腳在從模式下發(fā)送數(shù)據(jù),在主模式下接收數(shù)據(jù);
MOSI:
主設(shè)備輸出/從設(shè)備輸入引腳。該引腳在主模式下發(fā)送數(shù)據(jù),在從模式下接收數(shù)據(jù);
CLK:
串口時鐘,作為主設(shè)備的輸出,從設(shè)備的輸入;
NSS:
從設(shè)備選擇。這是一個可選的引腳,用來選擇從設(shè)備。
SPI的工作流程是這樣的——
主機先將NSS信號拉低,這樣保證開始接收數(shù)據(jù);
當接收端檢測到時鐘的邊沿信號時,它將立即讀取數(shù)據(jù)線上的信號,這樣就得到了一位數(shù)據(jù)(1bit);
由于時鐘是隨數(shù)據(jù)一起發(fā)送的,因此指定數(shù)據(jù)的傳輸速度并不重要,盡管設(shè)備將具有可以運行的最高速度;
主機發(fā)送到從機時:主機產(chǎn)生相應(yīng)的時鐘信號,然后數(shù)據(jù)一位一位地將從MOSI信號線上進行發(fā)送到從機;
主機接收從機數(shù)據(jù):如果從機需要將數(shù)據(jù)發(fā)送回主機,則主機將繼續(xù)生成預(yù)定數(shù)量的時鐘信號,并且從機會將數(shù)據(jù)通過MISO信號線發(fā)送。
SPI工作時序圖如下:
2. AM62x中SPI總線的特點
在AM62x這款芯片中,TI將SPI的MISO與MOSI設(shè)計為d0和d1,哪一個作為輸入,哪一個作為輸出,是由設(shè)備樹中的ti,pindir-d0-out-d1-in= <1>來設(shè)置的。
默認這個屬性值為0,即d0是輸入,d1是輸出。當為1時,d0為輸出,d1為輸入。
3. AM62x的SPI應(yīng)用
1. menuconfig配置
將這個該項選中,SPI驅(qū)動將編譯進內(nèi)核中。
makemenuconfi
DeviceDrivers ->
SPIsupport ->
Usermode SPI device driver support
注:在飛凌OK6254-C開發(fā)板中,已經(jīng)將SPI驅(qū)動編譯進去。
2. 設(shè)備樹配置
(1)選擇需要使用的spi,這里我們用spi0,節(jié)點為&main_spi0;
(2)將該節(jié)點所用的引腳復(fù)用為相應(yīng)的功能。
(3)描述節(jié)點的屬性,具體配置項的功能見注釋。
3. 編譯燒錄
在源碼路徑下輸入以下命令:
沒有報錯即為編譯成功。
將源碼路徑下的image中的OK6254-C.dtb放到開發(fā)板的/boot目錄中,重啟開發(fā)板。
4. SPI測試
將spi0_D0和spi0_D1短接
重啟開發(fā)板后,在/dev目錄下看到多出兩個spidev設(shè)備。
使用我們的測試程序
有如下打印信息即為成功:
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
4. 總結(jié)
AM62x上有著豐富的SPI資源,而SPI又可以作為許多設(shè)備的總線,這使得AM62x能夠接入許多SPI接口的設(shè)備。因此在那些對SPI有著比較多需求的應(yīng)用場景下,基于TI AM62x設(shè)計開發(fā)的OK6254-C開發(fā)板無疑是一個非常好的選擇。
-
ARM
+關(guān)注
關(guān)注
134文章
9029瀏覽量
366535 -
嵌入式
+關(guān)注
關(guān)注
5060文章
18975瀏覽量
302211 -
ti
+關(guān)注
關(guān)注
112文章
8007瀏覽量
212044
發(fā)布評論請先 登錄
相關(guān)推薦
評論