求一个程序思路,关于蜂鸣器。

2019-07-15 09:56发布

当按键按下时 蜂鸣器频率加1  让数码管显示频率 出来。只求思路  不求帮我写程序
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
wulinwl
1楼-- · 2019-07-17 12:31
修罗君 发表于 2017-8-9 17:30
虽然还不是很懂,但你已经帮我解释很多了。最后还想问你最后 一个问题,        
TL0 = 0x9C;  
TH0 = 0x9C;

51单片机的定时器0模式2是8位自动重装模式,在12M晶振时,最大定时256us,如果设定100us就用256-100=156=0x9c。当计数100个脉冲TL0溢出不仅置位TF0,而且会自动动将TH0的内容重新装入TL0。知道这个道理就行,实际使用中可以借助定时器计算器。
wulinwl
2楼-- · 2019-07-17 14:35
 精彩回答 2  元偷偷看……
idianze
3楼-- · 2019-07-17 15:03
强烈支持楼主ing……
修罗君
4楼-- · 2019-07-17 16:47
wulinwl 发表于 2017-8-10 06:37
51单片机的定时器0模式2是8位自动重装模式,在12M晶振时,最大定时256us,如果设定100us就用256-100=156=0x9c。当计数100个脉冲TL0溢出不仅置位TF0,而且会自动动将TH0的内容重新装入TL0。知道这个道理就行,实际使用中可以借助定时器计算器。
...

说的很详细。谢了   那我要改变它的频率值不是可以直接改变这个0x9c就行了?我试了下把这个0x9c改成一个变量  然后按键按下后定义这个变量++  蜂鸣器的声音会变大呢、。。
wulinwl
5楼-- · 2019-07-17 20:14
修罗君 发表于 2017-8-10 09:14
说的很详细。谢了   那我要改变它的频率值不是可以直接改变这个0x9c就行了?我试了下把这个0x9c改成一个变量  然后按键按下后定义这个变量++  蜂鸣器的声音会变大呢、。。

可以这么做,只要搞懂定时器的工作原理,代码随意写。

一周热门 更多>