找回密码
 立即注册

QQ登录

只需一步,快速开始

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

51单片机蜂鸣器模拟救护车消防车等各种报警喇叭声音的学习源代码

  [复制链接]
跳转到指定楼层
楼主
51单片机各种蜂鸣器源代码

包含喇叭发声原理,喇叭滴答声,救护车声音,报警发声,消防车警报,喇叭音量调节
单片机源程序如下:
  1. /*-----------------------------------------------
  2.   名称:喇叭
  3.   修改:无
  4.   内容:模救护车发声
  5. ------------------------------------------------*/
  6. #include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义

  7. sbit SPK=P1^2;    //定义喇叭端口
  8. unsigned char frq;

  9. void DelayUs2x(unsigned char t);//函数声明
  10. void DelayMs(unsigned char t);
  11. /*------------------------------------------------
  12.                     定时器初始化子程序
  13. ------------------------------------------------*/
  14. void Init_Timer0(void)
  15. {
  16. TMOD |= 0x01;          //使用模式1,16位定时器,使用"|"符号可以在使用多个定时器时不受影响                     
  17. //TH0=0x00;              //给定初值
  18. //TL0=0x00;
  19. EA=1;            //总中断打开
  20. ET0=1;           //定时器中断打开
  21. TR0=1;           //定时器开关打开
  22. }
  23. /*------------------------------------------------
  24.                     主函数
  25. ------------------------------------------------*/
  26. main()
  27. {
  28. unsigned char i;
  29. Init_Timer0(); //初始化定时器
  30. while(1)
  31.       {
  32.    frq=0;
  33.    for(i=0;i<60;i++)//播放1s左右一种频率
  34.       {
  35.       DelayMs(10);
  36.           }
  37.    frq=100;
  38.    for(i=0;i<60;i++)//播放1s左右另外一种频率
  39.       {  
  40.       DelayMs(10);
  41.           }
  42.          
  43.          }
  44. }
  45. /*------------------------------------------------
  46. uS延时函数,含有输入参数 unsigned char t,无返回值
  47. unsigned char 是定义无符号字符变量,其值的范围是
  48. 0~255 这里使用晶振12M,精确延时请使用汇编,大致延时
  49. 长度如下 T=tx2+5 uS
  50. ------------------------------------------------*/
  51. void DelayUs2x(unsigned char t)
  52. {   
  53. while(--t);
  54. }
  55. /*------------------------------------------------
  56. mS延时函数,含有输入参数 unsigned char t,无返回值
  57. unsigned char 是定义无符号字符变量,其值的范围是
  58. 0~255 这里使用晶振12M,精确延时请使用汇编
  59. ------------------------------------------------*/
  60. void DelayMs(unsigned char t)
  61. {
  62.      
  63. while(t--)
  64. {
  65.      //大致延时1mS
  66.      DelayUs2x(245);
  67.          DelayUs2x(245);
  68. }
  69. }
  70. /*------------------------------------------------
  71.                  定时器中断子程序
  72. ------------------------------------------------*/
  73. void Timer0_isr(void) interrupt 1
  74. {
  75. TH0=0xfe;                  //重新赋值
  76. TL0=frq;         //低8位值在主程序中不断累加

  77. SPK=!SPK;        //端口电平取反

  78. }
复制代码

所有资料51hei提供下载:
8-蜂鸣器与喇叭.zip (82.26 KB, 下载次数: 569)


评分

参与人数 1黑币 +1 收起 理由
ygloo + 1 很给力!

查看全部评分

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

使用道具 举报

沙发
ID:89286 发表于 2018-7-10 18:57 | 只看该作者
thanks for sharing
回复

使用道具 举报

板凳
ID:202754 发表于 2018-9-29 16:24 | 只看该作者
thanks for sharing
回复

使用道具 举报

地板
ID:393796 发表于 2018-10-8 23:35 | 只看该作者
厉害了楼主!!
回复

使用道具 举报

5#
ID:418802 发表于 2018-10-31 21:55 | 只看该作者
学习中,多谢分享
回复

