原文地址::http://ammon2009.blog.hexun.com/47862772_d.html
BF533 SPI引導時序SPI匯流排由三條訊號線組成:串列時鐘(SCLK)、串列資料輸出(SDO)、串列資料輸入(SDI)。
SPI匯流排可以實現多個SPI裝置互相串連。
提供SPI串列時鐘的SPI裝置為SPI主機或主裝置(Master),其他裝置為SPI從機或從裝置(Slave)。
將各個裝置的串列時鐘引腳接在一起,主裝置的資料輸出接從裝置的資料輸入MOSI(Master Out Slave In),從裝置的資料輸入接主裝置的資料輸出MISO(Master In Slave Out)在DSP BF533的實際應用系統中,一般是MCU(8051或ARM)+DSP的架構。由於MCU和BF533的SPI口均可軟體配置為主或從裝置,因此通過同樣的串連方法既可使BF533為主機,又可使MCU為主機。程式引導時,BF533是主機,串列時鐘由BF533提供,監控過程中MSP430是主機,通過SPI口控制BF533,與引導時相比,硬體串連沒有改變,只是MCU和BF533各提供一個通用IO引腳用作握手訊號,用來避免MCU在DSP忙時中斷DSP。在本系統中,BF533引導模式設為從16位串列SPI儲存空間引導。BF533上電或硬體複位後,SPI介面預設為主模式,並提供頻率為500KHz的串列時鐘。引導時序最初的幾個周期是:從第一個SPI刻度開始,BF533在MOSI引腳上產生讀SPI的串列EEPROM命令位元組,其值為0x03。這個值對於SPI串列EEPROM而言,是讀儲存空間命令。儲存空間應從下一個時鐘節拍開始將儲存空間內資料串列送到BF533的MISO引腳上。由圖4可知,首先送出的應該是塊1的目的地址資訊0xFFA00000。讀出這個值之後,DSP內部會對該值進行判斷,如果目的地址不是DSP記憶體地區內的有效地址,BF533將重複發送讀SPI
EEPROM命令位元組並判斷地址有效性這一過程。如果讀入的地址有效,將會啟動讀儲存空間時序,再發送一個讀SPI 串列EEPROM命令位元組:先讀入檔案頭,再讀入引導內容。設計中應特別考慮MCU軟體以確保SPI介面產生的引導時序和從EEPROM引導時的時序相同。