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

正文內(nèi)容

vhdl的串行同步通信spi設(shè)計(jì)(編輯修改稿)

2025-07-26 19:12 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 AT91RM9200.SPI 的通信原理很簡(jiǎn)單,它以主從方式工作,這種模式通常有一個(gè)主設(shè)備和一個(gè)或多個(gè)從設(shè)備,需要至少 4 根線,事實(shí)上 3 根也可以(單向傳輸時(shí)) 。也是所有基于 SPI 的設(shè)備共有的,它們是 SDI(數(shù)據(jù)輸入) ,SDO (數(shù)據(jù)輸出) ,SCK (時(shí)鐘) ,CS(片選) ?! 。?)SDO 主設(shè)備數(shù)據(jù)輸出,從設(shè)備數(shù)據(jù)輸入  (2)SDI 主設(shè)備數(shù)據(jù)輸入,從設(shè)備數(shù)據(jù)輸出 ?。?)SCLK 時(shí)鐘信號(hào),由主設(shè)備產(chǎn)生 ?。?)CS 從設(shè)備使能信號(hào),由主設(shè)備控制  其中 CS 是控制芯片是否被選中的,也就是說(shuō)只有片選信號(hào)為預(yù)先規(guī)定的使能信號(hào)時(shí)(高電位或低電位) ,對(duì)此芯片的操作才有效。這就允許在同一總線上連接多個(gè) SPI 設(shè)備成為可能?! 〗酉聛?lái)就負(fù)責(zé)通訊的 3 根線了。通訊是通過(guò)數(shù)據(jù)交換完成的,這里先要知道 SPI 是串行通訊協(xié)議,也就是說(shuō)數(shù)據(jù)是一位一位的傳輸?shù)?。這就是 SCK 時(shí)鐘線存在的原因,由SCK 提供時(shí)鐘脈沖,SDI,SDO 則基于此脈沖完成數(shù)據(jù)傳輸。數(shù)據(jù)輸出通過(guò) SDO 線,數(shù)據(jù)在時(shí)鐘上升沿或下降沿時(shí)改變,在緊接著的下降沿或上升沿被讀取。完成一位數(shù)據(jù)傳輸,輸入也使用同樣原理。這樣,在至少 8 次時(shí)鐘信號(hào)的改變(上沿和下沿為一次) ,就可以完成 8 位數(shù)據(jù)的傳輸?!PI 是一個(gè)環(huán)形總線結(jié)構(gòu),由 ss(cs) 、sck、sdi、sdo 構(gòu)成,其時(shí)序其實(shí)很簡(jiǎn)單,主要是在 sck 的控制下,兩個(gè)雙向移位寄存器進(jìn)行數(shù)據(jù)交換?! 〖僭O(shè)下面的 8 位寄存器裝的是待發(fā)送的數(shù)據(jù) 10101010,上升沿發(fā)送、下降沿接收、高位先發(fā)送?! ∧敲吹谝粋€(gè)上升沿來(lái)的時(shí)候 數(shù)據(jù)將會(huì)是 sdo=1;寄存器中的 10101010 左移一位,后面補(bǔ)入送來(lái)的一位未知數(shù) x,成了 0101010x。下降沿到來(lái)的時(shí)候,sdi 上的電平將鎖存到寄存器中去,那么這時(shí)寄存器=0101010sdi,這樣在 8 個(gè)時(shí)鐘脈沖以后,兩個(gè)寄存器的內(nèi)容互相交換一次。這樣就完成里一個(gè) spi 時(shí)序。 波特率這是一個(gè)衡量通信速度的參數(shù)。它表示每秒鐘傳送的 bit 的個(gè)數(shù)。例如 300 波特表示每秒鐘發(fā)送 300 個(gè) bit。當(dāng)我們提到時(shí)鐘周期時(shí),我們就是指波特率例如如果協(xié)議需要4800 波特率,那么時(shí)鐘是 4800Hz。這意味著串口通信在數(shù)據(jù)線上的采樣率為 4800Hz。通常電話線的波特率為 14400,28800 和 36600。波特率可以遠(yuǎn)遠(yuǎn)大于這些值,但是波特率和距離成反比。串行 口每秒發(fā)送或接收數(shù)據(jù)的碼元數(shù)為傳碼 ,單位為波特,也叫波特率。若發(fā)送或接收一位數(shù)據(jù)所需時(shí)間為 T,則波特率為 1 / T,相應(yīng)的發(fā)送 或接收時(shí)鐘為 1 / T Hz 。發(fā)送和接收設(shè)備的波特率應(yīng) 一致。位 同步是實(shí)現(xiàn)收發(fā)雙方的碼元同步,由數(shù)據(jù)傳輸系統(tǒng)的同步控制電路實(shí)現(xiàn)。發(fā)送端由發(fā)送時(shí)鐘 的定時(shí)脈沖對(duì)數(shù)據(jù)序列取樣再生,接收端由接收時(shí) 鐘的定時(shí)脈沖對(duì)接收數(shù)據(jù)序列取樣判斷,恢復(fù)原來(lái) 的數(shù)據(jù)序列。因此,接收時(shí)鐘和發(fā)送時(shí)鐘必須同頻 同相,這是由接收端的定時(shí)提取和鎖相環(huán) 電路實(shí)現(xiàn) 的。傳碼率與位同步必須同時(shí)滿足 。否則,接收設(shè)備接收不到有效信息。 3 模塊設(shè)計(jì) 頂層模塊 RTL 綜合頂層文件設(shè)計(jì),將波特率發(fā)生模塊,數(shù)據(jù)發(fā)送模塊,數(shù)據(jù)接收模塊,和數(shù)碼顯示模塊通過(guò)例化語(yǔ)句組合成總的頂層模塊。其中數(shù)據(jù)發(fā)送模塊為并行輸入串行輸出模塊,在時(shí)鐘的上升沿發(fā)送一位數(shù)據(jù),共需要 8 個(gè)時(shí)鐘脈沖即可發(fā)送完一字節(jié)數(shù)據(jù)。數(shù)據(jù)接收模塊為串行輸入并行輸出模塊,串行輸入的數(shù)據(jù)來(lái)自數(shù)據(jù)發(fā)送模塊,在時(shí)鐘的上升沿接收數(shù)據(jù),即由“自己發(fā)送的數(shù)據(jù)自己同步接收”來(lái)模擬主從器件間數(shù)據(jù)的全雙工傳輸。數(shù)碼管顯示模塊則是循環(huán)顯示 0~8 數(shù)字,每循環(huán)一次代表傳輸完一字節(jié)。以下是頂層模塊 VHDL 源程序:library ieee。use 。use 。entity spi isport(clk,stop,load: in std_logic。 data_in: std_logic_vector(7 downto 0 )。 deng_out : out std_logic_vector(7 downto 0 )。shuma_out : out std_logic_vector(6 downto 0 ))。end spi。architecture one of spi isponent sdiport(clk_sdi : in std_logic。 sdi_in : in std_logic。 load : in std_logic。 shuma:out integer range 0 to 8。 sdi_out : out std_logic_vector(7 downto 0 ))。end ponent。ponent sdoport(clk_sdo,load : in std_logic。 sdo_in : in std_logic_vector(7 downto 0)。 sdo_out : out std_logic)。end ponent。ponent SHUMGport(num:in INTEGER RANGE 0 TO 8。dout:out std_logic_vector(6 downto 0))。end ponent。ponent fenpinport(clk,stop:in std_lo
點(diǎn)擊復(fù)制文檔內(nèi)容
數(shù)學(xué)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1