用51單片機(jī)實(shí)現(xiàn)DSP在線調(diào)試的一種方法
通常情況下,進(jìn)行DSP系統(tǒng)開發(fā)調(diào)試時(shí),都要配備一片SRAM芯片作為片外程序RAM。調(diào)試時(shí),使用相應(yīng)的仿真板將程序下載到SRAM中,這樣DSP系統(tǒng)通過運(yùn)行SRAM中的程序代碼來實(shí)現(xiàn)相應(yīng)的操作。可以看到,DSP系統(tǒng)調(diào)試時(shí),關(guān)鍵是要將程序下載到SRAM中,因此如果能將程序代碼通過單片機(jī)寫入SRAM中,則同樣可以完成對DSP系統(tǒng)的調(diào)試。下面具體介紹在不使用仿真板的情況下,如何運(yùn)用單片機(jī)AT89S5l對DSP芯片TMS320LF2407進(jìn)行在線調(diào)試。
1 硬件設(shè)計(jì)
1.1 TMS320LF2407在線調(diào)試的實(shí)現(xiàn)過程
完成DSP系統(tǒng)的調(diào)試,首先要將程序的源代碼寫入片外SRAM中。此時(shí),單片機(jī)與SRAM組成一個(gè)系統(tǒng),單片機(jī)可將分離出來的DSP程序代碼寫入SRAM中。完成這一操作后,切斷單片機(jī)與SRAM的聯(lián)系,使DSP與SRAM組成一個(gè)獨(dú)立的系統(tǒng),并將LF2407配置為微處理方式,即MP/MC引腳置為高電平。這樣DSP系統(tǒng)開始工作,LF2407從外部SRAM的0000H單元處開始執(zhí)行程序代碼。當(dāng)修改DSP的程序時(shí),只需修改單片機(jī)中相應(yīng)的代碼區(qū),然后重新寫入SRAM中即可。單片機(jī)的ISP功能能非常方便的完成這一過程,實(shí)現(xiàn)DSP系統(tǒng)的在線調(diào)試。
1.2 硬件實(shí)現(xiàn)
單片機(jī)選用AT89S5l,該芯片具有在系統(tǒng)編程功能,能通過并口下載線十分方便地修改和下載程序。TMS320LF2407的片外程序RAM選用64K×16位的SRAM芯片CY7C102lV,該芯片的BHE和BLE引腳分別用來使能SRAM的高8位和低8位。硬件框圖如圖l所示。
由于89S51是5V供電,而CY7C102lV是3.3V供電,因此要進(jìn)行5V和3.3V電平的轉(zhuǎn)換。圖1中,單片機(jī)端的地址線和控制線分別通過74LVCl6245和74LVC245將5V電子轉(zhuǎn)換為3.3V電平。數(shù)據(jù)線的電平轉(zhuǎn)換建議采用74LVC245,該芯片采用5V和3.3V雙電源供電,它可以將數(shù)據(jù)線上的5V和3.3V電平相互轉(zhuǎn)換,可實(shí)現(xiàn)單片機(jī)讀、寫RAM中的數(shù)據(jù)。讀出的數(shù)據(jù)可以通過串口發(fā)送到計(jì)算機(jī)上,這樣可以檢驗(yàn)寫入SRAM中的代碼是否正確。89S5l為8位單片機(jī),而CY7Cl02lV和DSP數(shù)據(jù)位都為16位,所以代碼的寫入要分兩次寫入,先寫低8位,再寫高8位。高8位數(shù)據(jù)線和低8位數(shù)據(jù)線之間可以加一個(gè)8位的撥碼開關(guān),當(dāng)向SRAM中寫數(shù)據(jù)時(shí)合上開關(guān),而當(dāng)要運(yùn)行DSP時(shí)則必須將撥碼開關(guān)斷開。當(dāng)代碼正確寫入SRAM后,將DSP的MP/MC引腳跳至高電平,選擇MP方式運(yùn)行片外程序RAM復(fù)位后,即可以使DSP運(yùn)行。設(shè)計(jì)中一定要注意以下情況:由于MCU-SRAM和DSP-SRAM兩個(gè)系統(tǒng)的數(shù)據(jù)線和地址線存在共用的情況,所以當(dāng)一個(gè)系統(tǒng)在運(yùn)行時(shí),數(shù)據(jù)線和地址線不能受到另一芯片相關(guān)引腳狀態(tài)的影響,否則這一系統(tǒng)將無法正常運(yùn)行。因此,一定要注意控制好各個(gè)芯片的片選信號,以保證兩個(gè)系統(tǒng)分別運(yùn)行時(shí)地址線和數(shù)據(jù)線不相互影響。
51單片機(jī)相關(guān)文章:51單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)視頻教程
單片機(jī)相關(guān)文章:單片機(jī)工作原理
評論