DSP芯片可以用Proteus软件仿真吗?(dsp proteus)
Proteus是一款应用广泛的电子电路设计、印刷线路板(PCB)设计与系统运行仿真的软件。
它主要由ISIS软件和ARES软件两部分组成。 ISIS是电子电路设计系统的原理图编辑软件,且具有仿真功能。ARES是PCB布线编辑软件。
该软件支持多种型号的CPU与单片机如8086、8051、PIC、 68HC11、AVR、ARM等,可与当前流行的单片机开发环境如Keil等连接调试的软硬件仿真。 目前它备受嵌入式系统应用爱好者的青睐。
该软件在7.9版本上开始支持Piccolo系列2802x等芯片的仿真。即可以采用Proteus进行DSP芯片应用系统的电路设计与软硬件仿真。
该软件直接在基于电路原理图的虚拟原型上进行程序的编写与调试,并进行功能验证。在仿真过程中,用户可以用鼠标点击开关、按键、可调电阻等输入外设模型,使单片机根据输入信号做出响应,并将处理结果实时显示在各种显示器如数码管、LED、LCD等,并可驱动各种常用电机等虚拟输出外设,实时看到运行后的输入、输出效果。
Proteus软件把单片机的程序嵌入到虚拟硬件中,整个过程与真实的软硬件调试过程相似,能实现其他仿真软件难以实现的仿真效果。用户在自己的计算机上安装了Proteus软件,就好像建立了一个大型单片机实验室,其中有各种单片机芯片,数万种电子元器件、信号发生器和各种测量用仪器仪表如示波器、逻辑分析仪、虚拟终端、电压表、电流表等。
运行Proteus ISIS软件后的界面如下图所示。整个屏幕分为若干个区域,由原理图编辑窗口、预览窗口、绘图工具栏、主菜单栏、主工具栏、对象选择窗口、仿真按钮等组成。
Proteus ISIS软件界面
利用Proteus ISIS软件对单片机系统进行电路原理图设计的基本步骤为:新建或打开一个设计文件;选择需要的元件到元件列表;放置元件(包括电源终端、网络标号、测量仪器等)、设置属性并连接电路;保存设计文件。下面通过实例,说明电路原理图设计的方法。
例,设计DSP控制器应用系统电路,用DSP控制器的GPIO3引脚控制一个LED指示灯,让LED发光二极管不断地闪烁。
首先选择需要的元件到元件列表。利用左侧工具箱或菜单命令,可利用关键字搜索或分类添加元件。从Proteus元件中选取的元件如下。
· DSP芯片:Microprocessor ICs, TMS320F28027PT;
· 晶振:CRSTAL, 10MHz;
· 电容:CAP, 27pF, 2个;
· 电解电容:CAP-ELEC, 10μF;
· 发光二极管:LED-YELLOW;
· 电阻:RES, 100Ω 1个,10kΩ 1个;
· 按钮:Button。
元件选取完成后,可以放置元件并连接电路。单击元件列表中需要放置的元件,通过移动鼠标,可以将该元件放置到原理图编辑窗口。除了一般的元件外,电路还需要电源和地等端子。单击工具栏中的端子按钮,可以将电源(POWER)和地(GROUND)等端子放置到原理图编辑窗口。通过鼠标可以实现元件的连接。绘制完成的电路原理图如下图所示。
DSP系统LED闪烁电路原理图
程序代码如下:
/* main.c 连接到GPIO3的指示灯闪烁*/
#include "DSP28x_Project.h" //头文件包含
void delay_loop(void); //函数声明
int main(void)
{
InitSysCtrl();
//初始化系统系统时钟,包括PLL, 看门狗时钟, 外设时钟
EALLOW;
GpioCtrlRegs.GPADIR.bit.GPIO3 = 1; //GPIO3方向为输出
EDIS;
while(1)
{
GpioDataRegs.GPADAT.bit.GPIO3 ^= 1;
//GPIO3电平翻转一次
delay_loop();
} }
void delay_loop() //延时函数
{
Uint32 i;
for (i = 0; i < 20000; i ) {;} //延时约500ms
}
DSP系统的仿真过程与单片机系统类似。需要将DSP集成开发环境CCS生成的可执行的.cof或.hex文件加载到DSP芯片。如果加载.hex文件,只能运行,不能进行源代码级的仿真调试,故一般选用.cof文件,对于2802x DSP芯片可以进行源代码级的仿真调试。加载目标代码文件后,应设置时钟频率。
完成上述操作后,只要在Proteus ISIS界面中的选择仿真快捷命令按钮,即可仿真运行。可以完成连续运行、单步运行、暂停、停止等操作。