freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計論文-基于fpga的spi串行外圍接口接口設(shè)計(編輯修改稿)

2024-12-13 23:08 本頁面
 

【文章內(nèi)容簡介】 是在主控制器輸出時鐘 SCLK 的控制下,在 SCLK 的上升沿或者下降沿讀出一個數(shù)據(jù)輸出給主設(shè)備。其傳播模型如下圖所示: 圖 SPI 工作 從 模式 須注意的是,主設(shè)備可以再在任意時刻起動數(shù)據(jù)發(fā)送,因為它控制著 SCLK 信號,而在從模式下,從控制器要發(fā)送數(shù)據(jù),必須要用先設(shè)置片選信號以確保使能端 CS 輸入允許。 SPI 傳輸模式 SPI 的工作模式分為主模式和從模式,二者都需要在 SCK 的作用下才能工作;但主模式不需要 CS 信號,而從 模式必須在 CS 信號有效的情況下才能完成。不論是在主模式下還是在從模式下,都要在 時鐘極性( CPOL) 和 時鐘相位( CPHA) 的配合下才能有效地完MISO CS SCLK MISO CS SCLK MOSI MOSI SCLK SCLK 武漢理工大學(xué)學(xué)士學(xué)位論文 成一次數(shù)據(jù)傳輸。其中,時鐘極性表示時鐘信號在空閑時的電平;時鐘相位決定數(shù)據(jù)是在 SCK 的上升沿采樣還是下降沿采樣。根據(jù)時鐘極性和時鐘相位的不同組合,可以得到 SPI 總線的 4 種工作模式,入圖所示: 圖 SPI 四種傳輸模式 ( 1) SPI0 模式下的 CPOL 為 0, SCK 的空閑電平為低; CPHA 為 0,數(shù)據(jù)在串行同步時鐘的第一個跳變沿(由于 CPOL 為低,因此第 1 個跳變沿只能為上升沿)時數(shù)據(jù)被采樣。 ( 2) SPI1 模式下的 CPOL 也為 0, SCK 的空閑電平為低;但是 CPHA 為 1,數(shù)據(jù)在串行同步時鐘的第二個跳變沿(由于 CPOL 為低,因此第 2 個跳變沿只能為下降沿)時數(shù)據(jù)被采樣。 ( 3) SPI2 模式下的 CPOL 為 1, SCK 的空閑電平為高; CPHA 為 0,數(shù)據(jù)在串行同步時鐘的第 1 個跳變沿(由于 CPOL 為高,因此第 1 個跳變沿只能為下降沿)時數(shù)據(jù)被采樣。 ( 4) SPI3 模式下的 CPOL 為 1, SCK 的空 閑電平為高; CPHA 為 1,數(shù)據(jù)在串行同步時鐘的第 2 個跳變沿(由于 CPOL 為高,因此第 1 個跳變沿只能為上升沿)時數(shù)據(jù)被采樣。 在上述 4 種模式中,使用的最為廣泛的是 SPI0 和 SPI3 方式。由于每一種模式都與其他三種不兼容,因此為了完成主、從設(shè)備間的通訊, 主、從設(shè)備的 CPOL 和 CPHA 必須有相同的設(shè)置 。讀者需要 注意 的是:如果主設(shè)備 /從設(shè)備在 SCK 上升沿發(fā)送數(shù)據(jù),則從設(shè)備 /主設(shè)備最好在下降沿采樣數(shù)據(jù);如果主設(shè)備 /從設(shè)備在 SCK 下降沿發(fā)送數(shù)據(jù),則從設(shè)備 /主設(shè)備最好在 SCK 上升 沿采樣數(shù)據(jù)。 SPI 協(xié)議 SPI 接口是一種事實標(biāo)準(zhǔn),并沒有標(biāo)準(zhǔn)協(xié)議,大部分廠家都是參照 Motorola 的 SPI 接口定義來設(shè)計的,但正因為沒有確切的版本協(xié)議,不同廠家產(chǎn)品的 SPI 接口在技術(shù)上存在一定的差別,容易引起歧義,有的甚至無法互聯(lián)(需要用軟件進(jìn)行必要的額修改)。本次設(shè)計基于一種使用較為普遍的協(xié)議來進(jìn)行設(shè)計,通過簡單協(xié)議來理解并設(shè)計 SPI 接口功能。 SPI 協(xié)議是一個環(huán)形總線結(jié)構(gòu),其時序其實比較簡單,主要是在時鐘脈沖 SCK 的控武漢理工大學(xué)學(xué)士學(xué)位論文 制下,兩個雙向移位寄存器 SPI 數(shù)據(jù)寄存器數(shù)據(jù) 進(jìn)行數(shù)據(jù)交換。我們假 設(shè)主機(jī)的 8 位寄存器 SPIDATA1 內(nèi)的數(shù)據(jù)是 10101010,而從機(jī)的 8 位寄存器 SPIDATA2 內(nèi)的數(shù)據(jù)是 01010101,在上升沿的時候發(fā)送數(shù)據(jù),在下降沿的時候接收數(shù)據(jù),最高位的數(shù)據(jù)先發(fā)送,主機(jī)和從機(jī)之間全雙工通信,也就是說兩個 SPI 接口同時發(fā)送和接收數(shù)據(jù),如圖 所示。從圖中我們也可以看到, SPIDATA 移位寄存器總是將最高位的數(shù)據(jù)移出,接著將剩余的數(shù)據(jù)分別左移一位,然后將接收到得數(shù)據(jù)移入其最低位。 圖 SPI 的環(huán) 形總線結(jié)構(gòu) 如圖 所示,當(dāng)?shù)谝粋€上升沿來的時候, SPIDATA1 將最高位 1 移除,并將所有數(shù)據(jù)左移 1 位, 這時 MOSI 線為高電平,而 SPIDATA2 將最高位 0 移出, 并將所有數(shù)據(jù)左移 1 位, 這樣 MISO 線為低電平。然后當(dāng)下降沿到來的時候, SPIDATA1 將鎖存 MISO 線上的電平,并將其移入其最低位,同樣的, SPIDATA2 將鎖存 MOSI 線上的電平,并將其移入最低位。經(jīng)過 8 個脈沖后,兩個移位寄存器就實現(xiàn)了數(shù)據(jù)的交換,也就是完成了一次 SPI 的時序。 圖 數(shù)據(jù)傳輸示例 本章小結(jié) 本章通過 對 SPI的原理分析,介紹其首發(fā)原理及基本結(jié)構(gòu),再介紹其工作模式,再介紹其傳輸模式和協(xié)議距離。通過以上分析,便可以知道本次設(shè)計的 SPI 所必須具備的功能有哪些,哪些是需要注意的功能。從而可以確定本次設(shè)計的工作模式,以及設(shè)計所的傳輸模式,并且通過介紹的協(xié)議舉例來通過此協(xié)議來設(shè)計 SPI 系統(tǒng)結(jié)構(gòu)。通過本章的分析,本次設(shè)計確定為主模式,及主控模式的設(shè)計,并且四種傳輸模式均需要實現(xiàn),并且遵循 SPI1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 00 1 1 第一個 上升沿 第一個下降沿 CS MISO MOSI SCLK SCLK MISO MOSI CS 1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 MSB SPIDATA1 LSB MSB LSB SPIDATA2 武漢理工大學(xué)學(xué)士學(xué)位論文 協(xié)議,按照此協(xié)議來設(shè)計 SPI結(jié)構(gòu)。 以此,變可以進(jìn)行 SPI 結(jié)構(gòu)設(shè)計了。武漢理工大學(xué)學(xué)士學(xué)位論文 3 方案論證 對于 SPI 接口設(shè)計主要分為兩大類,利用單片機(jī)如 51 系列單片機(jī)實現(xiàn)和利用 FPGA等可編程邏輯器件編程實現(xiàn),下面將分別介紹兩種方法的方法。 在 51 系列單片機(jī)系統(tǒng)中實現(xiàn) 對于不帶 SPI 串行總線接口的 MCS51 系列單片機(jī)來說,可以使用軟件來模擬 SPI 的操作,包括串行時鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出。對于不同的串行接口外圍芯片,它們的時鐘時序是不同的。對于在 SCK 的上升沿輸入(接收)數(shù)據(jù)和在下降沿輸出(發(fā)送)數(shù)據(jù)的器件,一般應(yīng)將其串行時鐘輸出口 的初始狀態(tài)設(shè)置為 1,而在允許接口后再置 為 0。這樣, MCU 在輸出 1 位 SCK 時鐘的同時,將使接口芯片串行左移,從而輸出 1 位數(shù)據(jù)至MCS51 單片機(jī)的 口(模擬 MCU 的 MISO 線),此后再置 為 1,使 MCS51 系列單片機(jī)從 (模擬 MCU 的 MOSI 線)輸出 1 位數(shù)據(jù)(先為高位)至串行接口芯片。至此,模擬 1 位數(shù)據(jù)輸入輸出便宣告完成。此后再置 為 0,模擬下 1 位數(shù)據(jù)的輸入輸出 …… ,依此循環(huán) 8 次,即可完成 1 次通過 SPI 總線傳輸 8 位數(shù)據(jù)的操作。對于在 SCK 的下降沿輸入數(shù)據(jù)和上升沿輸出數(shù)據(jù)的器件,則應(yīng)取串行時鐘輸出的 初始狀態(tài)為 0,即在接口芯片允許時,先置 為 1,以便外圍接口芯片輸出 1 位數(shù)據(jù)( MCU接收 1 位數(shù)據(jù)),之后再置時鐘為 0,使外圍接口芯片接收 1 位數(shù)據(jù) (MCU發(fā)送 1 位數(shù)據(jù) ),從而完成 1 位數(shù)據(jù)的傳送。 圖 基于 MCS51 單片機(jī)的 SPI 設(shè)計模型 圖 所示為 MCS51 系列單片機(jī)與存儲器 X25F008( E2PROM)的硬件連接圖,圖 2 中, 模擬 MCU 的數(shù)據(jù)輸出端( MOSI), 模擬 SPI 的 SCK 輸出端, 模擬SPI 的從機(jī)選擇 端, 模擬 SPI 的數(shù)據(jù)輸入端( MISO)。下面介紹用 MCS51 單片機(jī)的匯編語言模擬 SPI 串行輸入、串行輸出和串行輸入 /輸出的 3 個子程序,實際上,這些子程序也適用于在串行時鐘的上升沿輸入和下降沿輸出的其它各種串行外圍接口芯片(如 A/D 轉(zhuǎn)換芯片、網(wǎng)絡(luò)控制器芯片、 LED 顯示驅(qū)動芯片等)。對于下降沿輸入、上升沿輸出的各種串行外圍接口芯片,只要改變 的輸出電平順序,即先置 為低電平,之后再次置 為高電平,再置 為低電平 …… ,則這些子程序也同樣適用。 外圍設(shè)備 cs MCS 51 MOSI MISO SCK P P P P 武漢理工大學(xué)學(xué)士學(xué)位論文 用可編程邏輯器件設(shè)計 SPI 除 了編程方法,還可以用 FPGA 設(shè)計 SPI,及用可編程邏輯的方法設(shè)計硬件來用單片機(jī)直接用簡單的程序來應(yīng)用外圍硬件來實現(xiàn) SPI 傳輸。通過對 SPI 的結(jié)構(gòu)的了解可以設(shè)計一個系統(tǒng)框架,按照框架完成輸入輸出的功能。 一般一個典型的 SPI 系統(tǒng)如下圖所示,其主要包括 MPU和一個或幾個外圍器件, SPI一端與 MPU 接口相連,另一端便是負(fù)責(zé)傳輸?shù)乃臈l線了。當(dāng)此單片機(jī)處于主機(jī)模式時,就能與從機(jī)進(jìn)行通信,當(dāng)此單片機(jī)處于從機(jī)模式時,就能與另一主機(jī)通信??傊?,一個系統(tǒng)中只有一個主機(jī),否則無法工作。用 FPGA 設(shè)計的系統(tǒng)框架如下圖 所 示: 圖 介于 SPI 的 FPGA 設(shè)計系統(tǒng)框架 以上兩種便是兩種實現(xiàn) SPI 的方法,在實際應(yīng)用中,許多單片機(jī)已經(jīng)包括了 SPI 接口,可見 SPI 接口應(yīng)用很廣泛,只要高級點的單片機(jī),都自帶 SPI 接口,并且如 DSP 等也集成了 SPI接口,可見大多芯片都趨向于用硬件實現(xiàn)而非軟件實現(xiàn)。這是因為 軟件模擬 SPI 接口方法雖然簡單方便 ,但是速度受到限制,在高速且日益復(fù)雜的數(shù)字系統(tǒng)中,這種方法顯然無法滿足系統(tǒng)要求,所以采用硬件的方法實現(xiàn)最為切實可行。 這使得 與 SPI 有關(guān)的 軟件就相當(dāng)簡單,使 CPU 有更多的時間處理其他事務(wù)。 在可編程邏輯器件不斷地完善改善完美并且功能強(qiáng)大且日益便宜,用硬件實現(xiàn)已經(jīng)成為可能,在大型系統(tǒng)用硬件實現(xiàn)更加穩(wěn)定。同時可編程邏輯也有自身的優(yōu)點。在外圍器件有改變時,由于可編程邏輯可以重復(fù)擦鞋的優(yōu)點,從而在外圍器件有些許改變之時,可以同時稍微改變可編程的程序,因而可編程又有靈活性大的特點。因此,本次設(shè)計便采用可編程邏輯的方案。 本章小結(jié) 本次設(shè)計介紹了軟件硬件兩種方法設(shè)計 SPI, 通過此分析,可以知道 SPI 的設(shè)計方法有哪些方法,通過比較可以得出每種設(shè)計的 優(yōu)劣。軟件設(shè)計簡單,但有其缺點,硬件設(shè)計相比復(fù)雜些,但是其靈活性強(qiáng),可以讓微處理器省出資源。 微處理器 微處理器接口 SPI 總線接口 adr_i[1:0] dat_i[7:0] dat_o[7:0] int_o we_i cs_o miso_i mosi_o sck_o rst_i 武漢理工大學(xué)學(xué)士學(xué)位論文 4 SPI 的電路設(shè)計 電路設(shè)計主要是對系統(tǒng)設(shè)計的功能,各部分功能具體實現(xiàn)方案比如管腳說明,寄存器的說明即設(shè)計,以及狀態(tài)機(jī)的動態(tài)描述,由各個功能的說明便可設(shè)計出本次 SPI 設(shè)計的流程圖,由流程圖便可以寫出我們所需要的程序。 SPI 設(shè)計系統(tǒng)的功能 本次設(shè)計具有一定的獨創(chuàng)性,有著 MC68HC11A8 單片機(jī) SPI 接口的全部功能,并在其四種傳輸速率中擴(kuò)展了另外八種速率,使速率選擇更加靈活。其主要功能如下: 本次設(shè)計為 主控模式 與摩托拉羅說明規(guī)格部分一致 并增強(qiáng)了 MC68HC11A8 單片機(jī) SPI 接口功能 添加中斷,當(dāng)每完成一個數(shù)據(jù)產(chǎn)生中斷信號,確保微處理器讀完數(shù)據(jù)后再發(fā)送接收數(shù)據(jù) 提供了 12 種速率選擇 提供極性相位選擇,支撐四種傳輸模式 充分綜合 SPI 各部分具體實現(xiàn) 如總系系統(tǒng)框架所示,其管腳都列其上,其管腳功能見下表 所示: 表 SPI 設(shè)計管腳 端口名稱 數(shù)據(jù)位寬 信號流向 功能描述 int_o 1 Output 中斷輸出,確保已傳數(shù)據(jù)被讀取 rst_i 1 Input 異步 復(fù)位 we_i 1 Input 寫使能端,寫數(shù)據(jù) dat_i 8 Input 輸入數(shù)據(jù)或指令 adr_i 2 Input 寫指令數(shù)據(jù)選擇 sck_o 1 Output SPI 時鐘輸出 mosi_o 1 Output 數(shù)據(jù)串行輸出 miso_i 1 Input 數(shù)據(jù)串行輸入 cs_o 1 Output 選片 dat_o 8 Output 輸入數(shù)據(jù)并行給微處理器 其中,需要強(qiáng)掉的是, adr_i 端輸入不同,便使系統(tǒng)處于寫數(shù)據(jù)狀態(tài)還是寫指令狀態(tài),指令是寫給 SPI 設(shè)計的控制寄存器,以使 SPI 具有不同 的功能。 武漢理工大學(xué)學(xué)士學(xué)位論文 SPI 系統(tǒng)中所用的寄存器 本次設(shè)計中 SPI 用到四種寄存器,包括 SPCR( SPI 控制寄存器)、 SPER( SPI 擴(kuò)展寄存器)、 treg( SPI 數(shù)據(jù)傳輸 /接收寄存器)其功能如下所示: ( 1)控制寄存器 本次設(shè)計時參照 MC68HC11A8 單片機(jī)的 SPI 結(jié)構(gòu)進(jìn)行設(shè)計,并進(jìn)行了一些改進(jìn),所以本次設(shè)計的控制寄存器的控制位與 MC68HC11A8 單片機(jī)的控制位大致相似,同時進(jìn)行了一些擴(kuò)展和不同的功能,擴(kuò)展在擴(kuò)展寄存器中再做介紹,其控制寄存器的控制位如下表 所示: 表 SPI 設(shè)計的控制 寄存器
點擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1