我想问下单片机峰鸣器不够响c 语言程序怎么改频率?

2019-07-15 10:01发布

void T0_time() interrupt 1         //¶¨Ê±Æ÷ÖжÏ
{
         
         TH0=(65535-50000)/256;          //ÖØ×°³õÖµ
         TL0=(65535-50000)%256;
         flag++;
         if(flag == 20)
         {
                 if(reduce_flag == FALSE)
                 {
       num ++;
                         if(num == 9)
                                  reduce_flag = TRUE;
     }
                 else
                 {
       num --;
                         if(num == 0)
          reduce_flag = FALSE;
     }

                 flag = 0;        
         }
}
void FM()        
{
  if(num==9)
          {
           spea=0;
           delayms(1);
           spea=1;
           delayms(1);
                }
}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
修罗君
1楼-- · 2019-07-15 14:23
谢了。大神   看到你回复了很多帖。。。。活雷锋
修罗君
2楼-- · 2019-07-15 16:26
小S咯 发表于 2017-8-2 17:28
你中断后面的语句是干嘛的呢?感觉你写复杂了。
void T0_time() interrupt 1         //¶¨Ê±Æ÷ÖжÏ
{

谢了。大神   看到你回复了很多帖。。。。活雷锋
小S咯
3楼-- · 2019-07-15 20:12
 精彩回答 2  元偷偷看……
wulinwl
4楼-- · 2019-07-16 01:40
本帖最后由 wulinwl 于 2017-8-3 09:50 编辑
修罗君 发表于 2017-8-3 09:24
谢了。大神   看到你回复了很多帖。。。。活雷锋

中断里就是频率2.5KHz无源蜂鸣器的驱动程序,只要有一个使能信号蜂鸣器就响一声“滴”。而且每次只占用几微秒,不影响主程序运行。有源蜂鸣器的频率是生产厂家固定的频率,不好改的。
修罗君
5楼-- · 2019-07-16 06:14
wulinwl 发表于 2017-8-3 09:45
中断里就是频率2.5KHz无源蜂鸣器的驱动程序,只要有一个使能信号蜂鸣器就响一声“滴”。而且每次只占用几微秒,不影响主程序运行。有源蜂鸣器的频率是生产厂家固定的频率,不好改的。

受教了,我是刚开始学习单片机的菜鸟。以后希望多多帮助

一周热门 更多>