TMS320F28P650DK: DCC

Part Number: TMS320F28P650DK
Other Parts Discussed in Thread: C2000WARE

当我使用DCC进行时钟监控时,我发现如下现象

使用XTAL配置DCC的clock0的时钟源

使用INTOSC2配置DCC的clock1时钟源

计时器种子值配置如下:

#define DCC_VALID   130
#define DCC_COUNT0  450
#define DCC_COUNT1  500 
当DCC检测到时钟故障时,我在时钟故障的中断函数中读取当前计数器的值,发现

clock1的计数器值为1048575,我换算了一下,发现这是clock1的计数器值全为1时的数值

我重复了几次,这个数值经常会出现,我不理解为什么会出现这个值。
希望帮忙解答下

 

  • 已经收到了您的案例,调查需要些时间,感谢您的耐心等待。

  • 你好,

    您是否尝试过以 C2000WARE 示例作为起点?

    此致,

    艾西瓦娅

  • 我就是在C2000WARE示例dcc_ex3_continuous_monitoring_of_clock上修改而来,只不过示例的时钟源0选择的是DCC_COUNT0SRC_INTOSC2,时钟源1DCC_COUNT1SRC_PLL,我对时钟源和窗口值做了修改。
    此外我发现当我按我提问时的配置,当窗口值设定为5000时,clock1的计数器值有时也会为1048575,但出现的频率远远低于窗口值为500时

  • 你好,

    我使用了“ dcc_ex3_continuous_monitoring_of_clock_syscfg”函数来辅助计算与计数器种子值相关的这些值。请查看:

    此致,

    艾西瓦娅

  • 您好,按照手册给的公式计算和使用你说的函数计算种子值有什么区别,怎么不一样

  • 你好,

    艾西瓦娅本周出差,不在办公室。请您谅解回复可能会有所延迟。

    此致,

    德莱尼

  • 你好,

    我删除了之前的回答,以便在这里更清楚地解释。您的DCC误差和频率误差容限是多少?能否以这种格式分享您的所有计算过程,以便我们进行验证?

    我使用了“ dcc_ex3_continuous_monitoring_of_clock_syscfg”函数来辅助计算,以便使用正确的公式获得与计数器种子值相关的这些值。请检查一下。注意,如果选择了“测量系统时钟频率”,则“计数器 1 种子值”会有所不同。这意味着测量的是精确频率,而不是比率。您是否选择了此模式?

    此致,

    艾西瓦娅

  • 你好,

    我删除了之前的回答,以便在这里更清楚地解释。您的DCC误差和频率误差容限是多少?能否以这种格式分享您的所有计算过程,以便我们进行验证?

    我使用了“ dcc_ex3_continuous_monitoring_of_clock_syscfg”函数来辅助计算,以便使用正确的公式获得与计数器种子值相关的这些值。请检查一下。注意,如果选择了“测量系统时钟频率”,则“计数器 1 种子值”会有所不同。这意味着测量的是精确频率,而不是比率。您是否选择了此模式?

    此致,

    艾西瓦娅