qwasko1212 0 13 августа, 2018 Опубликовано 13 августа, 2018 · Жалоба Есть задача разработать SPI связь с несколькими чипами. Нужно получать их айди и выводить на дисплей 16х2. Могли бы вы порекомендовать рабочий исходник SPI для Xilinx? Язык VHDL. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 14 14 августа, 2018 Опубликовано 14 августа, 2018 · Жалоба Драйвер SPI в общем-то простая штука: преобразование из параллельного вида в последовательный и обратно. Пишется максимум за несколько часов. Вывод на дисплей -- отдельный модуль, с SPI не связанный. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MegaVolt 25 14 августа, 2018 Опубликовано 14 августа, 2018 · Жалоба Есть задача разработать SPI связь с несколькими чипами. Нужно получать их айди и выводить на дисплей 16х2. Могли бы вы порекомендовать рабочий исходник SPI для Xilinx? Язык VHDL. В атачменте модуль. Взят тут: https://opencores.org/project/spi/overview Допилено: - переведён на AXI шину - проверен - исправлены баги. Дарю. axi_spi128_v1_00_a.zip Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
qwasko1212 0 14 августа, 2018 Опубликовано 14 августа, 2018 · Жалоба Драйвер SPI в общем-то простая штука: преобразование из параллельного вида в последовательный и обратно. Пишется максимум за несколько часов. Я могу сделать преобразователь Serial To Parallel и обратно.Но я не понимаю архитектуру как SPI будет взаимодействовать с дисплеем. Могли бы вы поподробнее рассказать как бы вы такое делали? В атачменте модуль. Взят тут: https://opencores.org/project/spi/overview Допилено: - переведён на AXI шину - проверен - исправлены баги. Дарю. axi_spi128_v1_00_a.zip Спасибо. Пока что это сложно для меня. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 14 14 августа, 2018 Опубликовано 14 августа, 2018 · Жалоба Я могу сделать преобразователь Serial To Parallel и обратно.Но я не понимаю архитектуру как SPI будет взаимодействовать с дисплеем. Могли бы вы поподробнее рассказать как бы вы такое делали?А что здесь такого сложного? Считанные по SPI данные подаём на вход модуля управления дисплеем. Возможно, потребуется какое-то преобразование. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MegaVolt 25 14 августа, 2018 Опубликовано 14 августа, 2018 · Жалоба А что здесь такого сложного? Считанные по SPI данные подаём на вход модуля управления дисплеем. Возможно, потребуется какое-то преобразование.Кто будет управлять дисплеем? Автомат на ПЛИС? Проц на плис? Внешний проц? Да и какая плис стоит? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
qwasko1212 0 14 августа, 2018 Опубликовано 14 августа, 2018 · Жалоба Кто будет управлять дисплеем? Автомат на ПЛИС? Проц на плис? Внешний проц? Да и какая плис стоит? Плис Xilinx XC6SLX45-2. Будет автомат скорее всего. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MegaVolt 25 14 августа, 2018 Опубликовано 14 августа, 2018 · Жалоба Плис Xilinx XC6SLX45-2. Будет автомат скорее всего.Места немеряно можно и проц запихать :))) Читаем доку на микросхемы узнаём последовательность байт/слов для того чтобы получить ID Читаем доку на дисплей узнаём последовательность байт/слов для того чтобы отобразить нечто. Соответственно вычитываем ID. Преобразовываем ID и символы дисплея (коды символов) Загружаем коды символов в дисплей. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 14 августа, 2018 Опубликовано 14 августа, 2018 · Жалоба Будет автомат скорее всего. Если хотите автомат, то рекомендую сделать не один автомат, а два или три. Нижний - фильтрует принятый фронт клока или данных от дребезга. это если возможны колебательности или дребезгт в линии. Средний передавать/принимать слово, путем запуска "нижнего". Верхний - ведет обмен, формирует массивы данных и указатели и запускает средний. При таком раскладе будет значительно легче проектировать и отлаживаться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 15 августа, 2018 Опубликовано 15 августа, 2018 · Жалоба для примера, можете использовать такое описание (я переиспользовал старый проект - названия файлов лень было поменять) sim_DAC_AD5724.7z Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
qwasko1212 0 15 августа, 2018 Опубликовано 15 августа, 2018 · Жалоба для примера, можете использовать такое описание (я переиспользовал старый проект - названия файлов лень было поменять) Большое спасибо. Я понимаю ваш код, потому что мне знакомо 3 Process Notation. Буду ковырять. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 15 августа, 2018 Опубликовано 15 августа, 2018 · Жалоба Большое спасибо. Я понимаю ваш код, потому что мне знакомо 3 Process Notation. Буду ковырять. Команды для инициализации хранятся в блочной памяти и поочередно читаются и подаются на дисплей... Блочная память инициализируется изначально.... Там есть симуляция... RTL viewer тоже поможет понять... Будут вопросы пишите... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться