DSP芯片可以用Proteus軟件仿真嗎?(dsp proteus)
Proteus是一款應(yīng)用廣泛的電子電路設(shè)計(jì)、印刷線路板(PCB)設(shè)計(jì)與系統(tǒng)運(yùn)行仿真的軟件。
它主要由ISIS軟件和ARES軟件兩部分組成。 ISIS是電子電路設(shè)計(jì)系統(tǒng)的原理圖編輯軟件,且具有仿真功能。ARES是PCB布線編輯軟件。
該軟件支持多種型號(hào)的CPU與單片機(jī)如8086、8051、PIC、 68HC11、AVR、ARM等,可與當(dāng)前流行的單片機(jī)開(kāi)發(fā)環(huán)境如Keil等連接調(diào)試的軟硬件仿真。 目前它備受嵌入式系統(tǒng)應(yīng)用愛(ài)好者的青睞。
該軟件在7.9版本上開(kāi)始支持Piccolo系列2802x等芯片的仿真。即可以采用Proteus進(jìn)行DSP芯片應(yīng)用系統(tǒng)的電路設(shè)計(jì)與軟硬件仿真。
該軟件直接在基于電路原理圖的虛擬原型上進(jìn)行程序的編寫(xiě)與調(diào)試,并進(jìn)行功能驗(yàn)證。在仿真過(guò)程中,用戶可以用鼠標(biāo)點(diǎn)擊開(kāi)關(guān)、按鍵、可調(diào)電阻等輸入外設(shè)模型,使單片機(jī)根據(jù)輸入信號(hào)做出響應(yīng),并將處理結(jié)果實(shí)時(shí)顯示在各種顯示器如數(shù)碼管、LED、LCD等,并可驅(qū)動(dòng)各種常用電機(jī)等虛擬輸出外設(shè),實(shí)時(shí)看到運(yùn)行后的輸入、輸出效果。
Proteus軟件把單片機(jī)的程序嵌入到虛擬硬件中,整個(gè)過(guò)程與真實(shí)的軟硬件調(diào)試過(guò)程相似,能實(shí)現(xiàn)其他仿真軟件難以實(shí)現(xiàn)的仿真效果。用戶在自己的計(jì)算機(jī)上安裝了Proteus軟件,就好像建立了一個(gè)大型單片機(jī)實(shí)驗(yàn)室,其中有各種單片機(jī)芯片,數(shù)萬(wàn)種電子元器件、信號(hào)發(fā)生器和各種測(cè)量用儀器儀表如示波器、邏輯分析儀、虛擬終端、電壓表、電流表等。
運(yùn)行Proteus ISIS軟件后的界面如下圖所示。整個(gè)屏幕分為若干?個(gè)區(qū)域,由原理圖編輯窗口、預(yù)覽窗口、繪圖工具欄、主菜單欄、主工具欄、對(duì)象選擇窗口、仿真按鈕等組成。
Proteus ISIS軟件界面
利用Proteus ISIS軟件對(duì)單片機(jī)系統(tǒng)進(jìn)行電路原理圖設(shè)計(jì)的基本步驟為:新建或打開(kāi)一個(gè)設(shè)計(jì)文件;選擇需要的元件到元件列表;放置元件(包括電源終端、網(wǎng)絡(luò)標(biāo)號(hào)、測(cè)量?jī)x器等)、設(shè)置屬性并連接電路;保存設(shè)計(jì)文件。下面通過(guò)實(shí)例,說(shuō)明電路原理圖設(shè)計(jì)的方法。
例,設(shè)計(jì)DSP控制器應(yīng)用系統(tǒng)電路,用DSP控制器的GPIO3引腳控制一個(gè)LED指示燈,讓LED發(fā)光二極管不斷地閃爍。
首先選擇需要的元件到元件列表。利用左側(cè)工具箱或菜單命令,可利用關(guān)鍵字搜索或分類添加元件。從Proteus元件中選取的元件如下。
· DSP芯片:Microprocessor ICs, TMS320F28027PT;
· 晶振:CRSTAL, 10MHz;
· 電容:CAP, 27pF, 2個(gè);
· 電解電容:CAP-ELEC, 10μF;
· 發(fā)光二極管:LED-YELLOW;
· 電阻:RES, 100Ω 1個(gè),10kΩ 1個(gè);
· 按鈕:Button。
元件選取完成后,可以放置元件并連接電路。單擊元件列表中需要放置的元件,通過(guò)移動(dòng)鼠標(biāo),可以將該元件放置到原理圖編輯窗口。除了一般的元件外,電路還需要電源和地等端子。單擊工具欄中的端子按鈕,可以將電源(POWER)和地(GROUND)等端子放置到原理圖編輯窗口。通過(guò)鼠標(biāo)可以實(shí)現(xiàn)元件的連接。繪制完成的電路原理圖如下圖所示。
DSP系統(tǒng)LED閃爍電路原理圖
程序代碼如下:
/* main.c 連接到GPIO3的指示燈閃爍*/
#include "DSP28x_Project.h" //頭文件包含
void delay_loop(void); //函數(shù)聲明
int main(void)
{
InitSysCtrl();
//初始化系統(tǒng)系統(tǒng)時(shí)鐘,包括PLL, 看門(mén)狗時(shí)鐘, 外設(shè)時(shí)鐘
EALLOW;
GpioCtrlRegs.GPADIR.bit.GPIO3 = 1; //GPIO3方向?yàn)檩敵?/span>
EDIS;
while(1)
{
GpioDataRegs.GPADAT.bit.GPIO3 ^= 1;
//GPIO3電平翻轉(zhuǎn)一次
delay_loop();
} }
void delay_loop() //延時(shí)函數(shù)
{
Uint32 i;
for (i = 0; i < 20000; i ) {;} //延時(shí)約500ms
}
DSP系統(tǒng)的仿真過(guò)程與單片機(jī)系統(tǒng)類似。需要將DSP集成開(kāi)發(fā)環(huán)境CCS生成的可執(zhí)行的.cof或.hex文件加載到DSP芯片。如果加載.hex文件,只能運(yùn)行,不能進(jìn)行源代碼級(jí)的仿真調(diào)試,故一般選用.cof文件,對(duì)于2802x DSP芯片可以進(jìn)行源代碼級(jí)的仿真調(diào)試。加載目標(biāo)代碼文件后,應(yīng)設(shè)置時(shí)鐘頻率。
完成上述操作后,只要在Proteus ISIS界面中的選擇仿真快捷命令按鈕,即可仿真運(yùn)行。可以完成連續(xù)運(yùn)行、單步運(yùn)行、暫停、停止等操作。