Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Spartan 3E I2C slave
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
sonycman
Доброго времени суток!

В целях обучения хочу реализовать I2C slave на Spartan-3E.
Можно ли подключать линии SDA и SCL интерфейса напрямую к FPGA?
Или требуется установка триггеров шмитта, всё таки фронты довольно пологие?
serebr
Обычно антизвоновая защита реализуется внутри FPGA.
Например так: реверсивный счётчик, останавливающийся на своих границах. На реверсивный вход счётчика подаём входной сигнал. Достижение счётчиком своих пределов (верхнего и нижнего) подаём на JK триггер, на его входы J и K. Выход JK триггера - это наш входной сигнал после устранения дребезга.
Разрядность реверсивного счётчика определяет длительность гистерезиса входного сигнала. В результате получается некоторая аналогия с триггером Шмидта.

Если же волнует именно затянутость входных фронтов и возможность появления сквозных токов во входном каскаде, то тоже можно обойтись без внешних триггеров Шмидта. Аналоговый гистерезис можно устроить, используя дополнительный выход из FPGA. Логически делаем так, чтобы выход FPGA повторял сигнал на входе FPGA. Этот выход через резистор подаём на вход FPGA, а вход FPGA подключаем к источнику сигнала через в 10 раз меньший резистор. Положительная обратная связь даёт гистерезис. Как вариант, номиналы резисторов могут быть 100 Ом и 1 КОм.
sonycman
Цитата(serebr @ Oct 13 2010, 05:53) *
Обычно антизвоновая защита реализуется внутри FPGA.

Спасибо!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.