DE0-nano I/O с кабелем TTL

В настоящее время я работаю над проектом ввода-вывода с FPGA. Я использую кабель TTL-232R-3v3 для последовательной связи между моим ноутбуком и DE0-nano. Я хочу знать, можно ли отправить сигнал по проводу RX на FPGA и зажечь светодиоды с этим сигналом или нужен UART?

Мы будем очень признательны за любые советы или рекомендации, спасибо за ваше время.

редактировать-

Я использую USB-кабель для питания и использую только провода RX, TX и GND кабеля TTL. Вот мой код столкновения

module Blinker where

import CLaSH.Prelude

{-# ANN topEntity
  (defTop
    { t_name     = "blinker"
    , t_inputs   = ["GPIO_IN"]
    , t_outputs  = ["LED"]
    , t_extraIn  = [ ("CLOCK_50", 1)
                   , ("KEY0"    , 1)
                   ]
    , t_clocks   = [ (altpll "altpll50"
                             "CLOCK_50(0)"
                             "not KEY0(0)")
                   ]
    }) #-}
topEntity :: Signal Bit -> Signal (BitVector 8)
topEntity gpio_in = mealy blinkerT 0 gpio_in
blinkerT :: Int -> Bit -> (Int,BitVector 8)
blinkerT a bit = (a,pack bits)
    where bits = repeat $ bit == high   
Вы хотите отправить символ с ПК на входной контакт FPGA, устойчивый к напряжению 3,3 В, по кабелю? FPGA должен декодировать байт данных и включать светодиоды? Тогда это будет полуреализация UART. Если вам просто нужно поиграть со светодиодом и вводом-выводом, для начала настройте FPGA на переключение светодиода для каждого спадающего фронта на его входном выводе. Отправьте ноль в качестве данных с ПК через любое приложение последовательного терминала. Таким образом, вы можете избежать реализации последовательного UART, но я сомневаюсь, что это не то, что вам нужно. Потому что это не находит никакого применения, по крайней мере, с моей точки зрения.
Привет, Умар, спасибо за ваш комментарий. Пока меня просто интересуют светодиоды для тестирования. Я не очень разбираюсь в электронике, меня интересует программное обеспечение. Я просто хочу отправить 2 сигнала для мигания светодиодов, и я не знаю VHDL. Мы используем Clash для этого, но я новичок в этом.

Ответы (3)

Связь последовательного порта простаивает, высокий уровень (1). Если он подключен непосредственно к FPGA и направлен на светодиод без логической инверсии, вы увидите, что светодиод загорается (при условии правильного напряжения и тока привода). Чтобы выключить светодиод (в основном), вы можете постоянно отправлять двоичный код 0x0000_0000 через последовательный порт, и светодиод должен тускнеть или выключаться. Пока скорость передачи в бодах достаточно низкая, чтобы программа ПК могла насытить канал, вы будете отправлять в основном 0, за исключением обязательного стопового бита протокола.

Тем не менее, простые примеры последовательного порта распространены в Интернете и должны быть просты в реализации.

Кабель адаптера подключается к порту USB на одном конце и обеспечивает последовательный порт в стиле UART с уровнями LVTTL на другом. Кабель преобразует связь USB в последовательный порт UART.

Вам нужно будет внедрить ядро ​​UART в ваш логический проект для вашей FPGA. Это будет получать последовательные данные и передавать последовательные данные на UART в вашем кабеле.

Затем вы можете управлять светодиодами DE0-Nano и так далее, как хотите.

Это часть ядра Allegro. Было бы излишним дублировать ответы, которые уже существуют в Интернете, и это нельзя упростить до 1 страницы.введите описание изображения здесь введите описание изображения здесь

http://www.recontech.co.uk/index.php/tutorial/tutorial-1-a-serial-communication-fpga-debug-module/54-de0-nano-serial-communication-tutorial .

Пожалуйста, дополните свой ответ пояснениями, иначе его трудно понять.
@Ariser Должен ли я скопировать книгу, необходимую для объяснения каждой детали? EE должны иметь мотивацию и интеллект, чтобы найти более подробную информацию по ключевым словам в ответе, когда это необходимо объяснить по шагам или 7 уровням модели OSI.
Я не EE и знаю об этой странице, но для меня это сложно. Я пытаюсь понять, можно ли добиться этого без UART для целей тестирования.
yes У вашего ПК и nano есть UART, а у вас есть кабель RS-232. Далее идет основная библиотека и установка, а также исключение RTS/CTS, если они не используются. (не включать)