赞
踩
作者的话
我们在做A2B的过程中,会涉及到SimgaStudio工程的开发,举个例子,ADAU1452的Master工程,ADI给的配置工程非常繁琐,把整个软件屏幕都占满了,那么我们想要在上面继续做算法,是不是感觉软件上的图形化编程空间很不够???
怎么办,操作上鼠标拖来拖去,而且也很不好阅读程序,有这种困惑的兄弟们可以仔细阅读一下这个文档,我来教你怎么简化编程界面,让你写的程序可以轻松的被每个人阅读。
硬件使用列表
AD2428WD-EVB开发板 一块
AD2428WB-EVB开发板 一块
USBi仿真器 一个
A2B 2米双绞线 一根
5V1A或2A的电源 一个
D板输入模拟音源的PC 一台
B板播放模拟音源的耳机 一个
硬件链接
SELFBOOT开关OFF,我们进入调试模式(非常重要,开关不打到OFF,调试会出错,调试的时候一定务必必须把这里OFF)。
物理链接的话,USBi调试器一头通过USB线接PC,一头通过JTAG头接D板;
D和B通过A2B的双绞线链接,D板的Slave出,B板的Master进;
D板的绿色模拟输入接口输入模拟音源,我是直接接在我的电脑的声卡3.5出口;
B板的黑色模拟输出接口输出模拟音源,我是直接接我的3.5耳机;
5V2A电源给D板供电。
SigmaStudio工程
我们这里就是要简化SigmaStudio工程,那就接上一个文档,D板做音效,我们看看有什么小技巧,能让D板的编程变得更加一目了然;
这是D板的ADAU1452 Master工程,上个文档我讲了要做算法,就在这个红框里做,太小了呀,这空间塞一个EQ都嫌满,程序做完了很难阅读。
怎么办?小技巧来了,我们做个子程序!
子程序设计详解
这个模块,把他拖出来,这就是子程序模块:
我打算做5段EQ,那么给他取个名字,就叫5段EQ吧,鼠标点一下模块底下,就跟WORD改名一样,自己取名字:
我把这个子程序改名叫:五段EQ哈哈哈,那么底下也相应的名字改过来了;
让我们点一下这个红框的子程序,进入子程序编程页面:
一片空白,可以随意挥洒算法,是不是就很清晰了。
我们把要做的EQ拖出来:
这个显然是跟主程序没有关联的,怎么办,我们加入关联节点:
用节点把5段EQ给连起来:
再切回到主程序:
你会发现你的“五段EQ哈哈哈”这个模块就有输入输出,和子程序关联起来啦。
然后在做好算法的添加连线:
继续,我后面再给加延时,那就做一个“延时哈哈哈”的子程序,名字随便取,让你和你的兄弟们容易理解就好了。
我们到“延时哈哈哈”的子程序页面来做延时:
回到主程序进行连线:
就到这里,其实你可以继续往后加第三个,第四个,第五个子程序,加更多的音效,我就不继续往下做了;
做好了D的1452 Master程序,再去A2B主工程加载,下载,实现D板调音的功能。
题外话
搞到这里,有兄弟们是不是会想,这子程序一个又一个,那我最多能做多少个子程序?咱们发散一下思维,做100段,1000段EQ行不行?答案是不行,你现在在SigmaStudio工程里做的每一个算法,都会占用ADAU1452的内存,他内存是有限的,这就意味着你加多了就会溢出,就不能正常工作;
那怎么才能知道他工不工作,内存有没有溢出呢?很简单,你做好工程后,点一下下载,系统编译器会帮你判断,如果程序可以正常运行,就直接能够下载,并且还会告诉你每个模块占用了多少的系统资源,让你心里有数。
如果你点下载程序,编译器报错,那就说明你加的算法实在太多啦,超出我们Master主控DSP,也就是ADAU1452的能力范围了,你可能就需要用ADAU1466这种内存更大的ADAU做主控,或者精简算法了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。