神农鼎 发表于 2023-10-2 16:33:34

你主时钟输出看看,内部 CPU 跑的时钟是多少


6.7.2         主时钟分频输出 C语言代码
//测试工作频率为11.0592MHz #include "stc8h.h"#include "intrins.h" void main(){         P_SW2 |= 0x80;                                                                            //使能访问XFR          P0M0 = 0x00;         P0M1 = 0x00;         P1M0 = 0x00;         P1M1 = 0x00;         P2M0 = 0x00;         P2M1 = 0x00;         P3M0 = 0x00;         P3M1 = 0x00;         P4M0 = 0x00;         P4M1 = 0x00;         P5M0 = 0x00;         P5M1 = 0x00; //       MCLKOCR = 0x01;                                                                     //主时钟输出到P5.4口//       MCLKOCR = 0x02;                                                                     //主时钟2分频输出到P5.4口         MCLKOCR = 0x04;                                                                     //主时钟4分频输出到P5.4口//       MCLKOCR = 0x84;                                                                     //主时钟4分频输出到P1.6口          while (1);}


firefly2k 发表于 2023-10-2 19:55:20

本帖最后由 firefly2k 于 2023-10-2 20:16 编辑

神农鼎 发表于 2023-10-2 16:33
你主时钟输出看看,内部 CPU 跑的时钟是多少



主频的事情搞定了。我自身的配置没有问题,只要将下面两条顺序交换一下就好了,费了老大的劲,做了各种排列组合,才搞好。这个你们好像没有任何地方提示有顺序的问题,很容易让新手走弯路
原先的配置:
       CLKSEL = 0xC5;
       PLLCR= 0x80;
修改为:
       PLLCR= 0x80;
       CLKSEL = 0xC5;

后面的144M PWM也可以了,直接把例程复制进去就能直接输出了

神农鼎 发表于 2023-10-2 20:16:27

不知你错在哪,但探索之道:
肯定是先临摹,再超越;
改正常演示程序的硬件配置顺序,遇到问题那也正常 !


可能我们技术人员也没想到会出现那样的硬件配置顺序,
他们也是看这张图来写程序



页: 1 [2]
查看完整版本: STC8H1K08T外部晶振和PLL144M问题