使用道具 举报

6#
ID:449226 发表于 2018-12-18 19:47 | 只看该作者
谢谢,拿走啦
回复

使用道具 举报

7#
ID:184707 发表于 2018-12-29 09:58 | 只看该作者
谢谢下载了
回复

使用道具 举报

8#
ID:41347 发表于 2019-1-8 13:20 | 只看该作者
正需要这个但积分没有,
回复

使用道具 举报

9#
ID:469656 发表于 2019-3-6 18:46 | 只看该作者
下载来看看
回复

使用道具 举报

10#
ID:452817 发表于 2019-3-7 21:51 来自手机 | 只看该作者
下载来看看
回复

使用道具 举报

11#
ID:304428 发表于 2019-3-8 11:24 | 只看该作者
学习了  谢谢      楼主
回复

使用道具 举报

12#
ID:505634 发表于 2019-4-6 10:49 | 只看该作者
感谢感谢
回复

使用道具 举报

13#
ID:332082 发表于 2019-4-23 07:46 | 只看该作者

感谢感谢
回复

使用道具 举报

14#
ID:524220 发表于 2019-4-29 10:35 | 只看该作者
下载来看看
回复

使用道具 举报

15#
ID:250209 发表于 2019-4-30 17:05 | 只看该作者
谢谢分享,好好学习学习。
回复

使用道具 举报

16#
ID:526259 发表于 2019-5-3 08:02 | 只看该作者
很不错
回复

使用道具 举报

17#
ID:527468 发表于 2019-5-5 10:59 | 只看该作者
不知道是哪种滴答声音
回复

使用道具 举报

18#
ID:552758 发表于 2019-6-1 23:10 | 只看该作者
下载学习一下
回复

使用道具 举报

19#
ID:498378 发表于 2019-6-8 20:30 | 只看该作者
学习了
回复

使用道具 举报

20#
ID:498378 发表于 2019-6-8 20:32 | 只看该作者
好资源,谢谢分享
回复

使用道具 举报

21#
ID:293106 发表于 2019-7-25 15:22 | 只看该作者
太感谢了 正好用得上
回复

使用道具 举报

22#
ID:245053 发表于 2019-9-30 13:00 | 只看该作者
前段时间自己写代码测试一些,效果不是很理想,下载来参考一下
回复

使用道具 举报

23#
ID:616809 发表于 2019-9-30 15:26 | 只看该作者
学习中,多谢分享
回复

使用道具 举报

24#
ID:88256 发表于 2019-9-30 16:56 | 只看该作者
有没采用电阻分压的DAC电路?
回复

使用道具 举报

25#
ID:635787 发表于 2019-11-5 10:28 | 只看该作者
感谢楼主的分享,刚好学习要用到!!!
回复

使用道具 举报

26#
ID:653313 发表于 2019-11-30 23:54 | 只看该作者
well well well
回复

使用道具 举报

27#
ID:653323 发表于 2019-12-1 00:40 来自手机 | 只看该作者
小学生来学习
回复

使用道具 举报

28#
ID:157155 发表于 2019-12-4 10:50 | 只看该作者
学习一下
回复

使用道具 举报

29#
ID:157155 发表于 2019-12-4 10:51 | 只看该作者
学习学习,下载看看
回复

使用道具 举报

30#
ID:69408 发表于 2019-12-4 11:36 | 只看该作者
下载看看,谢谢分享!
回复

使用道具 举报

31#
ID:399919 发表于 2020-6-14 11:09 | 只看该作者
感谢楼主无私分享。
回复

使用道具 举报

32#
ID:841105 发表于 2020-11-9 17:27 | 只看该作者
好东西,简单易懂
回复

使用道具 举报

33#
ID:926139 发表于 2021-5-23 23:11 | 只看该作者
谢谢dalao分享的代码
回复

使用道具 举报

34#
ID:1103638 发表于 2023-12-11 10:32 | 只看该作者
很好,我可以加上矩阵键盘以及lcd开发一手小游戏,然后就完全符合目标了,谢谢你我的哥
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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