TC234 之STMDIV 工程中设置方法

现在想明白了为什么在定义CCUCON0 的时候为什么要使用 ##  拼接符?

我想是因为PLLfreq  有好多选择  就我知道的有80MHz  150MHz  200MHz

 

ifxScu_cfg.h 中 

 

 

 

#define  IFXSCU_CFG_GTMDIV_200MHz      200MHz 就是pllfeq   

现在就用到 ##  拼接符号的 概念了 

 

 

 

上图中的pllfreq   我已经定义为200MHz  

那么 上图就是   

(IFXSCU_CFG_STMDIV_##pllFreq << IFX_SCU_CCUCON1_STMDIV_OFF)

实际上就是  

(IFXSCU_CFG_STMDIV_200MHz << IFX_SCU_CCUCON1_STMDIV_OFF)

 

前面已经定义了   

#define IFXSCU_CFG_STMDIV_200MHZ     (IFXSCU_CFG_MAXDIV_200MHZ * 2)     /*Max: 100MHz */

 

所以我猜想这样的话   STMDIV 就等于2   

 

现在我验证一下:

#define IFXSCU_CFG_STMDIV_200MHZ     (IFXSCU_CFG_MAXDIV_200MHZ * 8)      

然后仿真以下, 看一下STM的分频系数是不是变成8了。

 

 

 

 

 

 

现在已经是8分频了 但是实际上STM 的输入时钟应该是和2分频 一致的。  

 

观察指示灯的 闪烁 频率还是1秒一次  。  

 

 

 

我记着好像是频率 比率 是确定的,一般不能胡乱修改。

 

 

 

posted @ 2020-09-22 20:37  STEVEN-SUN  阅读(359)  评论(0)    收藏  举报