CoolRunner-Ⅱ器件實(shí)現(xiàn)SPI主控制器
發(fā)布時(shí)間:2008/9/19 0:00:00 訪問次數(shù):500
spi串行外設(shè)接口是一個(gè)全雙工、同步及串行數(shù)據(jù)通信接口,已經(jīng)被廣泛應(yīng)用于微處理器、微控制器和外設(shè)中,它允許在處理器與外設(shè)或處理器之間進(jìn)行通信。spi系統(tǒng)很靈活,可以與許多通用外設(shè)接口。本節(jié)描述的是在coolrunner-ii cpld中實(shí)現(xiàn)一個(gè)spi主控制器,通過它可以為不具有spi主控制器的處理器(如8051)增加一個(gè)spi接口,以方便連接其他spi設(shè)備。如圖1所示為此設(shè)計(jì)的頂層框圖。此控制器中的微控制器選用了一款被廣泛應(yīng)用,卻不具有spi接口的8051。此設(shè)計(jì)經(jīng)過修改,可以應(yīng)用于其他處理器中。
如圖1 spi主設(shè)備頂層框圖
spi包括4根線,分別是串行時(shí)鐘sck、主出從入線mosi、主入從出線miso和從片選線ss n。sck線由主spi驅(qū)動(dòng),并控制數(shù)據(jù)位流。主spi可以以多種波特率發(fā)送數(shù)據(jù),在sck線邊沿,數(shù)據(jù)發(fā)送一位。可以是在sck上升沿,也可以是在sck下降沿。sck有4種頻率,用一個(gè)邊沿發(fā)送數(shù)據(jù),用另一個(gè)邊沿接收數(shù)據(jù)。所有spi設(shè)備的sck、mosi和miso都被連接在一起,但僅有一個(gè)被配置為主spi,其他設(shè)備都為從spi。
ss_n控制線片選從spi,沒有被選中的從spi設(shè)備會(huì)忽略sck信號(hào),并且驅(qū)動(dòng)miso為高阻狀態(tài)。連接到主spi的ss_in_n線,為spi總線爭奪標(biāo)志線。它有效時(shí),表明有其他spi設(shè)備申請(qǐng)總線控制。sck的相位和極性可以配置,cpol為時(shí)鐘極性選擇信號(hào),當(dāng)cpol=“0”,idle狀態(tài)時(shí)sck=“0”;當(dāng)cpol=“1”,idle狀態(tài)時(shí)sck=“1”。cpha為時(shí)鐘相位選擇信號(hào),當(dāng)cpha=“0”,數(shù)據(jù)在第1個(gè)sck邊沿有效;當(dāng)cpha=“1”,數(shù)據(jù)在第2個(gè)sck邊沿有效,時(shí)鐘極性和相位對(duì)于主從spi來說應(yīng)該保持一致。
以主spi為例,當(dāng)主從spi進(jìn)行數(shù)據(jù)傳輸時(shí),一個(gè)8位數(shù)據(jù)mosi引腳移位輸出。同時(shí),另一個(gè)不同的8位數(shù)據(jù)在m[so引腳移入。相當(dāng)于主spi有一個(gè)8位的移位寄存器,從spi也有一個(gè)8位的移位寄存器,這兩個(gè)寄存器連接在一起形成一個(gè)環(huán)形16位移位寄存器。對(duì)于一次完整的通信,16位移位寄存器移8個(gè)位置。這樣一來,主從spi的8位數(shù)據(jù)完成一次交換,即完成一次通信。
spi協(xié)議描述了spi總線上的字節(jié)傳輸時(shí)序和波形,但是并沒有規(guī)定數(shù)據(jù)通信協(xié)議,如未指定第1個(gè)字節(jié)包含地址或讀/寫命令。如此一來,在具體的應(yīng)用中要清楚數(shù)據(jù)手冊(cè)規(guī)定的通信協(xié)議。在本設(shè)計(jì)中,cpld實(shí)現(xiàn)的主spi設(shè)備,也沒有規(guī)定具體的通信協(xié)議,這個(gè)協(xié)議可以通過8051微控制器中的軟件解決。
如圖2和如圖3所示分別為spi數(shù)據(jù)傳輸時(shí)序,圖中的ss_n在傳輸過程中保持有效。
如圖2 cpha=0時(shí)spi總線上數(shù)據(jù)傳輸時(shí)序
如圖3 cpha=1時(shí)spi總線上數(shù)據(jù)傳輸時(shí)序
歡迎轉(zhuǎn)載,信息來自維庫電子市場網(wǎng)(www.dzsc.com)
spi串行外設(shè)接口是一個(gè)全雙工、同步及串行數(shù)據(jù)通信接口,已經(jīng)被廣泛應(yīng)用于微處理器、微控制器和外設(shè)中,它允許在處理器與外設(shè)或處理器之間進(jìn)行通信。spi系統(tǒng)很靈活,可以與許多通用外設(shè)接口。本節(jié)描述的是在coolrunner-ii cpld中實(shí)現(xiàn)一個(gè)spi主控制器,通過它可以為不具有spi主控制器的處理器(如8051)增加一個(gè)spi接口,以方便連接其他spi設(shè)備。如圖1所示為此設(shè)計(jì)的頂層框圖。此控制器中的微控制器選用了一款被廣泛應(yīng)用,卻不具有spi接口的8051。此設(shè)計(jì)經(jīng)過修改,可以應(yīng)用于其他處理器中。
如圖1 spi主設(shè)備頂層框圖
spi包括4根線,分別是串行時(shí)鐘sck、主出從入線mosi、主入從出線miso和從片選線ss n。sck線由主spi驅(qū)動(dòng),并控制數(shù)據(jù)位流。主spi可以以多種波特率發(fā)送數(shù)據(jù),在sck線邊沿,數(shù)據(jù)發(fā)送一位?梢允窃趕ck上升沿,也可以是在sck下降沿。sck有4種頻率,用一個(gè)邊沿發(fā)送數(shù)據(jù),用另一個(gè)邊沿接收數(shù)據(jù)。所有spi設(shè)備的sck、mosi和miso都被連接在一起,但僅有一個(gè)被配置為主spi,其他設(shè)備都為從spi。
ss_n控制線片選從spi,沒有被選中的從spi設(shè)備會(huì)忽略sck信號(hào),并且驅(qū)動(dòng)miso為高阻狀態(tài)。連接到主spi的ss_in_n線,為spi總線爭奪標(biāo)志線。它有效時(shí),表明有其他spi設(shè)備申請(qǐng)總線控制。sck的相位和極性可以配置,cpol為時(shí)鐘極性選擇信號(hào),當(dāng)cpol=“0”,idle狀態(tài)時(shí)sck=“0”;當(dāng)cpol=“1”,idle狀態(tài)時(shí)sck=“1”。cpha為時(shí)鐘相位選擇信號(hào),當(dāng)cpha=“0”,數(shù)據(jù)在第1個(gè)sck邊沿有效;當(dāng)cpha=“1”,數(shù)據(jù)在第2個(gè)sck邊沿有效,時(shí)鐘極性和相位對(duì)于主從spi來說應(yīng)該保持一致。
以主spi為例,當(dāng)主從spi進(jìn)行數(shù)據(jù)傳輸時(shí),一個(gè)8位數(shù)據(jù)mosi引腳移位輸出。同時(shí),另一個(gè)不同的8位數(shù)據(jù)在m[so引腳移入。相當(dāng)于主spi有一個(gè)8位的移位寄存器,從spi也有一個(gè)8位的移位寄存器,這兩個(gè)寄存器連接在一起形成一個(gè)環(huán)形16位移位寄存器。對(duì)于一次完整的通信,16位移位寄存器移8個(gè)位置。這樣一來,主從spi的8位數(shù)據(jù)完成一次交換,即完成一次通信。
spi協(xié)議描述了spi總線上的字節(jié)傳輸時(shí)序和波形,但是并沒有規(guī)定數(shù)據(jù)通信協(xié)議,如未指定第1個(gè)字節(jié)包含地址或讀/寫命令。如此一來,在具體的應(yīng)用中要清楚數(shù)據(jù)手冊(cè)規(guī)定的通信協(xié)議。在本設(shè)計(jì)中,cpld實(shí)現(xiàn)的主spi設(shè)備,也沒有規(guī)定具體的通信協(xié)議,這個(gè)協(xié)議可以通過8051微控制器中的軟件解決。
如圖2和如圖3所示分別為spi數(shù)據(jù)傳輸時(shí)序,圖中的ss_n在傳輸過程中保持有效。
如圖2 cpha=0時(shí)spi總線上數(shù)據(jù)傳輸時(shí)序
如圖3 cpha=1時(shí)spi總線上數(shù)據(jù)傳輸時(shí)序
歡迎轉(zhuǎn)載,信息來自維庫電子市場網(wǎng)(www.dzsc.com)
熱門點(diǎn)擊
- Coo1Runner-Ⅱ器件實(shí)現(xiàn)IDE總線接
- Coo1Runner-Ⅱ器件實(shí)現(xiàn)雙向多路選擇
- Coo1Runner-Ⅱ器件I2C接口協(xié)議
- CoolRunner-II器件的ISO 78
- Coo1Runner-Ⅱ器件實(shí)現(xiàn)SRAM控制
- CoolRunner-Ⅱ器件的OL、SDA、
- CoolRunner-Ⅱ器件的I2C總線仲裁
- CoolRunner-II實(shí)現(xiàn)IrDA和UA
- CoolRunner-Ⅱ器件的I2C接口主狀
- CoolRunner-II CPLD設(shè)計(jì)
推薦技術(shù)資料
- DS2202型示波器試用
- 說起數(shù)字示波器,普源算是國內(nèi)的老牌子了,F(xiàn)QP8N60... [詳細(xì)]
- MOSFET 電感單片降壓開關(guān)模式變換器優(yōu)勢
- SiC MOSFET 和 IG
- 新型 電隔離無芯線性霍爾效應(yīng)電
- 業(yè)界超小絕對(duì)位置編碼器技術(shù)參數(shù)設(shè)計(jì)
- 高帶寬、更高分辨率磁角度傳感技術(shù)應(yīng)用探究
- MagAlpha 角度位置傳感
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究