神农鼎 发表于 2024-1-20 20:50:07

只是用 T0/T1/T2/T3/T4 对系统时钟分频对外输出,不要开中断

_奶咖君_ 发表于 2024-1-22 00:16:16

daw85 发表于 2024-1-20 20:33
按照您提供的方法,在T0CLKO可以得到250K(TH0:0xff,TL0: 0xd0,1T模式,24M时针)的频率,说明了系统时针频 ...

有个疑问,,你上面说的   同一个板子用基本上相同的代码可以产生2KHz信号的
是因为以前用的系统时钟快,,现在选的系统时钟慢了?

daw85 发表于 2024-1-22 08:06:10

_奶咖君_ 发表于 2024-1-22 00:16
有个疑问,,你上面说的   同一个板子用基本上相同的代码可以产生2KHz信号的
是因为以前用的系统时钟快,, ...

我都是选的24M. 不是因为我选的时针慢的原因,是因为T0中断处理时调用了一个函数(之前的代码未调用),若不调用就不会有此问题,可以产生2KHz信号。

_奶咖君_ 发表于 2024-1-22 08:45:03

daw85 发表于 2024-1-22 08:06
我都是选的24M. 不是因为我选的时针慢的原因,是因为T0中断处理时调用了一个函数(之前的代码未调用), ...

哦哦 那就明白了,,那就是中断里面干的活多了呗

jwg 发表于 2024-1-22 09:44:02

中断里面干的活多了,或者中断级别低了

daw85 发表于 2024-1-22 13:43:43

jwg 发表于 2024-1-22 09:44
中断里面干的活多了,或者中断级别低了

只开了T0中断,其他中断未开。可能是中断干的活多了,或者我的用法不对(我函数中用的是更改端口工作模式的方法产生脉冲)。具体是什么还是未弄懂,不过确定了本身振荡频率无问题。

wangxiangtan 发表于 2024-1-22 14:13:53

看来中断处理方法里面的东西越精简越好,只置个标志位、变量加1最好,拖泥带水处理一大堆很容易影响下次中断{:4_167:}

21cnsound 发表于 2024-1-31 11:04:31

daw85 发表于 2024-1-20 20:33
按照您提供的方法,在T0CLKO可以得到250K(TH0:0xff,TL0: 0xd0,1T模式,24M时针)的频率,说明了系统时针频 ...

24MHz 1T的单片机,2us就是48个周期,这样的定时确实时间太短。
从进入中断到出中断可以用keil的软件debug算出用了多少个周期。

21cnsound 发表于 2024-1-31 11:06:33

神农鼎 发表于 2024-1-20 20:50
只是用 T0/T1/T2/T3/T4 对系统时钟分频对外输出,不要开中断

看楼主代码,是想实现占空比可调的软PWM,你说的时钟分频输出还不是一回事

daw85 发表于 2024-2-1 08:14:15

21cnsound 发表于 2024-1-31 11:06
看楼主代码,是想实现占空比可调的软PWM,你说的时钟分频输出还不是一回事 ...

是的,不是一回事。时钟分频输出只是确认时钟频率是否正常。
页: 1 [2]
查看完整版本: STC8H8K64U內部晶振精度 | 已解决