2019-07-21 06:15发布
wxjhby 发表于 2018-12-26 08:54 你的意思是用72MHz 没问题?
wxjhby 发表于 2018-12-26 13:31 肯定是有干扰,首先要找到干扰信号在哪里干扰的,用示波器看复位信号和晶振的波形,看PCB布局。 可以先试 ...
最多设置5个标签!
是的 9倍频至72M是没有问题的 关闭倍频后空载情况下正常 一接负载就死机
可以先试试用内部8M RC振荡器是否有问题
或者外部高速晶振先两分频再两倍频,还是8MHz,不知道是不是因为锁相环的抗干扰能力比较强
[mw_shl_code=c,true]/*RCC config*/
void RCC_Configuration(void)
{
RCC_DeInit();
RCC_HSEConfig(RCC_HSE_ON);
while(SUCCESS != RCC_WaitForHSEStartUp()){}
/*设置FLASH存储器延时时钟周期数*/
FLASH_SetLatency(FLASH_Latency_2); //FLASH_Latency_2 2延时周期
/*选择FLASH预取指缓存的模式*/
FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); // 预取指缓存使能
/*设置PLL时钟源及倍频系数*/
/* Fcpu = (PLL_src * PLL_MUL) = (8 Mhz / 2) * (2) = 8Mhz */
RCC_PLLConfig(RCC_PLLSource_HSE_Div2, RCC_PLLMul_2);
/* Enable PLL */
RCC_PLLCmd(ENABLE);
/*检查指定的RCC标志位(PLL准备好标志)设置与否*/
while (RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) {}
/* Set system clock dividers */
RCC_HCLKConfig(RCC_SYSCLK_Div1);
RCC_PCLK2Config(RCC_HCLK_Div1);
RCC_PCLK1Config(RCC_HCLK_Div2);
RCC_ADCCLKConfig(RCC_PCLK2_Div6);
/* Embedded Flash Configuration */
FLASH_SetLatency(FLASH_Latency_2);
FLASH_HalfCycleAccessCmd(FLASH_HalfCycleAccess_Disable);
FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);
/*SYSCLK configuration*/
RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
}[/mw_shl_code]
肯定是干扰引起的 用示波器可以明显看到开关瞬间IO口有杂波 我用3倍频 24M晶振试过也是有这个问题 根据您的提示我用一下内部的8M晶振 然后在强电部分再加上安规电容和压敏电阻
一周热门 更多>