VHDL进程CASE语句问题

process(clk_20us)beginifrising_edge(clk_20us)thencasecntiswhen0|10|20|30|40|50=>duan<... process(clk_20us) begin if rising_edge(clk_20us) then case cnt is when 0|10|20|30|40|50=> duan<=duan1;ge<=0;wei<="1110"; when=""> duan<=duan1;ge<=1;wei<="1110"; when=""> duan<=duan1;ge<=2;wei<="1110"; when=""> duan<=duan1;ge<=3;wei<="1110"; when=""> duan<=duan1;ge<=4;wei<="1110"; when=""> duan<=duan1;ge<=5;wei<="1110"; when=""> duan<=duan1;ge<=6;wei<="1110"; when=""> duan<=duan1;ge<=7;wei<="1110"; when=""> duan<=duan1;ge<=8;wei<="1110"; when=""> duan<=duan1;ge<=9;wei<="1110"; when=""> wei<="1111"; 9="" end="" case="" cnt="" is="" when=""> duan<=duan2;shi<=0;wei<="1101"; when=""> duan<=duan2;shi<=1;wei<="1101"; when=""> duan<=duan2;shi<=2;wei<="1101"; when=""> duan<=duan2;shi<=3;wei<="1101"; when=""> duan<=duan2;shi<=4;wei<="1101"; when=""> duan<=duan2;shi<=5;wei<="1101"; when=""> wei<="1111"; end case; end if; end process; end behave;这个程序wei一直等于1101是怎么回事<!--=duan2;shi<=5;wei<!--=duan2;shi<=4;wei<!--=duan2;shi<=3;wei<!--=duan2;shi<=2;wei<!--=duan2;shi<=1;wei<!--=duan2;shi<=0;wei<!--=duan1;ge<=9;wei<!--=duan1;ge<=8;wei<!--=duan1;ge<=7;wei<!--=duan1;ge<=6;wei<!--=duan1;ge<=5;wei<!--=duan1;ge<=4;wei<!--=duan1;ge<=3;wei<!--=duan1;ge<=2;wei<!--=duan1;ge<=1;wei<!--=duan1;ge<=0;wei 展开
 我来答
nereus78e904
2014-07-19 · TA获得超过1.5万个赞
知道大有可为答主
回答量:5463
采纳率:90%
帮助的人:1946万
展开全部
两个CASE语句本身存在矛盾,你将两个CASE语句合并试试,就会发现这是行不通的。
比如cnt=0的时候,你该给duan赋什么值呢?
更多追问追答
追问
CNT=0,DUAN赋值0 的段码
追答
第一个case语句在cnt=0时,给duan赋值duan1,而第二个case语句却在cnt=0时,给duan赋值duan2。到底是给duan赋值duan1呢?还是给duan赋值duan2?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式