打印
[时钟]

关于28335 CpuTimer0时钟偏差的问题

[复制链接]
2456|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pinda_|  楼主 | 2014-3-28 12:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在调DSP F28335的程序,发现定时器0的时钟比预计的大概慢了4倍左右,具体问题描述如下:
ConfigCpuTimer(&CpuTimer0, 150, 1000000)配置正确,但是,时钟就是慢了4倍左右,每次进入中断,都需要4秒左右
实际情况反应应该是1秒,这里不清楚什么原因导致的。

这边暂时没法用示波器测量,但是,程序采用TI的example也是一样的问题。
timer0的时钟对我的程序很重要,请问下,晶振出问题,会这样反映吗?现在,纠结中……

相关帖子

沙发
pinda_|  楼主 | 2014-3-28 12:49 | 只看该作者

使用特权

评论回复
板凳
pinda_|  楼主 | 2014-3-28 13:19 | 只看该作者
查明原因,由于CCS3.3,软件的问题,但是,软件安装是正确的,我的.out文件拿给别人烧就可以,自己烧就出问题,烧录那边有什么技术吗?

使用特权

评论回复
地板
zhangmangui| | 2014-3-28 22:11 | 只看该作者
pinda_ 发表于 2014-3-28 13:19
查明原因,由于CCS3.3,软件的问题,但是,软件安装是正确的,我的.out文件拿给别人烧就可以,自己烧就出问 ...

你先要确定外部时钟是多少  然后进入之后PLL是怎么设置的   
还有定时器的时钟是怎么设置的   这都是关联的
你把生成的.out给别人测试   板子有没有给他一起测呢
看看你板子上有没有与时钟有关的跳线

使用特权

评论回复
5
pinda_|  楼主 | 2014-4-1 15:04 | 只看该作者
zhangmangui 发表于 2014-3-28 22:11
你先要确定外部时钟是多少  然后进入之后PLL是怎么设置的   
还有定时器的时钟是怎么设置的   这都是关联 ...

问题解决,不是编写软件本身的原因,而是在于CMD文件中DATA段的分配有问题。

之前一直用片内RAM作为数据段,后来发现不够,采用外部RAM来扩,所以,一直就想着用外部RAM。

最近搞的东西,接在一起,导致忘记了这一点。我查了些资料,了解了一些经验,发现需要在程序启动之初,对RAM优先进行初始化,保证可用就OK,大致分为以下几步:
第一步:先写一个函数,该函数采用Xintf相关寄存器的地址值直接赋值(在没有初始化Xintf下,好像只能这么干)。
第二步:codestart.asm文件在LB _cint_00之前加上一段汇编,意思是在此之前先去初始化外部RAM,当前需要对该函数在该汇编文件中先申明一下。
最后一步:上电再重新执行InitXinft()函数,将你需要的配置重置就行了。

应该类似与STM32下的FSMC(刚刚看了下,应该相似)
@zhangmangui

使用特权

评论回复
评分
参与人数 1威望 +6 收起 理由
zhangmangui + 6 很给力!
6
zhangmangui| | 2014-4-1 21:33 | 只看该作者
pinda_ 发表于 2014-4-1 15:04
问题解决,不是编写软件本身的原因,而是在于CMD文件中DATA段的分配有问题。

之前一直用片内RAM作为数据 ...

谢谢你详细的分享

使用特权

评论回复
7
1831249703| | 2014-12-11 17:53 | 只看该作者
pinda_ 发表于 2014-4-1 15:04
问题解决,不是编写软件本身的原因,而是在于CMD文件中DATA段的分配有问题。

之前一直用片内RAM作为数据 ...

你好,写什么代码呢?我跟你遇到同样的问题

使用特权

评论回复
8
pinda_|  楼主 | 2014-12-12 18:45 | 只看该作者
:D 外部RAM使用。不知道和你的类似不。

使用特权

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

本版积分规则

个人签名:该吃吃,该喝喝!!!

13

主题

173

帖子

0

粉丝