- UID
- 84924
- 性别
- 男
|
我的程序是这样的
其中
d : INOUT STD_LOGIC_VECTOR (7 downto 0);
ipc : INOUT STD_LOGIC_VECTOR (7 downto 0);
led ut STD_LOGIC;--接一个发光二极管
signal dw: std_logic_vector(7 downto 0);
signal cw: std_logic_vector(7 downto 0);
process(clk)
...
dw(7 downto 0)<=ipc(7 downto 0); 这句在模拟的时候是正确的,
但程序烧到CPLD里后ipc总线上的数据并没有被传到d总线上;
led<=dw(0); 这句模拟不正确,二极管不能被点亮;
led<=ipc(0); 这句模拟正确,硬件工作也正常,二极管能被点亮。
当然给led的赋值语句只能用一句
cw<=''1'';
...
end process;
d<= (others=>''Z'') when cw=''0'' else dw;
...
我要的结果是能把ipc总线上的数据传到d总线上,同时要求d总线是三态总线,我的程序中ipc总线上的数据经过dw中间转换后就不能被正常输出到d总线上,请问大虾我的程序该怎么写?感谢!!
[em27][em27][em27][em27] |
|