Other Parts Discussed in Thread: SYSCONFIG
我在sysconfig里面修改了clb的时钟,如下图,但是发现在Device_init(void)函数中并没有体现出来。
修改了CLBCLKDIV,但是在device中没有看到有修改(但是我修改了外部时钟从25MHZ到20MHZ,确认已经修改过来了)。
现在也不知道CLB运行的时钟是多少,难道需要通过位域的方式来修改寄存器?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我在sysconfig里面修改了clb的时钟,如下图,但是发现在Device_init(void)函数中并没有体现出来。
修改了CLBCLKDIV,但是在device中没有看到有修改(但是我修改了外部时钟从25MHZ到20MHZ,确认已经修改过来了)。
现在也不知道CLB运行的时钟是多少,难道需要通过位域的方式来修改寄存器?
您好,
在clocktree tool中修改此项应该会修改CLBCLKCTL寄存器中的TILECLKDIV和CLBCLKDIV位。
从TRM中查看,这些位似乎是隐藏的,这在我们的文档中是一个错误,会确保在下一版TRM中对此进行修正。
另一个方面是CLB是否使用同步时钟或异步时钟(由CLBCLKCTL控制)。如果使用同步时钟,时钟将等同于EPWMCLK,由EPWMCLKDIV控制。
如果使用异步时钟,时钟应该由时钟树工具控制,应该会看到CLBCLKCTL中的保留位发生变化(这些保留位是CLBCLKDIV和TILECLKDIV,它们是隐藏的):
您好,
clocktree假设CLB使用异步时钟,这会让人困惑。我会考虑是否可以更新以更清晰地表达。
我认为TRM和时钟树之间的RAWCLK和AUXPLL存在命名不匹配。
我会查找正确的名称应该是什么。