打印

DSP学习心得

[复制链接]
6216|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
renyaq|  楼主 | 2012-5-12 20:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
DSP, AD, IO, GPIO, gp
一直想等比赛完了,写点东西留给刚上路的难兄难弟们,一直有事耽搁,可能是比赛太累了引起各种失调 - -!
因为要准备大学生电子设计大赛,所以一开始自学了5416这个板子,后来由于5416片上资源实在太少不适合电子竞赛就转学了2812。因为身边一直也没个人交流,所以每一步都比较艰辛,想起住在实验室的一年里,每天大半夜喝着咖啡,听着小曲,调着板子,日子艰辛却令人回味,觉得日子就这么永远继续下去也不错,娶个板子。。。 汗
先提个建议:
1. 手里一定要有本关于28X硬件的书方便查,不要没事就问些比如外部中断是电平有效还是上升有效呢,哪个寄存器控制呢? 现在的书好像都是翻译TI的文档的译版,内容差不太多 没什么见解,都是技术手册类型的。
2.多上论坛,多下论文,多搜google。虽然有时候论坛里的问题不会被很好解决,论文很多都是没有被实现就拿出来一顿闲扯,但是 我在论坛上还是认识了很多很多好人,帮我解决问题,让我张见识,包括我大哥。好论文就看看各个学校的优秀硕士毕业设计就好了。还有外国的一些dsp论坛,也不错的,外国人在论上说English不像英语46级那么贱,我都看的懂,学到不少东西。
3.多实践才能发现有些东西不像书上说的那么简单,当然把问题弄明白后,发现 恩 确实那么简单。
4.无论是28x,还是达芬奇,还是arm fpga,开发工具始终都是外家工夫。硬件,编程功底,算法思想才是内家工夫,不要以为用了DSP了就比用51 avr的人强。一直很佩服那个用MEGA8做usb转并口下载线的那个大哥,在我们这用的泛滥成灾了。 有时候,用dsp做流水灯,测温度和用dsp做随机等效采样,语音识别,图像处理的人 是有些差别的。

XINTF:因为学习DSP是从54X入手的,而5系的DSP都是分成3个区:程序区,数据区,IO区 入手2812的时候自以为是了一下,转了很久才晓得2812的存储器映射是把数据和程序区连在一起了,而5系的所谓IO空间被替换成了XINTF,当然XINTF也是负责外部接口的。想想,2812人家都是32位的了,空间一下子从2^16上位到了2^32,没必要再分家了吧。大家用单片机的时候往往比较在意IO口的操作,而学DSP的时候总线结构是一定要理解的。用XINTF的时候,把数据线接一个缓冲器,就相当于一组IO口了吧,分配一个地址就相当于一组IO口,只要把XINTF和缓冲器的片选弄好,你就有无数个GPIO了。用外部存储接外设的时候,要知道你板子上的flash和ram都映射了哪两组zone区,别把这两块区域用了。要会用*((volatile unsigned int *)0x4FFB)这类的方式操作外部存储单元。
GPIO: 一定要确定你的GPIO脚的配置,是配了GPIO还是第二功能。确定输出输入配了没。 很简单,但是程序改多了有时候就容易忘。还有,DSP的GPIO很脆弱,具体多少mA忘了,不过有一次调一个dds AD9852的时候,用mps430一直没问题,用2812调,烧了。很郁闷不知道怎么回事,想了半天以为带电插拔让静电给烧了?费了好大劲,重焊了快片子,再调,再烧··· 诅咒了半天9852,后来发现可能是限流电阻小了,2812的GPIO比单片机腼腆的多。
ADC: 2812的ad说道很多,配起来也较麻烦,那个启动/停止这两种方式要理解,DSP内部AD通道之间有时会有串扰,要避免串扰,未使用的通道要接地。还有一个比较重要的地方,就是ad的采样率和存储速度。做示波器,把ad开到了最快,但是实际上发现怎么只有1M不到的样子。AD没配错,郁闷了半天,想到其实AD跑的再快,存储的速度跟不上也没用。存储速度也就是说 ad_value[w]=AdcRegs.RESULT0;的速度,这关系到ADC中断函数的效率情况。不过我试过把中断函数写的再简洁,最终整个采样也就跑几M而已。 外部电路的话一般都是用FPGA对ram乒乓操作解决的,dsp一直没想到什么好办法。

相关帖子

