打印

请教TMS320F2812的几个问题

[复制链接]
4202|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zzu65|  楼主 | 2008-8-15 11:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1、高低速外设时钟是什么意思?
TMS320F2812的高速外设时钟寄存器HISPCP和低速外设时钟寄存器LOSPCP分别控制高低速外设时钟
通过寄存器中的位2~0可以配置高低速外设时钟相对于SYSCLKOUT的倍频系数
高(低)速外设时钟 = SYSCLKOUT/(n x 2),其中,n = 1~7
我的疑问是,那些是高速外设,那些是低速外设,他们的时钟公式是一样的,所以低速外设的时钟完全可以配置为高于高速外设时钟,那么这应该是一个相对的概念
在2812的内部结构图里,高速外设的框框里有EVA/B,ADC,在低速外设里有SCI,SPI,McBSp,但是在例程中用EVA的时候没有设置过这个时钟,用AD的时候设置过,2812的外设不止这些,那么其他的是属于高速还是低速,什么时候需要设置这个时钟?

2、如何设置PIE配置寄存器PIECTRL?
在例程中使能PIE中断的时候有这么一条语句:
PieCtrlRegs.PIECRTL.bit.ENPIE = 1;   // Enable the PIE block
该位置1所有向量取自PIE向量表,该位置0,PIE无效,向量取自引导ROM的CPU向量表或XINTF7区外部接口。
例程中好多次用到PIE中断的时候也没有碰到这条语句,在McBSP的例程中这么设置了,不知道什么意思,有和没有什么区别,什么时候需要用?

3、锁相环倍频
2812可以通过PLL控制寄存器来选择锁相环的工作模式和倍频系数,一共可以设置10种倍频系数,CLKIN =  (OSCCLK  X n)/2,其中,n = 1~10,如果晶振为30MHz,那么CLKIN = 15,30,45,60,75,90,105,120,135,150MHz,大家再看例程中给出的设置倍频系数的程序,以下宏定义只能选择一种,分别对应倍频系数为:10~1
#define CPU_RATE    6.667L   // for a 150MHz CPU clock speed (SYSCLKOUT)
#define CPU_RATE    7.143L   // for a 140MHz CPU clock speed (SYSCLKOUT)
#define CPU_RATE    8.333L   // for a 120MHz CPU clock speed (SYSCLKOUT)
#define CPU_RATE   10.000L   // for a 100MHz CPU clock speed (SYSCLKOUT)
#define CPU_RATE   13.330L   // for a  75MHz CPU clock speed (SYSCLKOUT)
#define CPU_RATE   20.000L   // for a  50MHz CPU clock speed (SYSCLKOUT)
#define CPU_RATE   33.333L   // for a  30MHz CPU clock speed (SYSCLKOUT)
#define CPU_RATE   41.667L   // for a  24MHz CPU clock speed (SYSCLKOUT)
#define CPU_RATE   50.000L   // for a  20MHz CPU clock speed (SYSCLKOUT)
#define CPU_RATE  100.000L   // for a  10MHz CPU clock speed (SYSCLKOUT)
怎么和上面公式计算的不一样,我的实际晶振为30M,有一个例程的系统时钟不能过高,我设置倍频系数改为5,宏定义#define CPU_RATE   20.000L,即选晶振为50M,程序运行正常,频率太高就不能正常运行,说明是有50M这个频率的,但是上面的公式计算中没有啊,难道计算有误?不知道还有其他地方需要设置吗?

请高手指教,非常感谢!

相关帖子

沙发
mr.king| | 2008-8-15 18:58 | 只看该作者

1,上电有默认值,如果你需要测量外脉冲时间

参数,你必须知道自己的内部时钟,选高的分辨能测量更精细,但要兼顾长度不会测量过程溢出(溢出一次还是有标志可查的),低速时钟能测量更长时间.2/3没仔细了解,用DEMO工程中参数

使用特权

评论回复
板凳
keyuandan| | 2008-8-18 19:13 | 只看该作者

可以到www.haiii.com去进行及时交流

这个站点其实是让我们工程师都到上面注册,并填写自己的兴趣点(关键词),然后,再下载一个客户端,当别人问和自己的兴趣点相同的时候,就会发一个聊天请求,开始聊天,就像qq一样。

你试着输入“fpga”,或者“视频”,或者“dsp”,或者“TI”等,找找看,总之,就是你输入问题的关键字,只要有人把这个关键字填写到自己的兴趣点关键字里面了,大家就能建立聊天了。呵呵,比bbs更快!

使用特权

评论回复
地板
liulang34| | 2008-8-25 19:18 | 只看该作者

求助

我是个初学者,太多不明白,而且这里网络受限,好多网站打不开,我想请问下楼主,能不能发给我一些2812的例子,最好全点(包括完整头文件和工程中包含的.bjt,.asm,.cmd及.c)因为也找了些例程,发现不是找这个就是少那个,而且又不能合用。
我邮箱:sunue_zzy@163.com,这里先谢谢楼主好心了,希望大家共同进步

使用特权

评论回复
5
spiderman9| | 2008-9-22 23:19 | 只看该作者

RE

楼主要仔细多看看书啊:)
DSP外挂一个有缘或无缘的晶振,然后内部靠外部这个晶振做**,PLL倍频后分高速低速时钟,然后你用哪个DSP外设就开哪个时钟,没有时钟,外设不工作!!!

使用特权

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

本版积分规则

3

主题

25

帖子

1

粉丝