设为首页 | 收藏本站
 
公司简介 联系方式 支付方式
 
  • 蓝月亮免费心水
  • 首页

    蓝月亮官网心水论坛
    蓝月亮心水论坛首页
    56568蓝月亮心水论坛
    蓝月亮高手心水主论坛

     

    当前位置: 主页 > 蓝月亮免费心水 >

    STM32单片机实现无源蜂鸣器产生音乐声的设计

    时间:2019-11-01 04:35来源:未知 作者:admin 点击:
    投入资金750万元br 据初步测算 。 香港最快开奖现场直播 ,,只能发出固定的滴滴声,当然不能满足于此呀。使用无源蜂鸣器,只要输出不同频率的PWM波,即可发出不同的音符。不同的音符组合起来就是一个曲子了。 音阶是音乐必不可少的要素,主要由声音的频率决

      投入资金750万元br 据初步测算香港最快开奖现场直播,,只能发出固定的”滴滴“声,当然不能满足于此呀。使用无源蜂鸣器,只要输出不同频率的PWM波,即可发出不同的音符。不同的音符组合起来就是一个曲子了。

      音阶是音乐必不可少的要素,主要由声音的频率决定。通过给蜂鸣器不同频率的音频脉冲,可以产生不同的音阶,而要产生某频率的音频脉冲,最简单的办法是算出该音频的周期,然后将此周期除以2即为半周期的时间。通过程序控制单片机某引脚半周期为“高”、半周期为“低”,不断交替变换,即可产生该频率的矩形波,接到蜂鸣器上就可发出该频率的声音。若想改变音阶,只需要改变半周期时间即可。下表为各音调音符频率对照表,据此可产生不同音阶的音符。“#”表示半音,用于上升或下降半个音,乘以2就提升该声音一个8度音阶,减半则降一个8度。

      若要构成音乐,光有音阶是不够的,还需要节拍,也就是音符持续时间的长短,一般用拍数表示。至于1拍是多少秒,没有严格的规定,只要节拍适宜,声音悦耳即可。假如某首歌曲的节奏是每分钟120拍,那么1拍为0.5 s,1/4拍为0.125 s,以此类推可得到其他节拍对应的时长。这样,利用不同的频率,加上与拍数对应的延时,就构成了乐曲。

      音阶的产生与声音频率有关,为了实现不同音阶,必须能为蜂鸣器提供不同频率的脉冲。为此,选择STM32芯片,利用其自带的定时器,通过PWM产生脉冲信号。STM32中一共有11个定时器,包含2个高级控制定时器、4个普通定时器、2个基本定时器,以及2个看门狗定时器和1个系统滴答定时器SysTiek。其中,TIM1和TIM8是高级定时器,时钟由APB2的输出产生。TIM2~TIM5是普通定时器,TIM6和TIM7是基本定时器,这6个定时器的时钟由APB1的输出产生。

      定时器的一个主要功能就是到指定时间就会产生一个溢出事件,这个时间的设置与定时器时钟有关,在定时器时钟基础上进行预分频,设置计数溢出大小即可。

      要保证定时的准确性,必须先确保系统时钟的设置是我们所预期的。定时器时钟分配可查看数据手册。通过编程使SYSCLK为72 MHz,APB1预分频后得到PCLK1为36 MHz,再经TIM2~TIM7倍频器得到TIM2~TIM7时钟72 MHz。时钟源多采用HSE(外部时钟源),对于STM32F103,其外部时钟为8 MHz,而STM32F107外部时钟为25 MHz,因此,在使用HSE做时钟源时,这两种器件产生SYSCLK的分频和倍频方式不同,需要使用者引起注意。

      定时器的参数由结构体TimeBaselnitTypeDef定义,主要包括预分频系数、时钟分割、计数器模式、计数溢出大小等。例如,要由TIM3(定时器3)产生一个时长为1 s的定时,首先,应进行系统时钟的设置,得到TIM3CLK=72MHz,然后进行定时器设置。其中,预分频系数为35 999,此时,TIM3时钟为72 MHz/36 000=2 kHz,无时钟分割。设置计数溢出大小为1 999,即每计2 000个数就产生一个更新事件,输出频率为2 kHz/2 000=1 Hz。

      脉冲宽度调制(Pulse Width Modulation,PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,简而言之,就是实现对输出信号脉冲宽度的控制,一般用来控制步进电机等。STM32的定时器除了TIM6和TIM7之外,其他的定时器都可以用来产生PWM输出,其中,高级定时器TIM1和TIM8能够产生3对PWM互补输出,而TIM2~TIM5也能同时产生4路的PWM输出。

      STM32给不同的定时器分配了不同的输出引脚,考虑到引脚复用功能,STM32还提出了一个“重映像”的概念,就是通过设置某一些相关的寄存器,使得在其他非原始指定的引脚上也能输出PWM波形,但是这种重映像不是随意的,使用方法可参照参考文献。例如,TIM3的通道2,在没有重映像的时候,指定的引脚是PA7。如果设置部分重映像之后,输出就被映像到PB5上了;如果设置完全重映像的线 占空比的计算

      占空比(Duty Ratio)有如下含义:在一串理想的脉冲周期序列(如方波)中,正脉冲的持续时间与脉冲总周期的比值。

      fa so la si do这样的7个音符,还可以输出不同音调的Do re mi fa so la si do。在实例程序里面,我定义了低中高三个音阶。音符的频率则是mbed提供的。已经宏定义好了。

      tch),虚基类。里面有一个perform函数,参数是音符和持续时间。例如要发出Do这个声音,持续0.5s,只要perform(1,0.5)就好。还有一个Stop函数,停止响声0.5s则stop(0.5),无参数则直接停止。后面的Low、Mid、High类则是派生类,实现了Pitch的虚函数。

      根据手册和开发板给的源码,直接实现停止模式,但是发现退出时就发生死机现象,并没有进入恢复正常,只执行....

      要注意的是,一般不使用内置SRAM启动(BOOT1=1 BOOT0=1),因为SRAM掉电后数据就丢....

      自动ISP,把BOOT0与地直接连接,那么每次上电就会运行程序,而且只要点击电脑上的“下载”按钮,就....

      DSP是为运算而生的芯片,他最强大的地方就在与它的数**算性能,那是由它的指令集支持的。那些拿DSP....

      将程序下载到开发板上后,LED灯会不断地亮灭,当按下KEY2键超过3s时,LED灯灭,标志着单片机进....

      GPIO的输出状态可以配置为推挽或开漏加上上拉或下拉。输出数据既可以来自输出数据寄存器,也可以由其他....

      在学习单片机的时候,我们经常遇到一组名词:上拉电阻和下拉电阻,通过学习我们知道上下拉电阻不仅能使当前....

      STM32单片机的每组IO口都有4个32位配置寄存器用于配置GPIOx_MODER, GPIOx_O....

      不管是什么单片机,在使用串口通信的时候,有一个非常重要的参数:波特率。什么是波特率:波特率就是每秒传....

      NEC码位的定义:一个脉冲对应560us的连续载波,一个逻辑1传输需要2.25ms(560us脉冲+....

      除新增的功能强化型外设接口外,STM32互连系列还提供与其它STM32微控制器相同的标准接口,这种外....

      一、定时器可以在任何时刻关闭,就算计数不满也要停 二、定时器在再次开启时可以从0计数 三....

      SPI_InitStructure.SPI_Direction = SPI_Direction_2L....

      GPIO设置如下 void GPIO_Configuration(void) { ....

      因为STM32 HAL库中仅有对HAl_Delay()毫秒级的延时,为实现精确的微秒级延时,就不得不....

      该系统采用STM32单片机,采集温湿度数据,并将温湿度数据通过GPRS模块上传到中国移动物联网云平台....

      小白一枚,目前有四个电机,车架,STM32F103VET6最小系统板一个,还有一个L293D驱动模块,循迹,避障模块都在...

      IDLE就是串口收到一帧数据后,发生的中断。什么是一帧数据呢?比如说给单片机一次发来1个字节,或者一....

      首先大家要了解有源和无源这里的“源”不是指电源,而是指震荡源。也就是说,有源蜂鸣器内部带震荡源,所以....

      无源蜂鸣器是蜂鸣器的一种,区别于有源蜂鸣器,无源蜂鸣器是内部不带振荡源的蜂鸣器,是一体化结构的电子讯....

      有源蜂鸣器,也称压电式压蜂鸣器,主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。其中最....

      在学习单片机的时候,我们经常遇到一组名词:上拉电阻和下拉电阻,通过学习我们知道上下拉电阻不仅能使当前....

      PWM实际上是在单片机的某个引脚输出一系列的矩形波,其周期一般是固定的;而其高电平、低电平所占用的时....

      STM32RTC使用步骤: 打开PWR时钟和Backup区数据访问 若使用外部低速时钟(....

      DS18B20 是由 DALLAS 半导体公司推出的一种的“一线总线”接口的温度传感器。与传统的热敏....

      通用定时器是一个通过可编程预分频器驱动的16位自动装载计数器构成。它适用于多种场合,包括测量输入信号....

      测试原理及现象:主机间隔500ms发送10个字符(0-9),从机开启SPI中断接收数据,接收满10字....

      VDDA为所有的模拟电路部分供电,包括:ADC模块,复位电路,PVD(可编程电压监测器),PLL,上....

      以前GPIO上接的电路都是低电平触发的那种,新画了个板子有一个按键设计的是高电平触发,结果IO口设置....

      1.与非总线位SRAM接口 FSMC配置 SRAM存储器和NOR闪存存储器共用....

      一些产品,当系统复位后(非上电复位),可能要求保持住复位前RAM中的数据,用来快速恢复现场,或者不至....

      此项功能是用来控制一个输出波形,或者指示一段给定的的时间已经到时。 当计数器与捕获/比较寄存器....

      电阻触摸屏的屏体部分是一块多层复合薄膜,由一层玻璃或有机玻璃作为基层,表面涂有一层透明的阻性材料组成....

      该函数位于在bsp.c文件下面; 使能RCC时钟:RCC_APB1Periph_DAC 这里DA....

      因为是共阳所以12,9,8,6为电源输入,其他引脚均为接地,所以对于芯片来说12,9,8,6高位输出....

      在硬件复位后,bxCAN工作在睡眠模式以节省电能,同时CANTX引脚的内部上拉电阻被激活。软件通过对....

      电流的测量用的是万用表,串联在电源的输入端,也就是说,实际测量的电流值为电路板消耗电流。电机、喇叭、....

      1、时钟配置,开启相应IO端口的时钟,以及串口模块的时钟。 串口1模块时钟寄存器:RCC_AP....

      ST提供的固件库当中,有提供一个stm32f10x_it.c文件,打开之后会发现里面放的都是些空函数....

      1.ADC_DeInit函数的功能是将外设ADCx的全部寄存器重设为默认值。 ADC_DeIn....

      首先在网上看到大部分移植FreeRTOS 都是选择修改他的启动文件,我个人感觉这样不是很好,毕竟是汇....

      在CMSIS中提供的函数是SysTick_Config(uint32_t ticks); 该函数设置....

      1 硬件电路配置 这里还是借用前面LED电路我就不贴图片。 2 时钟说明 SysT....

      理论上,需要数字电路,模拟电路,C语言编程基础,单片机会一点就更好了,这样的线的编....

      使用stm32f10x调试串口通讯时,发现一个出错的现象,硬件复位重启之后,发送测试数据0x01 0....

      STM32内部自带PVD功能,用于对MCU供电电压VDD进行监控。通过电源控制寄存器中的PLS[2:....

      你提到的时钟先分频再倍频,这个需要深入到STM32的内部去一探究竟了,在其技术参考手册的第7.2节C....

      主 PLL 时钟的时钟源要先经过一个分频系数为 M 的分频器,然后经过倍频系数为 N 的倍频器出来之....

      1什么是中断 暂停原先的程序或事情,执行另外一些程序或事情,执行完成后返回原来的程序。 ....

      在项目中单片机会与服务器进行网络通讯。需要对通讯加密,我选择了TEA加密算法。 *说明:TEA....

      首先,要包含头文件“stdio.h” 第二:printf()函数使用了int fputc(in....

      JTAG:JTAG(Joint Test Action Group;联合测试工作组)是一种国际标准测....

      分别实现普通收发,中断收发,DMA收发,问题是所有函数要求发送和接收的buf必须要事先知道长度,也没....

      STM32八种IO口模式区别 (1)GPIO_Mode_AIN模拟输入 (2)GPIO_....

      1、将正点原子的《触摸屏移植实验》中HARDWRAE/TOUCH目录复制到已经建立好的ucGUI工程....

      SPI是英语Serial Peripheralinterface的缩写,顾名思义就是串行外围设备接口....

      串口设置的一般步骤可以总结为如下几个步骤: 1)串口时钟使能,GPIO时钟使能 2)串口....

      1,新建项目,在新建工程的目录下新建几个文件夹: A,CORE (用来存放启动文件) B....

      STM32启动文件详细解析(V3.5.0) 以:startup_stm32f10x_hd.s为例 ....

      STM32的串口有监测总线是否处于空闲的功能,我们可以使用这个功能,当数据传输完总线变成空闲状态时产....

      先占优先级的概念等同于51单片机中的中断。假设有两中断先后触发,已经在执行的中断先占优先级如果没有后....

      请问快速入门教程的结果是什么呀?是一个PWM波么?为什么我把输出管脚接到LED灯上一点反应都没有呀?

      想请教一下大家,快速入门教程的结果是什么呀?是一个PWM波么?为什么我把输出管脚接到LED灯上一点反应都没有呀...

      PWM D类放大器 输出功率 和效率怎么计算,要测量什么参数,D类放大器还要做哪些分析。。...

      [table] [tr][td] 一、序言 在学习51单片机的时候,经常会使用keil+protues的方式来做一些实验,这样的模拟仿真为我...

      [table=98%,transparent] [tr=transparent][td] 实现STM32之间的串口通信,设置为主从机。 所...

      [table] [tr][td] 先配置GPIO: void GPIO_Configuration() { GPIO_...

      [table] [tr][td] #include MSP430F5529.h void Timer_A0_1_init() //TA0.1输出PWM&n...

      [table] [tr][td] MSP430的pwm波 单片机源程序如下: #include#include Config.hvoid setpw...

      [table] [tr][td] 一、序言 在学习51单片机的时候,经常会使用keil+protues的方式来做一些实验,这样的模拟仿真为我...

    (责任编辑:admin)
    相关内容:
    可燃气体监测器升级版加了蜂鸣 有源蜂鸣器与无源蜂鸣器区别? 蜂鸣器驱动电路图解_有源蜂鸣 喝茶发烧友的进阶茶具装备—— 第五节:蜂鸣器的驱动程序

    本站由:商旅在线网 网站建设  版权所有 :上海择途航空票务代理有限公司

    服务电话:021-51873510 51873508 52375016 传真: 021-62496544 在线QQ:844390757

    地址:东诸安浜路227号4楼316  公司:上海腾飞国际机票网   MSN: wuchenggang0101@hotmail.com

    万料堂资料库| 香港最准的跑狗图老版| 欢迎光临小喜免费图库| 香港马会开奖结果论坛| 马经通天报另版图片| 四海图库印刷区| 五行相生相克| 香港白小姐管家婆彩图| 香港最快开奖现场直播开奖记录| 百合图库图纸彩色印刷网|