在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2226|回复: 6

[求助] 请问这样子赋值为什么会使后面的case语句出现错误?

[复制链接]
发表于 2016-7-27 23:19:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
我希望通过按键切换控制的数字位




  1.     reg digit_position;initial digit_position=3'd0;
  2.     always@(posedge clk)
  3.     begin
  4.        if((keydown[1])||(digit_position>4))
  5.          digit_position<=3'd0;
  6.          
  7.        else if((keydown[3])&&(digit_position<5))
  8.          digit_position<=digit_position+3'd1;
  9.          
  10.       else if((keydown[4])&&(digit_position>1))
  11.        digit_position<=digit_position-3'd1;
  12.   end



复制代码

代码.png

这是message的warning
搜狗截图20160727231747.png
 楼主| 发表于 2016-7-27 23:21:25 | 显示全部楼层
所以FPGA上只会工作led[0]和led[1],led[2]、led[3]、led[4]都没有工作
发表于 2016-7-28 09:02:52 | 显示全部楼层
回复 1# fangzr


   因为你的digit_position只有1bit,只有0和1两个分支,其它都是unreachable.
发表于 2016-7-28 09:17:13 | 显示全部楼层
回复 3# harry_hust

+1!!!
发表于 2016-7-28 15:18:56 | 显示全部楼层
语句:reg digit_position;表明你所定义的寄存器类型为1位宽,因此你的digit_position只会是1'b0或1'b1,当然不会跳到后续状态上去。应修改为reg [2:0] digit_position;
 楼主| 发表于 2016-7-28 22:19:03 | 显示全部楼层
谢谢大家,我已经解决了,正是因为位宽不匹配问题!
 楼主| 发表于 2016-7-28 22:36:53 | 显示全部楼层
回复 3# harry_hust


   华科学长好啊,求私聊QQ393756200
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-22 12:49 , Processed in 0.028415 second(s), 12 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表