首先整體簡(jiǎn)述下傳輸過(guò)程,DSP與SPI三線連接,無(wú)片選信號(hào);DSP有引腳連接至外部中斷引腳;SPI雖然為全雙工,但是在此項(xiàng)目中只需要DSP傳輸給的數(shù)據(jù),而不關(guān)心傳輸給DSP的數(shù)據(jù)。DSP作為從機(jī)。
從主機(jī)均使用SPI的傳輸。數(shù)據(jù)傳輸?shù)恼w流程是這樣的:DSP準(zhǔn)備好數(shù)據(jù)后,會(huì)通過(guò)引腳由低電平變?yōu)楦唠娖絹?lái)觸發(fā)外部中斷,在外部中斷中將開(kāi)啟,然后數(shù)據(jù)開(kāi)始傳輸,傳輸完成進(jìn)入傳輸完成中斷,對(duì)收到的數(shù)據(jù)進(jìn)行處理。
對(duì)SPI及DMA進(jìn)行配置:先對(duì)SPI進(jìn)行配置,具體流程參考C672x的SPI手冊(cè)(下面我也會(huì)貼出代碼);然后對(duì)DMA的事件入口及傳輸入口進(jìn)行配置。
一開(kāi)始是傾向于用庫(kù)的,但是在調(diào)試過(guò)程中發(fā)現(xiàn)麻煩重重,有些繁瑣,而且好多函數(shù)不可見(jiàn),封裝在了庫(kù)里,遠(yuǎn)不如自己寫驅(qū)動(dòng)更簡(jiǎn)單方便。
還有一個(gè)問(wèn)題需要注意。的三個(gè)引腳跟啟動(dòng)有關(guān),上電時(shí)刻三個(gè)引腳的狀態(tài)直接決定啟動(dòng)能不能成功。剛開(kāi)始調(diào)試時(shí),DSP均下載好程序后,發(fā)現(xiàn)DSP無(wú)法啟動(dòng),后來(lái)在DSP的仿真狀態(tài)下查看寄存器發(fā)現(xiàn)引腳狀態(tài)啟動(dòng)成功。
下面說(shuō)下浮點(diǎn)數(shù)據(jù)的傳輸。就是因?yàn)槠鋸?qiáng)大的數(shù)據(jù)處理能力,所以在傳輸給STM32的數(shù)據(jù)中自然缺不了浮點(diǎn)數(shù)。
???窯爐知識(shí)
KNOWLEDGE