使用飞思卡尔的DG128有一年多了。这款芯片的内部资源和外围接口都很丰富,甚至还可以向上移植ucosII呢。清华大学的邵老师就移植过。
但是,我对于这款芯片一直有个问题没有搞清楚。DG128的时钟问题。它不同于以往飞思卡尔(或是摩托罗拉)的8位机。每个模块的时钟源,时钟分配都很清楚,不仅有详细的论述,而且还是时钟框架图。但是DG128没有,所以只要与时钟相关的工作都得反复琢磨。但是,一个单片机里有哪一块不与时钟密切联系着呢。
PLL频率,内部总线频率,ECLK的关系到底是怎样的?
用户手册上讲,如果没有时能PLL的话,那么内部总线频率是外部时钟的一半;如果使能PLL,那么内部总线频率是PLL频率的一半。但是,飞思卡尔官方给的内部总线频率最高超到25MHz,也就是说此时PLL的是50MHZ了,而我在平时使用中一般都将内部总线超到了32MHZ,而且,在该频率下,经过分频,出来的PWM波的频率也是预期好的。所以,我对DG128的时钟系统更是疑惑了。
由于没有详细的论述或是框架图,所以当超频之后,很多模块的最高频率是多少就很不明确了。拿ATD来说吧,数据手册讲ATD的最高频率是2MHZ,但拿是未超频的情况下的。一旦超频就不知道了具体是多少了。而且用模数递减器来定时也是很不准确的。
哎,DG128是一款优秀的嵌入式芯片,但是它的时钟很糟糕。不知大家又什么见解,我们或许可以一起讨论讨论,小弟的疑惑如上所述,或有不确,请指教!
用户1063797 2008-5-2 09:30
用户134833 2008-3-19 18:38
用户1383412 2008-3-19 11:00
用户134833 2008-3-12 17:37
用户1697531 2008-3-11 21:56