标题: 单片机驱动无源蜂鸣器程序源码 [打印本页]

作者: 55680    时间: 2018-12-3 23:56
标题: 单片机驱动无源蜂鸣器程序源码
有源跟无源,其实就是蜂鸣器的内部是否带有一个振动源,不过就因为硬件的一点点差异,导致编写代码会出现很大的区别。

单片机程序如下:
  1. #include <reg52.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int  

  4. sbit beep = P0^7;

  5. void Delay(uint time)//延时函数,有参函数
  6. {  
  7.     uint i,j;   
  8.     for(i=time; i>0; i--)   
  9.                 for(j=110; j>0; j--);  
  10. }

  11. void Buzzer(uint Number,uint Time)     //可以选择鸣响次数和音频
  12. {
  13.     uint i=0,j=0,k=0;
  14.     for(i = 0; i < Number; i ++)
  15.     {
  16.         for(j=0; j<Time; j++)
  17.         {
  18.             beep = !beep;              //beep取反
  19.             for (k=0; k<100; k++);     //需要产生方波,调节音频
  20.         }
  21.         Delay(100);                    //间隔时间
  22.     }
  23.     beep = 1;                          //注意PNP=0;NPN=1关闭蜂鸣器,否则三极管电流会很大。
  24. }

  25. void main()
  26. {
  27.     while(1)
  28.     {
  29.             Buzzer(50,1000);               //任意调节参数,选择自己喜欢的鸣叫次数和音频
  30.     }
  31. }
复制代码

所有资料51hei提供下载:
无源蜂鸣器驱动.zip (25.87 KB, 下载次数: 21)



作者: admin    时间: 2018-12-4 04:09
补全原理图或者详细说明一下电路连接即可获得100+黑币




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1