PLL时钟最大配制到24M,高于24M在PA01脚看不到波形了,请问下哪里写的不对呢?
void App_SystemClkInit_PLL32M_byXTH(void){
stc_sysctrl_pll_cfg_t stcPLLCfg;
///< 切换时钟前(根据外部高速晶振)设置XTH频率范围,配置晶振参数,使能目标时钟
Sysctrl_SetXTHFreq(SysctrlXthFreq4_8MHz);
Sysctrl_XTHDriverCfg(SysctrlXtalDriver1);
Sysctrl_SetXTHStableTime(SysctrlXthStableCycle16384);
Sysctrl_ClkSourceEnable(SysctrlClkXTH, TRUE);
delay1ms(10);
stcPLLCfg.enInFreq = SysctrlPllInFreq6_12MHz; //XTH 8MHz
stcPLLCfg.enOutFreq = SysctrlPllOutFreq24_36MHz;//PLL 输出
stcPLLCfg.enPllClkSrc = SysctrlPllXthXtal; //输入时钟源选择XTH
stcPLLCfg.enPllMul = SysctrlPllMul4; //8MHz x 4 = 32MHz
Sysctrl_SetPLLFreq(&stcPLLCfg);
///< 当使用的时钟源HCLK大于24M:设置FLASH 读等待周期为1 cycle(默认值也为1 cycle)
Flash_WaitCycle(FlashWaitCycle1);
///< 使能PLL
Sysctrl_ClkSourceEnable(SysctrlClkPLL, TRUE);
///< 时钟切换到PLL
Sysctrl_SysClkSwitch(SysctrlClkPLL);
} 那就是IO只支持24M的频率了呗 大概是硬件本身的事儿吧 你的示波器抓包没弄好吧 不应该的啊,咋能看不到波形呢? 倍频24M也不是很高啊,咋还波形都没了 请问楼主你用的是那款芯片啊? 可能是支持频率问题,也可能溢出,再检查一下 你这个芯片一般主频是多少?可以设置为多少? 是不是电路或者你测量的方式不对啊? 输出24M的波形?是这个意思么 那你就用24M的呗,一个IO要这么快干啥
页:
[1]