刚学STM8S,用风驰的板子。我采用例程里的捕捉例子,当用外部晶振24MHz时,打印出来的是130kHz,我试着屏蔽SystemClock_Init(HSE_Clock);,加上一句:CLK->CKDIVR=0X00;,采用HSI 16MHz,计算时改为printf("\r\npresent Get The Frequency is:%ld Hz\r\n",16000000*8/AverageFrequency);,打印出来的也是130KHz。但是,我再屏蔽CLK->CKDIVR=0X00;,采用默认的时钟源,应该是16MHz的8分频,即2MHz的时钟源,计算改为printf("\r\npresent Get The Frequency is:%ld Hz\r\n",2000000*8/AverageFrequency);,这时打印出来的不是130KHz了,变成了43KHz,请问这是为什么,是我理解错了?好像差了3倍,错在哪? |