找回密码
 立即注册

QQ登录

只需一步,快速开始

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

做了个单片机随机超声波信号发生器,准备用作驱鸟

[复制链接]
跳转到指定楼层
楼主
风158 发表于 2018-9-19 00:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
频率范围21-25khz,鸟能听到,人听不到。音长和音频都是随机数,防止鸟适应。这个用555是很难做到的。程序调试通过,见附件。

单片机源程序如下:
  1. #define MAIN_Fosc                11059200L        //定义主时钟
  2. #include        "STC15Fxxxx.H"
  3. #include  <stdlib.h>  //Keil library
  4. #define uchar unsigned char
  5. #define uint unsigned int

  6. sbit beep=P3^3;

  7. void main()
  8. {
  9.   unsigned int i,j,k,t;
  10.   while(1)
  11.   {
  12.    i=10*rand();                     //产生音长随机数
  13.    j=rand();                        //产生音频随机数
  14.    for(k=0;k<=i;k++)               
  15.    {
  16.         beep=0;
  17.         t = MAIN_Fosc / (546000+j*3); //通电时长,自动适应时钟,确保音频在21-24.78khz
  18.         while(--t)        ;  
  19.         beep=1;
  20.         t = MAIN_Fosc / (546000+j*3); //断电时长
  21.         while(--t)        ;  
  22.    }
  23.   }
  24. }
复制代码

所有资料51hei提供下载:
15F104W 21-25khz beep.rar (22.98 KB, 下载次数: 37)




评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

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

使用道具 举报

沙发
admin 发表于 2018-9-19 01:10 | 只看该作者
好东东 用什么做发射器呢?HC-SR04这种肯定功率不够吧
回复

使用道具 举报

板凳
 楼主| 风158 发表于 2018-9-19 19:31 | 只看该作者
admin 发表于 2018-9-19 01:10
好东东 用什么做发射器呢?HC-SR04这种肯定功率不够吧

这个只有5V,如果需要大范围驱鸟,可增加放大电路来推动大功率发射器
回复

使用道具 举报

地板
tolang 发表于 2018-9-19 20:09 | 只看该作者
用普通的auio放大器来放大就可以吗, 用家用的音响能不能放大。。
回复

使用道具 举报

5#
 楼主| 风158 发表于 2018-9-20 08:25 | 只看该作者
tolang 发表于 2018-9-19 20:09
用普通的auio放大器来放大就可以吗, 用家用的音响能不能放大。。

专业的音响都有高频降噪,超过20khz的信号都被衰减了。可以自制一个音频功放
回复

使用道具 举报

6#
快乐眼泪 发表于 2018-11-18 11:00 来自手机 | 只看该作者
正在找这个,谢谢分享!
回复

使用道具 举报

7#
雨过路犹在 发表于 2019-3-17 11:18 | 只看该作者
楼主,请问有没有Proteus仿真图或者其他别的资料,我用Keil打开显示有文件未添加。谢谢
回复

使用道具 举报

8#
18293079770 发表于 2019-5-14 14:34 | 只看该作者
请问大哥有没有原理图
回复

使用道具 举报

9#
快乐眼泪 发表于 2019-5-14 20:28 来自手机 | 只看该作者
怎么增加功率以及用什么器件发声?
回复

使用道具 举报