SPI介面實驗

2022-10-15 02:39:03 字數 1148 閱讀 2394

一.完成內容

使用硬體spi介面與74hc595進行連線,控制74hc595驅動8個led流水燈顯示。

關鍵**解釋:

s0pccr=0x52; //設定spi時鐘分頻

s0pcr=0x30; //設定spi介面模式,mstr=1,cpol=1,cpha=0,lsbf=0

while(0==(s0psr&0x80));//等待spif置位,即等待資料傳送完畢

pinselo=0x00005500;//設定spio管腳連線

mspiini();//初始化spi介面

rcv_data=msenddata(~disp_tab[i]);//傳送顯示資料

流程圖:

二.除錯過程

1. 啟動ads1.2,建立工程。

2. 建立c原始檔,編寫實驗程式,然後新增到工程的user中。

3. 選用debuginexram生成目標,然後編譯連線工程。

4. 將easyarm2200教學實驗平台上的jp4跳線斷開,jp8跳線全部短接,jp6跳線設定為bank0-ram和bank1-flash。

5. 選擇project->debug,啟動axd進行jtag**除錯。

6. 全速執行程式,觀察led1-led8的顯示。

遇到問題及解決方法:

1.程式編譯出錯.查詢程式,將s0pccr = 0x52; s0pcr = 0x30;兩句中的s0pccr與s0pcr中的數字0 錯打為字母o,修改。

2.未找出程式邏輯上的錯誤,查詢參考程式,與書上的程式對照發現缺少pinsel0 = 0x00005500;加入該語句,程式實現功能,通過問老師了解到將16進製制指令換為二進位制, 控制pinsel0的8,9,10,11,12,13,14,15引腳為spi0功能,實現驅動led燈的功能。

3.書中程式不完整,需要在main函式中新增**「pinselo=0x00005500;」,功能為設定spio管腳連線。

4.**器設定時flash 0 addrss沒有設定。開啟options->configure target對話方塊,在target environments選項框中選擇easyjtag…項。

單擊configure按鈕,進入easyjtag setup設定視窗。將flash 0 addrss中的start addrss和memory size均修改為0x00000000。

SPI及其介面介紹

一 spi介面簡介 spi serial peripheral inte ce 序列外設介面 匯流排系統是一種同步序列外設介面,它可以使mcu與各種外圍裝置以序列方式進行通訊以交換資訊。spi有三個暫存器分別為 控制暫存器spcr,狀態暫存器spsr,資料暫存器spdr。外圍裝置flashram 網...

SPI介面H 265編碼方案

spi介面h.265編碼設計方案 1.設計要求 一般編碼器採用乙太網輸出,由於乙太網的網路傳輸特性不恆定,碼流傳輸不均勻。北京網視雲通科技 根據客戶下面要求 1 輸入為外置行場同步的逐行數字 資料8位,ycbycr排列,類似bt656格式 2 碼流輸出使用spi和串列埠,輸入影象大小可通過串列埠配置...

SPI 4介面的時鐘方案

面對當今複雜的 fpga 設計,時鐘是至關重要的,工程的成敗往往取決 於它。而對於 spi 0 介面設計來說,由於輸入時鐘高於 311 mhz,並且是雙沿 取樣的,所以時鐘設計顯得更加重要。對於 xilinx virtex 5 器件來說,內部提 供了全域性時鐘和區域時鐘兩大時鐘網路,我們分別利用這兩...