stm32L151C8T6,通过TIM2_CH2 PWM输出1khz驱动无源蜂鸣器,基于stm32HAL库,已下到板子调试运行,完全没问题。
2021-04-19 09:25:33 544KB STM32L151C8T6 PWM TIM2_CH2 STM32HAL
1
STM32蜂鸣器经典程序代码,程序代码注释简明,易懂,便于移植开发。
2021-04-18 22:21:16 407KB STM32 蜂鸣器
1
该工程实现了51单片机的蜂鸣器音乐播放,内有详细注释和程序,完整的工程 该工程实现了51单片机的蜂鸣器音乐播放,内有详细注释和程序,完整的工程
1
2个独立按键控制蜂鸣器发出不同声音 汇编
2021-04-15 17:35:47 22KB 单片机
1
FPGA设计控制蜂鸣器播放音乐实验的Verilog逻辑源码Quartus工程文件+文档说明,根据简谱不同简谱名频率让蜂鸣器发出不一样的响声,FPGA型号Cyclone4E系列中的EP4CE6F17C8,Quartus版本17.1。 module music_top ( input clk, input rst_n, input key1, output reg buzzer ) ; parameter CLK_FRE = 50 ; parameter music_len = 32'd78 ; wire [19:0] cycle ; reg [31:0] play_cnt ; reg [31:0] music_cnt ; reg [19:0] hz_cnt ; wire [4:0] hz_sel ; wire [7:0] rom_hz_data ; wire [7:0] rom_time_data ; reg [31:0] music_time ; wire button_negedge ; parameter IDLE = 2'd0 ; parameter PLAY = 2'd1 ; parameter PLAY_WAIT = 2'd2 ; parameter PLAY_END = 2'd3 ; reg [1:0] state ; reg [1:0] next_state ; always @(posedge clk or negedge rst_n) begin if (~rst_n) state <= IDLE ; else state <= next_state ; end always @(*) begin case(state) IDLE : begin if (button_negedge) next_state <= PLAY ; else next_state <= IDLE ; end PLAY : begin if (play_cnt == music_time) next_state <= PLAY_WAIT ; else next_state <= PLAY ; end PLAY_WAIT : begin if (music_cnt == music_len - 1) next_state <= PLAY_END ; else next_state <= PLAY ; end PLAY_END : next_state <= IDLE ; default : next_state <= IDLE ; endcase end ax_debounce ax_debounce_a0 ( .clk (clk), .rst (~rst_n), .button_in (key1), .button_posedge (), .button_negedge (button_negedge), .button_out () ); //play counter always @(posedge clk or negedge rst_n) begin if (~rst_n) music_time <= 32'hffff_ffff ; else music_time <= rom_time_data*(CLK_FRE*1000000/8) ; end //counter in every step, maximum value is cycle always @(posedge clk or negedge rst_n) begin if (~rst_n) hz_cnt <= 20'd0 ; else if (state == PLAY || state == PLAY_WAIT) begin if (hz_cnt == cycle - 1) hz_cnt <= 20'd0 ; else hz_cnt <=
基于FPGA设计的不同频率PWM蜂鸣器控制实验Verilog逻辑源码Quartus工程文件+文档说明,用 PWM 控制蜂鸣器,用丌同频率的 pwm 让蜂鸣器发出丌一样的响声,FPGA型号Cyclone4E系列中的EP4CE6F17C8,Quartus版本17.1。 module buzzer_pwm_test( input clk, input rst_n, input key1, output buzzer ); parameter IDLE = 0; parameter BUZZER = 1; wire button_negedge; wire pwm_out; reg[31:0] period; reg[31:0] duty; reg[3:0] state; reg[31:0] timer; assign buzzer = ~(pwm_out & (state == BUZZER));//buzzer low active always@(posedge clk or negedge rst_n) begin if(rst_n == 1'b0) begin period <= 32'd0; timer <= 32'd0; duty <= 32'd429496729; state <= IDLE; end else case(state) IDLE: begin if(button_negedge) begin period <= 32'd8590; //The pwm step value state <= BUZZER; duty = 32'd12_499_999) //buzzer effictive time 250ms begin state <= IDLE; timer <= 32'd0; end else begin timer <= timer + 32'd1; end end default: begin state <= IDLE; end endcase end ax_debounce ax_debounce_m0 ( .clk (clk), .rst (~rst_n), .button_in (key1), .button_posedge (), .button_negedge (button_negedge), .button_out () ); ax_pwm# ( .N(32) ) ax_pwm_m0( .clk (clk), .rst (~rst_n), .period (period), .duty (duty), .pwm_out (pwm_out) ); endmodule
C#调用PC主板蜂鸣器小喇叭speaker发声beep。 不是拷贝XP的beep.sys实现,使用的是InpOut库,32位及64位均可使用。 我自己加了音符频率表,内附一首生日歌,类似于20年前DOS开发一样,使用蜂鸣器播放音乐,其它歌曲请自己编写。 另附InpOut32的调用源代码,不仅仅是发声,还可以有更多功能。 有人说用不了,我试了一下,确实是 64位要进入InpOutBinaries_1501文件夹,再进win32运行InstallDriver才可以,以前没上传这个文件夹,抱歉。 2019.10.1
2021-04-12 16:01:31 417KB c#蜂鸣器 PC小喇叭
1
蜂鸣器实验
2021-04-11 14:00:15 289KB 蜂鸣器
1
一大堆在网上找到的电子音响程序代码,一些附有原理图,pcb图
2021-04-10 22:02:50 4.84MB 51单片机
1
linux系统下,用Qt实现 ARM开发板 LED灯的控制,以及蜂鸣器不同频率的响应。代码相对简单,条理清晰,适合初学者学习借鉴。
2021-04-10 17:36:03 248KB arm 开发板 led 蜂鸣器
1