<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 用單片機實(shí)現DSP在線(xiàn)調試的一種方法

用單片機實(shí)現DSP在線(xiàn)調試的一種方法

作者: 時(shí)間:2006-06-12 來(lái)源:網(wǎng)絡(luò ) 收藏

通常情況下,進(jìn)行系統開(kāi)發(fā)時(shí),都要配備一片SRAM芯片作為片外程序RAM。時(shí),使用相應的仿真板將程序下載到SRAM中,這樣系統通過(guò)運行SRAM中的程序代碼來(lái)相應的操作??梢钥吹?,系統時(shí),關(guān)鍵是要將程序下載到SRAM中,因此如果能將程序代碼通過(guò)寫(xiě)入SRAM中,則同樣可以完成對DSP系統的調試。下面具體介紹在不使用仿真板的情況下,如何運用AT89S5l對DSP芯片TMS320LF2407進(jìn)行調試。


1 硬件設計
1.1 TMS320LF2407調試的過(guò)程

完成DSP系統的調試,首先要將程序的源代碼寫(xiě)入片外SRAM中。此時(shí),與SRAM組成一個(gè)系統,單片機可將分離出來(lái)的DSP程序代碼寫(xiě)入SRAM中。完成這一操作后,切斷單片機與SRAM的聯(lián)系,使DSP與SRAM組成一個(gè)獨立的系統,并將LF2407配置為微處理方式,即MP/MC引腳置為高電平。這樣DSP系統開(kāi)始工作,LF2407從外部SRAM的0000H單元處開(kāi)始執行程序代碼。當修改DSP的程序時(shí),只需修改單片機中相應的代碼區,然后重新寫(xiě)入SRAM中即可。單片機的ISP功能能非常方便的完成這一過(guò)程,DSP系統的調試。
1.2 硬件實(shí)現
單片機選用AT89S5l,該芯片具有在系統編程功能,能通過(guò)并口下載線(xiàn)十分方便地修改和下載程序。TMS320LF2407的片外程序RAM選用64K16位的SRAM芯片CY7C102lV,該芯片的BHE和BLE引腳分別用來(lái)使能SRAM的高8位和低8位。硬件框圖如圖l所示。

由于89S51是5V供電,而CY7C102lV是3.3V供電,因此要進(jìn)行5V和3.3V電平的轉換。圖1中,單片機端的地址線(xiàn)和控制線(xiàn)分別通過(guò)74LVCl6245和74LVC245將5V電子轉換為3.3V電平。數據線(xiàn)的電平轉換建議采用74LVC245,該芯片采用5V和3.3V雙電源供電,它可以將數據線(xiàn)上的5V和3.3V電平相互轉換,可實(shí)現單片機讀、寫(xiě)RAM中的數據。讀出的數據可以通過(guò)串口發(fā)送到計算機上,這樣可以檢驗寫(xiě)入SRAM中的代碼是否正確。89S5l為8位單片機,而CY7Cl02lV和DSP數據位都為16位,所以代碼的寫(xiě)入要分兩次寫(xiě)入,先寫(xiě)低8位,再寫(xiě)高8位。高8位數據線(xiàn)和低8位數據線(xiàn)之間可以加一個(gè)8位的撥碼開(kāi)關(guān),當向SRAM中寫(xiě)數據時(shí)合上開(kāi)關(guān),而當要運行DSP時(shí)則必須將撥碼開(kāi)關(guān)斷開(kāi)。當代碼正確寫(xiě)入SRAM后,將DSP的MP/MC引腳跳至高電平,選擇MP方式運行片外程序RAM復位后,即可以使DSP運行。設計中一定要注意以下情況:由于MCU-SRAM和DSP-SRAM兩個(gè)系統的數據線(xiàn)和地址線(xiàn)存在共用的情況,所以當一個(gè)系統在運行時(shí),數據線(xiàn)和地址線(xiàn)不能受到另一芯片相關(guān)引腳狀態(tài)的影響,否則這一系統將無(wú)法正常運行。因此,一定要注意控制好各個(gè)芯片的片選信號,以保證兩個(gè)系統分別運行時(shí)地址線(xiàn)和數據線(xiàn)不相互影響。


