在前面章节中我们已经介绍了如何控制 STM32 的 IO 口输出高低电平,本章我们通过另外一个实验来讲述 STM32 IO 口的输出。通过 STM32F1 芯片的一个 IO口控制板载有源/无源蜂鸣器,实现蜂鸣器控制。

蜂鸣器介绍

蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。

压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。多谐振荡器由晶体管或集成电路构成,当接通电源后(1.5~15V 直流工作电压),多谐振荡器起振,输出 1.5~5kHZ 的音频信号,阻抗匹配器推动压电蜂鸣片发声。

电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。

其实一句话就可概括它们之间的区别,想要压电式蜂鸣器发声,需提供一定频率的脉冲信号;想要电磁式蜂鸣器发声,只需提供电源即可。无源蜂鸣器,属于压电式蜂鸣器类型;有源蜂鸣器,属于电磁式蜂鸣器类型。这里说的有源,并不是指电源的意思,而是指蜂鸣器内部是否含有振荡电路,有源蜂鸣器内部自带振荡电路,只需提供电源即可发声,而无源蜂鸣器则需提供一定频率的脉冲信号才能发声,频率大小通常在 1.5-5KHz 之间。有源蜂鸣器实物如下图。

野火stm32开发板给定一个脉冲程序_STM32学习之旅~~~~~~~~~蜂鸣器实例相关推荐

  1. 野火stm32开发板给定一个脉冲程序_STM32开发板哪个好,推荐一款高性价比stm32MP157开发板...

    一款能跑Linux的STM32开发板: 一款既可以玩Linux又可以玩单片机的开发板: 一款可同时学习A7和M4的双核异构开发板: 一款支持最新的Linux 5.4.31系统和u-boot 20200 ...

  2. 自动感应垃圾桶c语言,如何使用STM32开发板作一个自动感应垃圾桶

    1.所用到的软件和硬件 软件: 使用的KEIL 和STM32CUBE MX STM32CUBE MX简直小白福音,若是对于STM32配置不是很清楚的话,又想尝试STM32芯片的开发的话,能够尝试使用这 ...

  3. 如何使用STM32开发板做一个自动感应垃圾桶

    目录 一.所用到的软件和硬件 二.硬件的用途 三.代码的编写和整理 主函数程序 中断处理程序函数 红外线感应到的处理函数 关门断电函数 四.后面的优化思路 一.所用到的软件和硬件 软件: 使用的KEI ...

  4. 野火F1开发板STM32案例-MultiButton移植

    野火F1开发板STM32案例-MultiButton移植 硬件平台 野火STM32F103ZET6 霸道V2开发板 正点原子F1系列开发板 软件平台 Keil MDK 5.31 串口调试助手 Mult ...

  5. STM32开发板串口 ISP 方式下载程序

    STM32开发板无下载电路也可以下载程序方法 自己设计的stm32开发板,手上无下载器,也没有板载的一键下载电路的情况下解决下载程序方法? 必须具备的条件:USB-TTL模块一个,板上预留有boot0 ...

  6. 野火F1开发板STM32案例-USART使用

    野火F1开发板STM32-USART使用 硬件平台 野火STM32F103ZET6 霸道V2开发板 正点原子F1开发板 STM32蓝色板 软件平台 Keil MDK 5.31 串口调试助手 串口配置步 ...

  7. 嵌入式系统开发笔记105:下载程序到STM32开发板

    文章目录 前言 1.启动FlyMcu 2.倒入映像文件 3.设置选项 4.连接开发板 5.下载程序 6.复位后运行 前言   本文介绍如何将编译好的映像文件下载到STM32开发板. 1.启动FlyMc ...

  8. [长文干货]MicroPython移植到野火STM32F429开发板

    最近通过参考网上的文章,成功将MicroPython移植到野火STM32F429开发板上,给大家分享一下自己的移植过程,可以作为STM32系列移植MicroPY的参考. 1.移植前准备工作 实验环境: ...

  9. NBIOT 移远BC28模块+stm32开发板例程、教程(打通TCP、COAP协议)

    为了开发者能够快速入门BC28的开发,加快开发者的项目进度,开发出此款针对BC28的stm32开发板和完善的发送网络数据的示例程序(TCP协议.COAP协议),程序流程逻辑清楚,注释完善,上手就可以玩 ...

最新文章

  1. 网易智慧企业2020年度见面会4大亮点抢先看!
  2. C++学习之路 | PTA乙级—— 1017 A除以B (20分)(精简)
  3. Linux的gcc编译器下载,gcc编译器下载
  4. php双引号表示什么,PHP中的单引号和双引号字符串有什么区别?
  5. 寻虫记:BOM头制造的冤案,无故多出空白行
  6. Matlab中的逻辑运算与,||与|的区别
  7. .Net 面试题 汇总(二)
  8. vue中Component错误
  9. Nikto漏洞扫描工具简介
  10. sklearn 5.18.3 SGD - Maximum margin separating hyperplane
  11. codeforces 831A Unimodal Array
  12. 解决markdown插入图片的痛楚!!!!
  13. 西伯利亚入夏火灾频发 中俄白桦茸企业启动原料保障计划
  14. 数学分析 函数极限的四则运算与复合函数的性质
  15. 微信小程序小技巧系列《一》幻灯片,tab导航切换
  16. 基于梯度下降算法自建一种短期有效的自回归模型
  17. 蓝牙电话协议HFP(Hands-Free Profile) 接听来电/挂断来电(HFP Accept/Reject incoming call)
  18. R语言之Rstudio 导入包
  19. Spring Cloud Gateway 监控器API
  20. GBase产品学习-8a支持隐式转换

热门文章

  1. [实战]C++加Lua加SDL来重写龙神录弹幕游戏(4):完善Game类
  2. 无法定位程序输入点__gxx_personality_v0的一个解决方法
  3. OpenGL绘制运动的自行车
  4. android 7.0开机脚本,Android 7.0系统的手机无法执行appium脚本的问题:PS 'uiautomator'...
  5. 计算机主板 方便用户自己安装的是,最新最全电脑组装教程(非常好和大家分享).ppt...
  6. Python中数字按位取反的方法
  7. 如何修复计算机策略组,打开策略组提示inetres.admx错误怎么办 轻松几个步骤修复策略组错误...
  8. 杰理之多次来电报号死机【篇】
  9. java cms视频_【视频+源码】JAVA CMS系统项目实战
  10. Excel求和斜杠/之后的数字