首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Timer问题

Timer问题

我用DSP56f805EVM采样60Hz的电压信号. 程序如下:

我的理解每次比较中断后,TmrA0_LOAD寄存器的数值送入定时器.然后定时器增加到TmrA0_CMP1的数值后,再次中断.

我得到的结果是: 如果TmrA0_CMP1 = 0xffff. 结果很好. 染而,如果改TmrA0_CMP1 到其他值的时候,就出现了问题.我把结果存在 .doc文档中. 定时器的工作还怎么设置呢?

高手请指点.

谢谢.

 *TmrA0_CNTRL = 0x3220; // Count rising edges of primary source
 *TmrA0_SCR &= 0x4000;  // Enable compare interrupt
 *TmrA0_CMP1 = 0xffff; // TimerA0 Compare_1
 *TmrA0_LOAD = 0x0000; // TimerA0 load initially
 *TmrA0_CNTRL = 0x0000;  // TimerA0 set to 0, no operation

LEON
记不清楚了  这里也没805的用户手册

不过定时器工作模式有很多种

看看你自己选的工作模式

然后建议仔细阅读user manaul中对Timer工作模式的解释
世界上失败只有一种那就是半途而废。
解决了?
我再中断中toggle板子上的LED。如果Timer频率设置太快,中断处理跟不上。采样回来的信号反映的频率很低。
LEON
返回列表