2 軟件設計
TI公司的CC’C2000編譯后生成的*.out文件為通用對象文件格式(coft),該格式是一種結構性文件格式,而單片機的燒入程序必須為bex文件格式,所以要將*.out文件轉化為hex文件格式才能燒人單片機中。轉換步驟如下。
①生成*.out形式的公用目標文件(coff)。當在TI公司的集成開(kāi)發(fā)環(huán)境CC’C2000下進(jìn)行程序開(kāi)發(fā)時(shí),都會(huì )經(jīng)過(guò)編譯和鏈接,最后生成*.out文件。
②對*.out文件進(jìn)行提取,從中篩選出對最后裝載有用的代碼和地址信息。
第一步所產(chǎn)生的*.out文件由于是coff格式的文件,其可重定位特性使得用戶(hù)可以對程序在允許的地址范圍內靈活地安排。正因為如此,*.out文件還不是完全的可執行代碼,它里面包含有一些關(guān)于程序中各個(gè)段的諸如起始地址、段長(cháng)度這樣的輔助信息,如果把這些信息連同程序代碼都裝入DSP內部,程序是不會(huì )被正常執行的。這時(shí)必須要對*.out進(jìn)行輔助信息與可執行代碼的提取與分離,這個(gè)任務(wù)要靠專(zhuān)門(mén)的程序完成。這里采用TI公司提供的程序,程序的名稱(chēng)是:coff_both.exe。它可以在TI的網(wǎng)站上免費下載。
利用該程序將*.out文件進(jìn)行操作,最后生成所需的*.out.c文件。具體操作是把Coff_both.exe和exam-pie.out文件放在同一目錄下,在DOS命令提示符下鍵入:Coff_both-out example.out,這時(shí)就會(huì )生成example.out.c格式的文件。該文件的形式見(jiàn)如下。
sectlon=,vectors
src_addr=0x0
length=0x6(6)
dest_addr_0x0
space=0
0x7980,Ox0150,0x7980,0xol50,
0x7980,0x0150,
checksum=0x78D0
seCtlon=.text
src_addr=0x0
length=0xl3(19)
dest_addr=0x150
space=0
0xBE4l,0xBE46,0xBE42,0xBE44,
0xBCEO,0xAE18,0x83FE,0xAE29,
Ox00E8,oxBCE1,0xAEl0,0x0000,
0xAE1A,0xFFAA,0x8B00,0x8B00,
0x8B00,0x7980,0x015E.
Checksum=0xF59
可以看到,這個(gè)程序有兩段程序.vect和.text,起始地址分別為0000h和0150h,分別由6個(gè)字和19個(gè)字的代碼組成。這些十六進(jìn)制代碼則是最后真正被執行的LF2407程序代碼,也是單片機需要寫(xiě)入SRAM中的代碼。
第二步生成的*.out.c文件明確地告訴了程序有幾個(gè)段,每個(gè)段的大小,段的起始地址以及每個(gè)段的十六進(jìn)制代碼。有了這個(gè)文件,就知道該寫(xiě)些什么內容到SRAM中去才能夠開(kāi)始執行LF2407的程序了。接下來(lái)要做的就是編寫(xiě)單片機的應用程序把*.out.c文件中的十六進(jìn)制代碼寫(xiě)入SRAM內部。程序框圖如圖2所示。

3 結 論
通過(guò)單片機對LF2407進(jìn)行程序裝載屬于一種基于RAM的在線(xiàn)編程,它不用對程序存儲器進(jìn)行燒寫(xiě),屬于一種軟配置。利用單片機AT89S5l的ISP功能可以實(shí)現程序的修改和燒寫(xiě),使系統具有在線(xiàn)開(kāi)發(fā)的特點(diǎn)。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>