完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
写了个最简单的分频程序:
[C] 纯文本查看 复制代码 module fp_verilog( clk,rst_n, fm );parameter devide=32'd99;input clk; //时钟信号input rst_n; //复位output fm; //输出 低亮高不亮reg[31:0] cnt;always @(posedge clk or negedge rst_n)beginif(rst_n==0||cnt==0)cnt<=devide;elsecnt<=cnt-32'd1;endassign fm=(cnt>=(devide/2))? 1'b0:1'b1;endmodule显示if语句用法错误 改为: [C] 纯文本查看 复制代码 module fp_verilog( clk,rst_n, fm );parameter devide=32'd99;input clk; //时钟信号input rst_n; //复位output fm; //输出 低亮高不亮reg[31:0] cnt;always @(posedge clk or negedge rst_n)beginif(rst_n==0)cnt<=devide;else if(cnt==0)cnt<=devide;elsecnt<=cnt-32'd1;endassign fm=(cnt>=(devide/2))? 1'b0:1'b1;endmodule后,编译通过,请问这样使用逻辑表达式有什么问题,为何在if语句中条件表达式不能使用“或”? |
|
相关推荐
4个回答
|
|
|
我发现不是 "或"的问题了,是always 后的第一个if 必须为敏感表中的变量,只要添加其他任何变量都会出错,我又发了一个帖子,你可以看看
|
|
|
|
|
|
|
|
|
|
|
|
错误信息是在always块中条件表达式中无法匹配操作数Error (10200): Verilog HDL Conditional Statement error at fp_verilog.v(17): cannot match operand(s) in the condition to the corresponding edges in the enclosing event control of the always construct
|
|
|
|
|
|
我发现不是 "或"的问题了,是always 后的第一个if 必须为敏感表中的变量,只要添加其他任何变量都会出错,所以把第二段程序中的第二个条件判断与第一个调换也会出错,我又发了一个帖子,你可以看看
|
|
|
|
|
只有小组成员才能发言,加入小组>>
3272 浏览 3 评论
28302 浏览 2 评论
3996 浏览 2 评论
4317 浏览 4 评论
基于采用FPGA控制MV-D1024E系列相机的图像采集系统设计
2768 浏览 3 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 09:25 , Processed in 0.574302 second(s), Total 52, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3524
