蜂鸣器 不响 为什么

2019-03-25 09:53发布

module fp_verilog(clk,reset_n,fm);
input clk,reset_n;
output fm;
reg fm;
reg [19:0] counter;
always@(posedge clk or negedge reset_n)
  if(!reset_n)
  counter<=20'b0;
  else
       begin
       if(counter[19])
       begin
            fm<=1'b1;counter<=20'b0;
       end
       else
             begin
             fm<=1'b0;counter<=counter+1'b1;
             end
       end
endmodule 我的板子的蜂鸣器是电磁式 的  这个代码驱动带不起来  高手指点一下 为什么 怎么样才能响 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
eeleader
1楼-- · 2019-03-25 17:34
< /

高脉冲宽度太窄,仅一个系统时钟周期。最好是方波驱动。

leomeng
2楼-- · 2019-03-25 18:52

module fp_verilog(clk,reset_n,fm);

 input clk,reset_n;

 output fm;

 reg [19:0] counter;

 reg h;

 

 always@(posedge clk or negedge reset_n)

if(!reset_n)

counter<=5'h00000;

else

counter<=counter+1;

 

always @(posedge clk or negedge reset_n)

 if(!reset_n)

h<=1'b0;

else

if(counter==5'hfffff)

 h<=~h;

 

assign fm=h;

endmodule

 

 

代码这样写是不是 脉冲宽度就大了 而且也是 方波现在学习感觉太艰难了 遇到很多不会的问题 自己会上网查 然后到这里来问 FPGA 只是一个工具 要想做电子工程师 模拟 数字 以及微机原理 计算机结构 通信知识 接口知识 等等 需要看的东西太多了 您作为一个过来者 能给点建议 什么的 ,因为需要看的东西太多了 要是盲目的去看 或者 急于求成 可能会是事倍功半的效果 也很可能走入误区

[ 本帖最后由 leomeng 于 2011-11-12 13:35 编辑 ]
常见泽1
3楼-- · 2019-03-25 21:38
学习太难了 爱 不简单
leomeng
4楼-- · 2019-03-26 03:11
 精彩回答 2  元偷偷看……
eeleader
5楼-- · 2019-03-26 07:49

学习没捷径!

1. FPGA学习关键理解好数字电路。因为FPGA设计的数字电路,所以如果你的电路设计的好,则FPGA也会设计很好的。

 

FPGA语法表达很简单,而且都是固定式。不像高级语言那样变化丰富。但如果做测试,当然另外考虑。

leomeng
6楼-- · 2019-03-26 11:32
怎样能提高 数字电路的设计能力 ? 现在我看了人家的代码我知道是怎么回事,没见过的就不知道。比如说 现在有人给了我一个 题目 我不知道用怎样的电路来实现,我通过怎么样的学习才能知道了呢?现在很多时候都是迷茫的。不知道怎么样去提高,只能看代码,看别人设计的东西。

一周热门 更多>