为中断编程timer0

7个帖子/ 0个新
最后发表
罗尼
离线
最后看到:5年2天前
主
加入:2014-05-15 15:02
为中断编程timer0

很抱歉问了这个愚蠢的问题,但是在调用timer0_set(on, high, low)时应该使用哪些参数
每0.5ms (2khz)得到一个中断?
同样的问题适用于0.1ms (10khz)。
谢谢

JE_Dialog
离线
最后看到:6天12小时前
工作人员
加入:2013-12-05 14:02
你好,罗尼,

你好,罗尼,

我将给你发一个例子来帮助你。它是基于一个用户定时器0设置PWM频率的声音。

在这个例子中,Timer0_set(on, high, low)执行如下操作:

  • 高低是用来决定发声频率的。当高/低相等时,50% d/c。
  • ON值决定了在中断产生之前声音将产生多长时间。

BR JE_Dialog

罗尼
离线
最后看到:5年2天前
主
加入:2014-05-15 15:02
谢谢

谢谢

yassin.bennaceur
离线
最后看到:5年10个月前
加入:2015-04-10十五32
你能同样寄给我吗

你能给我同样的例子吗?我正在寻找同样的事情与10Khz以及。

前腿帕特尔
离线
最后看到:2年7个月前
加入:2017-03-29专机
你能寄给我吗

你能给我同样的例子吗??..我也在寻找10Khz同样的东西。

MT_dialog
离线
最后看到:3个月1周前
工作人员
加入:2015-06-08 34
嗨,前腿帕特尔

嗨,前腿帕特尔

你可以看一看周边的例子\ timer0 \ timer0_general和改变价值timer0_set_pwm_on()从20000年即RELOAD_100MS 20,这将设置一个重载值在你的定时器和配置应T = 1/200kHz * 20 = 10 khz中断。您还可以使用不同的选项来配置您想要的中断频率,例如,使用不同的时钟分频器CLK_PER_REG_TMR_DIV_8到一个较小的分频,以提供给计时器,不要使用TIM0_CLK_DIV_BY_10,而使用更大的重新加载值。

由于MT_dialog

前腿帕特尔
离线
最后看到:2年7个月前
加入:2017-03-29专机
嘿,MT_Dialog,

嘿,MT_Dialog,

谢谢你的回复。我已经做了改变,正如你在评论中提到的,它工作得很好。但是我必须使用TIM0_CLK_DIV_BY_10来制作10KHz频率。非常感谢。

问候,
前腿