Двунаправленная I / O

S

Soda

Guest
Эй,

Я работаю с проектом, в котором я должен сделать простой уровень напряжения сдвига между MCU шине и pheripheral.Мой вопрос: Можно ли связать два двунаправленных контактов друг с другом?Я использую в MachXO решетке.

Я пробовал так:

BIDIR_DATA1 <= BIDIR_DATA2 когда (RW = '0 ') остальное (другие =>' Z ');
BIDIR_DATA2 <= BIDIR_DATA1 когда (RW = '1 ') остальное (другие =>' Z ');

Когда я моделировать свой код с ModelSim, выход автобусы 'Z в.

Я буду признателен за любую помощь!VHDL и CPLD / FPGAs совершенно новая "площадка" для меня.

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Улыбка" border="0" />
 
Просьба дать более подробную

Сода пишет:BIDIR_DATA1 <= BIDIR_DATA2 когда (RW = '0 ') остальное (другие =>' Z ');

BIDIR_DATA2 <= BIDIR_DATA1 когда (RW = '1 ') остальное (другие =>' Z ');
 
Вы правы, не забудьте добавить подтянуть резисторов, о фактических контактов, а также на модели стенде симулятор добавить bidir_data1 <= 'H'; имитировать подтянуть резисторы

 
Спасибо за быстрый ответы!

Вот код, я делал до сих пор:

библиотека IEEE;
ieee.std_logic_1164.all использования;

организация блока
порта (
BIDIR_DATA1: InOut std_logic_vector (15 downto 0); - сигналы данных
BIDIR_DATA2: InOut std_logic_vector (15 downto 0);
RW: в std_logic);
цели;

архитектуры Макки из блока
начинать

BIDIR_DATA1 <= BIDIR_DATA2 когда (RW = '0 ') остальное (другие =>' Z ');
BIDIR_DATA2 <= BIDIR_DATA1 когда (RW = '1 ') остальное (другие =>' Z ');

конец Макки;
цели;

Таким образом, моя мысль, что я CPLD-IC между MCU и pheripheral уровня напряжения сдвига.Я связан различных принадлежностей напряжения CPLD банков.Кодекс не нужно делать ничего, кроме уровня перехода ..... Позже, я добавлю еще логику в цепи.Я это с моделируемой испытательный стенд, где я тянуть эти окна, но я получил результат, когда BIDIR_DATA1 <= BIDIR_DATA2 в порядке, но BIDIR_DATA2 <= BIDIR_DATA1 это не так.(Некоторые из ЗАФЕР BIDIR2 являются "Х).

Кстати, я пытался поставить эти приговоры (bidir_data1 <= bidir_data2 т.д..) Внутри определили специфику, но симулятор дал мне ошибку: Незаконные последовательных заявление.

Еще один вопрос пришел мне в голову.Если бы я хотел, чтобы подключить интерфейс SDIO pheripheral моей MCU, например, модуль WLAN, я не знаю, когда данные переходе от MCU или MCU.Существует не любой RW или включить сигналы доступны и все сигналы (execpt часов) являются bidirectionals.Это вид связи можно сделать с MachXO и VHDL?

 

Welcome to EDABoard.com

Sponsor

Back
Top