當前位置:首頁 > 芯聞號 > 充電吧
[導(dǎo)讀]去年的時候調(diào)了一下2410的SPI,很暈,但最后還是通了,今天簡單記錄一下大概的過程。?按著我的慣例先引用一段網(wǎng)絡(luò)上的文章來預(yù)熱一下。引用:概況:S3C2410X的連續(xù)外圍設(shè)備接口(SPI)能連接電路

去年的時候調(diào)了一下2410的SPI,很暈,但最后還是通了,今天簡單記錄一下大概的過程。?

按著我的慣例先引用一段網(wǎng)絡(luò)上的文章來預(yù)熱一下。

引用:

概況:

S3C2410X的連續(xù)外圍設(shè)備接口(SPI)能連接電路實現(xiàn)連續(xù)數(shù)據(jù)傳遞。S3C2410X包含2個SPI,,每個都分別有兩個8位轉(zhuǎn)移寄存器用于數(shù)據(jù)的傳輸和接收。在一個SPI進行數(shù)據(jù)傳遞時,同步傳送數(shù)據(jù)并連續(xù)輸出數(shù)據(jù)。在某一頻率的8位連續(xù)數(shù)據(jù)由它相應(yīng)的通訊控制寄存器設(shè)置所決定。假如你只發(fā)送數(shù)據(jù),接收數(shù)據(jù)就能設(shè)為啞元。反之,如果你只想接收數(shù)據(jù),你應(yīng)該發(fā)送設(shè)為啞元'1'數(shù)據(jù)。

S3C2410有4個與SPI傳輸有關(guān)的I/O信號引腳:SCK(SPICLK0,1)、MISO(SPIMISOO,1)數(shù)據(jù)線,MOSI(SPIMOSIO,1)和低電平有效的/SS(nSS0,1)引腳(輸入)。

特點

與SPI協(xié)議(Ver.2.11)兼容

8位移位寄存器輸出

8位移位寄存器接收

8位預(yù)分頻邏輯

查詢,中斷,DMA傳輸模式

?
SPI操作

采用SPI接口, S3C2410X可發(fā)送/接收與外部設(shè)備同步的8位數(shù)據(jù)。一個串行時鐘線與兩條用來移位和采樣信息的數(shù)據(jù)線同步。 當SPI為主機時,發(fā)送頻率可以通過為SPPREn寄存器設(shè)置合適的值來控制。你可以通過調(diào)整波特率數(shù)據(jù)寄存器的值來修改它的頻率。當SPI為從機時,其它的主機提供時鐘。當編程者向SPTDATn寄存器寫字節(jié)數(shù)據(jù)時,SPI的收/發(fā)將會同時開始。在其它情況下,在向SPTDATn寄存器寫入字節(jié)數(shù)據(jù)時要把nSS激活。


編輯程序


當向SPTDATn寄存器寫入字節(jié)時,如果ENSCK和SPCONn被設(shè)置的話,SPI就開始傳輸

你可以使用一上典型的程序來操作一個SPI卡。

編程SPI模式,基本遵循這些基本步驟:

1.?????? 設(shè)置波特率寄存器(SPPREn)

2.?????? 設(shè)置SPCONn以選擇合適的SPI模式。

3.??????? 寫數(shù)據(jù)0xFF到SPTDATn10次以初始化MMC或SD卡。.

4.?????? 設(shè)置GPIO引腳使其具有nSS功能,低電平時使MMC或SD卡有效。

5.?????? 發(fā)送數(shù)據(jù):檢查發(fā)送準備樗是否為1,如果為1 的話就開始向SPTDATn寫數(shù)據(jù)。

6.?????? 接收數(shù)據(jù)(1):SPCONn的 TAGD 位禁用 = 正常模式

??? :向SPTDATn 寫0xFF,然后測試REDY,再從讀緩存中讀取數(shù)據(jù)。

7.?????? 接收數(shù)據(jù):SPCONn的TAGD位 能用 = 自動接收垃圾數(shù)據(jù)模式。

??? :測試REDY,然后從讀緩存中讀取數(shù)據(jù)。

8.?????? 設(shè)置GPIO引腳使其具有nSS功能,高電平時使MMC或SD卡有效。


通過DMA發(fā)送的步驟

1.?????? SPI的配置為DMA模式

2.?????? DMA合適設(shè)置

3.?????? SPI請求DMA服務(wù)

4.?????? DMA向SPI發(fā)送一個字節(jié)數(shù)據(jù).

5.??????? SPI向卡里發(fā)送數(shù)據(jù)

6.?????? 返回到步驟3直到DAM計數(shù)變?yōu)?

7.?????? 用SMOD位把SPI設(shè)置為中斷或查詢模式

?
通過DMA接收的步驟

1.?????? 把SPI設(shè)置為DMA以SMOD位開始,并且設(shè)置TAGD位.

2.?????? 全適配置 DMA

3.?????? SPI從卡里接收一字節(jié)數(shù)據(jù)

4.?????? SPI請求DMA服務(wù)

5.?????? DMA從SPI接收數(shù)據(jù)

6.??????? 自動的向SPIDATn寫數(shù)據(jù)0xFF

7.??????? 回到步驟4至DAM計數(shù)變?yōu)?

8.?????? 用SMOD位把SPI配置為查詢模式,并且清TAGD位

9.?????? 如果SPSTAn的REDY 標志被設(shè)置,就讀取最后的字節(jié)數(shù)據(jù)

?
注:

總接收的數(shù)據(jù) = DAM TC 值+在查詢模式下的最后值.

DAM接收的第一個數(shù)據(jù)是啞元,所以使用者可以忽略它

SPI 從機接收模式和B模塊

?
如果SPI從機接收模式有效和SPI模塊被設(shè)成B模塊,SPI操作將會失敗。

READY信號這一內(nèi)部信號將在SPI_CNT達到0之前變成高電平。因此,在DMA模式中,DATA_READ信號應(yīng)該在最后一個數(shù)據(jù)結(jié)束之前產(chǎn)生。

注意

1)????? DMA模式:這種模式不能在SPI從機接收模式和B模塊下使用。

2)????? 查詢模式:在SPI從機接收模式和B模塊下DATA_READ信號應(yīng)該推遲SPICLK的一個相位。

3)????? 中斷模式:在SPI從機接收模式和B模塊下DATA_READ信號應(yīng)該推遲SPICLK的一個相位。

SPI特殊寄存器

SPI控制寄存器

SPI狀態(tài)寄存器

SPI引腳控制寄存器

如果SPI系統(tǒng)使能時,除nSS引腳外的其它引腳的方向通過SPCONn的MSTR位來控制。nSS引腳的方向總是輸入。

當SPI為主機時,nSS引腳用來檢查由SPPIN的ENMUL位提供的多主機錯誤信號,另一個GPIO應(yīng)該選擇從機。

如果SPI被設(shè)置為從機,nSS引腳獎被一個主機選擇為從機。

SPIMISO和SPIMOSI數(shù)據(jù)引腳用來發(fā)送和接收串行數(shù)據(jù)。當SPI為主機時,SPIMISO是數(shù)據(jù)輸入引腳,SPIMOSI是數(shù)據(jù)輸出引腳,SPICLK(SCK)是時鐘輸出線。當SPI為從機時,這些引腳執(zhí)行相反的功能。在多主機系統(tǒng)中,SPICLK(SCK)、SPIMOSI、SPIMISO將被分別的配置在一個體系中。

當其它的SPI設(shè)備作為從機選擇S3C2410 的SPI為從機時,一個主機SPI可以發(fā)出一個多主機錯誤信號。當這個信號被探測到,將會立刻發(fā)生下面所說的事情。但是如果你想探測到這種信號的話必須事先設(shè)置SPPINn的ENMUL位。

?
1.?????? SPCONn的MSTR位被強制為0來啟動從機模式。

2.?????? SPSTAn的MULF標志位被置位,一個SPI中斷會產(chǎn)生。

?

?

這個是我從網(wǎng)上搜到的一篇可以說是2410datasheet??? SPI部分簡單翻譯的文章,不過感覺不是很好,最好是過完一遍后再去讀英文的文檔,那個才是“根本”,才能看得懂,看得明白。

不過下面還是比出一個比較好的文章,介紹得很全。其中有臭氧層子的東西,也有寄存器的介紹,這樣設(shè)置起來也比較容易,畢竟最干的、最實際的、最精華的地方還是在這里嘛。如下:

SPI接口概述

?SPI接口:SPI(Serial Peripheral Interface,串行外設(shè)接口)是Motorola公司開發(fā)的一種同步串行外設(shè)接口標準。
?SPI接口信號:有4個信號:數(shù)據(jù)發(fā)送、數(shù)據(jù)接收、時鐘和片選。在時鐘信號的作用下,發(fā)送的同時,接收對方發(fā)來的數(shù)據(jù);也可以只發(fā)送、或者只接收。SPI的波特率可以達到20Mb/s以上。
??S3C2410 ARM9有2個SPI接口,既可以作為主SPI使用,也可以作為從SPI使用。
?主要特點:
?與SPI 協(xié)議 (ver. 2.11) 兼容;
?8位發(fā)送移位寄存器;
?8位接收移位寄存器;
?8位預(yù)分頻器;
?具有查詢、中斷、DMA傳輸模式。

???


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