沙发
renyaq|  楼主 | 2012-5-12 20:33 | 只看该作者
中断:中断也不知道说什么好。进入终端和结束中断的过程要搞好,有时候即使你带仿真器是好的,脱机了也会有问题。当然引起脱机问题的原因,是什么问题都有可能。另外记得要在时钟函数里,把外设时钟打开,要不然外设不跑中断当然进不去 - - 我总这样 人生···
CMD:看看书,其实也没什么好说的,写好一个就放着吧,用TI的FFT FIR这些算法的话,CMD要开辟相应的区,具体怎么开比如FFT的旋转因子的存储空间啊相应文档里说的很清楚。 CMD里不能用//注释 要用/* */才能编译通过(不知道是不是只有我的ccs才这样 呵呵)
脱机:这个纠结了我很久,因为想要脱机后程序和数据依然在ram里跑,在网上也一直没找到具体操作方法。后来在网上遇见了我大哥(风之殇 网名 呵呵 不知道咋起个这个犹豫的名字呢),他给了我一种装载部分代码的方法,用#pragma CODE_SECTION(hoho_all, "ramfuncs");加上内联函数inline的方法。这个具体的过程一两句也说不清楚,在TI找到了说明文档,其实说的巨详细的。后来又找到了TI关于把全部代码上电之后从flash转移到ram里跑的方法,用的时候只需要加入两个汇编程序和新的CMD文件,希望这个大家用的时候一定把原理搞懂,汇编程序看懂。
IQMath:hellodsp里有中文文档,不会IQ格式,不是好dsp工程师。开始觉得不会就不会呗,后来细化的算法精度的时候发现没Q格式当然是不行的。编译的时候CMD里也要有申明的。
数字信号处理算法:由于电脑悲剧,以前的关于滤波器 FFT 脱机的TI文档都不见了,文档上讲的巨详细的,给不了大家了,手里有一个写的示波器的程序,上面FFT,FIR,脱机,一些正弦内插的算法都有,屏是sed1335的控制器,大家想看就看下。不过我觉得比如说如果想做做FFT,我建议一定要找到TI的文档手册,认真的看一遍,我就吃过很大的亏。滤波器要配合matlab算出滤波器系数,matlab的源文件 TI关于滤波器的手册里已经给了,不过给的matlab里面用的是fir1型滤波器,即填入截止频率 波动幅度(DB)等一些参数就会生成滤波器系数了。如果需要根据已知的幅频特性表得出滤波器系数,可以用matlab里的fir2型滤波器,具体需要的话大家可以研究下,matlab我也是半瓶子。

刚跟女朋友闹别扭,哎人生··· 极其影响心情,就写这些吧。最后想感谢下我大哥,还记得第一次跟大哥网上聊天是因为请教他脱机问题。因为很久没用,他帮我找了一个小时的程序,后来我掉线了(学校的网络质量就像武汉的天气 水分太大)。哈哈 他找了半天找到了,结果我人不在了,还以为我不理他跑了,给他气的 呵呵呵。 大哥是个好人··· 希望以后我有能力了能和他一起创业,呵呵。
有一段时间没碰dsp了,说的东一块西一块想起什么说什么,大家别见怪,哪里说的有问题也请一定指正,别让我误人子弟。以后想学学达芬奇,最近在看H264,觉得基础薄了 呵呵 加油了。。。 大家也加油。。。

使用特权

评论回复
板凳
supernan| | 2012-5-12 20:41 | 只看该作者
写的不错的心得

使用特权

评论回复
地板
栩栩如生| | 2012-5-12 20:41 | 只看该作者
来帮楼主顶下~~

使用特权

评论回复
5
houcs| | 2012-5-12 20:46 | 只看该作者
写得不错

使用特权

评论回复
6
renyaq|  楼主 | 2012-5-12 20:46 | 只看该作者
转的,呵呵

使用特权

评论回复
7
zwll| | 2012-5-12 20:49 | 只看该作者
跟女朋友分手都写上了,可想而知楼主的心情了。安慰下。呵呵。

使用特权

评论回复
8
liuzaiy| | 2012-5-12 20:49 | 只看该作者
别人的经验喊就是我们后来者的捷径

使用特权

评论回复
9
yinxiangh| | 2012-5-12 20:51 | 只看该作者
之前课堂上讲dsp老师总是半节人生半节课,还是得自己多看书

使用特权

评论回复
10
pangb| | 2012-5-12 20:52 | 只看该作者
顶一顶

使用特权

评论回复
11
梅花望青竹| | 2012-5-13 10:09 | 只看该作者
正在学习dsp,很不错,感谢分享!

使用特权

评论回复
12
meng219902| | 2012-5-13 10:26 | 只看该作者
顶顶顶!!我们就希望有这样的**,

使用特权

评论回复
13
cooran| | 2012-5-14 17:04 | 只看该作者
分享的经验很值得借鉴!

使用特权

评论回复
14
vivilzb1985| | 2012-5-15 13:54 | 只看该作者
多上论坛,多下论文,多搜google,这是学习的关键的,赞一个啊

使用特权

评论回复
15
meishizhaoshi| | 2012-5-15 21:17 | 只看该作者
很有收获

使用特权

评论回复
16
wangjinlili| | 2012-5-15 21:29 | 只看该作者
这个值得好好看看

使用特权

评论回复
17
teabottle| | 2012-5-15 21:48 | 只看该作者
好有深度啊

使用特权

评论回复
18
firstblood| | 2012-5-17 15:28 | 只看该作者
写的比较朴实,贵在这种**不懈的精神啊

使用特权

评论回复
19
张凤武| | 2012-5-17 16:49 | 只看该作者
感谢楼组分享,回顾之前的日子是不是很感动呢?

使用特权

评论回复
20
julien| | 2012-5-21 17:19 | 只看该作者
多多分享呀,这样才能进步

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

700

主题

10138

帖子

4

粉丝