查看: 1811|回复: 0

【MAXII_EPM240T100_CPLD】 实验四 蜂鸣器发声实验

[复制链接]
  • TA的每日心情
    开心
    2019-11-19 11:07
  • 签到天数: 226 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2017-2-13 09:24:32 | 显示全部楼层 |阅读模式
    分享到:
    【MAXII_EPM240T100_CPLD】实验四 蜂鸣器发声实验
    此开发板上载有1只蜂鸣器,可以用它来发出声音。本次实验发出两种不同频率的声音模仿救护车或警车的叫声。
    创建工程:soundTest;文件夹:soundTest;工程名称:soundTest;管脚:P96对应的是蜂鸣器。管脚配置见图41。

    管脚配置图,对应的代码:
    //Test Sound 工程代码
    module soundTest (
    clk, //sysClk=50Mhz
    rst_n, //System Reset
    beep //声音
    );
    //PORT declarations
    input clk;
    input rst_n;
    output beep;
    //Define Register
    reg beep;
    reg [24:0] div_cnt;
    reg [14:0] delay_cnt;
    wire [14:0] delay_end;
    //Define Parameter
    parameter clk_divider0=56817;//50000000/2*440-1
    parameter clk_divider1=28408;//50000000/4*440-1
    assign delay_end=div_cnt[24] ? clk_divider0 :clk_divider1;
    //
    always @(posedge clk or negedge rst_n)//System clk up & reset down
    begin
    if(!rst_n)//reset=0
      div_cnt <= 25'd0;
    else
      div_cnt <= div_cnt+1'b1;
    end
    //
    always @ (posedge clk or negedge rst_n)
    begin
    if(!rst_n)//reset=0
      delay_cnt <= delay_end;
    else if(delay_cnt==15'b0)
      begin
       beep<=~beep;
       delay_cnt<=delay_end;
      end
    else
      delay_cnt<=delay_cnt-1'b1;
    end
    endmodule
    编译完成后下载就能听到嘀嘟嘀嘟...的声音。此实验在板上看不到任何变化,只有声音,没有其他可视的东西,照片免了。
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-19 16:45 , Processed in 0.128027 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.