找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1951|回复: 1
打印 上一主题 下一主题
收起左侧

单片机驱动无源蜂鸣器程序源码

[复制链接]
跳转到指定楼层
楼主
ID:438770 发表于 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)


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏3 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:1 发表于 2018-12-4 04:09 | 只看该作者
补全原理图或者详细说明一下电路连接即可获得100+黑币
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表