IF (((SW(17) = '0') OR ((SW(17) = '1') AND (SW(16) = '0'))) OR ((SW(17) = 1) AND (SW(16) = 0) AND (SW(14) = 1)) AND (tempCounter = 1)) THEN
next_state <= STATE1;
resetTempCounter <= '1';
ELSE
next_state <= STATE0;
END IF;
上面的代码会引发语法错误。我检查了括号,我认为这不是问题。我最初打破了排长队,并认为这是问题所在,但事实并非如此。我还应该通知您,代码在流程语句中,这不是问题所在。
错误:
错误 (10500):Lab4b.vhd(241) 靠近文本“AND”的 VHDL 语法错误;期待“)”或“,”
错误 (10500):Lab4b.vhd(244) 靠近文本“ELSE”的 VHDL 语法错误;期待“end”,或“(”,或标识符(“else”是保留关键字),或顺序语句
我对 VHDL 编程相当陌生,所以请多多包涵,感谢您的帮助。