电子说
本文介绍ADI SHARC DSP图形化开发,在一般我们都是使用vdsp++进行c语言开发的,但其实adsp 21489也可以进行图形化开发,使用sigmastudio,非常简单和方便。
图形化开发前的准备工作
Visual DSP++5.1.2软件
CCES2.0.0或者更新的版本
我装的是2.2.0,当然后面有新版,注意及时更新。(特别注意,CCES软件需要注册,才可以正常使用,新手务必要获取正确安装CCES的方法再去安装,自行安装后无法使用的结果就只有重装系统,切记切记,熟练工可忽视此条)
SigmaStudio4.5
Sigmastudio开发软件请到官网的这个地址,下载最新的软件,因为SigmaDSP完全依赖软件,所以请保持软件的最新版本,以获得更多的功能。(软件是免费的)软件安装全部下一步即可完成。
http://www.analog.com/cn/design-center/processors-and-dsp/evaluation-and-development-software/ss_sigst_02.html
SigmaStudioForSHARC
这个软件是SigmaStudio的插件,装上它之后才可以用SigmaStudio做图形化开发。软件安装全部下一步即可完成。
SharcAudioToolbox
这个软件是SHARC的补充算法工具包,装上它之后,图形化编程里会有更多的音频算法模块可供选择。软件安装全部下一步即可完成。
以上软件均需要开发前就安装好。
Cygwin
这个软件涉及到CCES的固件与SigmaStudio软件的融合,非常关键,具体怎么装怎么用,我在程序融合的章节会详细讲解。可等到最后程序融合前再安装。
Fireware的烧写
先把基本原理简单说一下,首先用CCES软件开发接口的固件,叫fireware,并用JTAG仿真器把fireware的LDR烧写到SPIFLASH里去做master boot。而后用USBi仿真器,在SigmaStudio软件做21489的软件功能开发,导出开发文件。再把这个开发文件和fireware融合成新的含21489软件功能的LDR,用JTAG仿真器烧写到SPIFLASH里boot,脱机实现软件功能。
第一步,接口固件开发和烧写, ADI专门提供了官方的Fireware,只需要按照他的硬件设计来,就可以直接用。我们开发板就是参照官方的硬件设计来的,所以这里直接用Fireware,ss_app_sh489.ldr,省去了开发这一步。把他烧写到开发板的SPIflash里。请参照SPIFLASH烧写来操作。
直通(1)
Fireware烧写好了之后,SigmaStudio图形化开发的基本条件就达成了。我们重新来链接一下硬件,进入图形化编程的阶段,这个阶段我尽量多写一些例程,让大家能够尽快熟悉这个软件开发的全过程。
1. 按图链接硬件。
2. SW2和SW3调整到1/0,给开发板上电,正常上电后:USBi那里的D2灯被点亮;核心板Power灯被点亮;底板POWER灯被点亮。Fireware boot ,LED1和LED3灯变亮,而LED2不亮。
3. 打开SigmaStudio软件。
4. 先把安装的SHARC模块都添加到软件里来,见下图步骤:
安装的SHARC专用开发工具模块全部在这里,打勾选中,添加DLL即可加入到软件中。
5. 新建一个21489的工程
6. 配置21489硬件,将下图所示的模块拖出来,用线连起来,完成硬件设计。
7. 软件逻辑电路图设计
这一步非常关键,21489想要实现任何的软件功能,都需要在这里进行开发,请一定要理解,我会从最简单的直通例程开始讲。外部音源输入模拟音频信号,经过AD1938做ADC,变成010101的数字信号送到21489,21489获取信号后,不做任何处理,交给AD1938做DAC,将010101的数字信号变成模拟信号,并输出到外部音箱,实现直通的功能。
下面来看一看这个逻辑是如何实现的。
将输入和输出通过线连起来,就完成了直通的设计,模拟0/1通道输入,模拟0/1通道输出,不做任何处理,输入这边手机输入音乐,输出那边音箱播放手机输入的音乐。
软件上是这么做的,那么硬件应该怎么接呢?请看下图:
软件里我们设置的是输入0/1,那么在硬件上,我们就让模拟输入接到输入0/1上;软件里输出是0/1,那么在硬件上,我们就让模拟输出接到输出0/1上。他们是一一匹配的,这样就完成了硬件的接入工作。
8. 用USBi下载逻辑电路图,实现直通功能,点击下载后,板子上的LED2灯也亮起,这时候三个LED就全亮了。
下载速度很快,点完之后,就能从音箱听到手机播放的音乐,实现了直通。
特别注意:USBi下载逻辑电路图,是暂存在RAM里的,一旦板子断电,这些音效就都没有了,所以这只是在线调试,如果想要把SigmaStduio的逻辑电路图程序固化到flash里,实现脱机运行,就需要另外的一系列动作,后续来讲解。
编辑:jq
全部0条评论
快来发表一下你的评论吧 !