你好,我想完成这件事VHDL-交换机正确的代码
,我已经写了这个代码,是正确的吗? 因为我在MAX + PLUS II编译器不显示任何错误...
LIBRARY IEEE;
USE IEE.STD_LOGIC_1164.ALL;
ENTITY alarm IS PORT
(ON/OFF,MOTION_SENSOR,.LIGHT_SENSOR,.SOUND_SENSOR,.CAMERA_SENSOR,.IP_SENSOR,.TEMPERATURE_SENSOR: IN STD_LOGIC;
SENSOR_SIRINE,SENSOR_LIGHT:OUT STD_LOGIC);
END alarm;
ARCHITECTURE LEITOURGEIA OF alarm IS
BEGIN
if (ON/OFF='1' AND (MOTION_SENSOR='1' OR LIGHT_SENSOR='1' OR SOUND_SENSOR='1' OR CAMERA_SENSOR='1' OR IP_SENSOR='1' OR TEMPERATURE_SENSOR='1')) then
SENSOR_LIGHT<='1';
SENSOR_SIRINE<='1';
ELSE IF (ON/OFF='0' AND (MOTION_SENSOR='1' OR LIGHT_SENSOR='1' OR SOUND_SENSOR='1' OR CAMERA_SENSOR='1' OR IP_SENSOR='1' OR TEMPERATURE_SENSOR='1')) then
SENSOR_LIGHT<='1';
SENSOR_SIRINE<='0';
ELSE
SENSOR_LIGHT<='0';
SENSOR_SIRINE<='0';
END IF
END LEITOURGEIA;
你错过了一个分号:
而这其中甚至更类似于参考电路。 ON/OFF不是VHDL中的合法标识符,也不是以句点开头的标识符。 if语句不是并发语句。 – user1155120 2015-02-18 00:17:30
不是合法标识符的含义?开/关是输入 – 2015-02-18 00:19:09
伙计,这不是VHDL。 – user1155120 2015-02-18 00:21:51