东风 发表于 2024-2-7 14:18:24

PWM时钟频率

使用8m外部晶振,代码中如下配置


XOSCCR=0XC0;
              while(!(XOSCCR & 1));             
         CLKSEL &=~0X80;                               
         USBCLK &=~0X60;                               
          USBCLK|=0X80;

             HSCLKDIV=0X00;
       
             CLKSEL|=0X05;
             CLKSEL|=0X40;          
       
         CLKDIV=0X02;

         MCLKOCR=10;   


为什么输出是32k,不是64k



王昱顺 发表于 2024-2-7 14:58:57

CLKDIV=0X02时是3分频,因为默认为0x00的时候为1分频,所以设定的分频值还要加1。
改成CLKDIV=0X01就可以了

东风 发表于 2024-2-7 15:22:27

手册上0x02是二分频,而且我不是使用的主时钟,用不到CLKDIV,我用的是pllclk,就是输出是64mhz

王昱顺 发表于 2024-2-7 22:16:23

东风 发表于 2024-2-7 15:22
手册上0x02是二分频,而且我不是使用的主时钟,用不到CLKDIV,我用的是pllclk,就是输出是64mhz ...

抱歉,那确实是我错了。之前看到pwm的分频寄存器都是0值作为1分频。想当然的以为都是这个样子的。以后我应该仔细看过手册后再回答了
页: [1]
查看完整版本: PWM时钟频率