С Новым годом! Форум программистов, компьютерный форум, киберфорум
Программируемая логика: ПЛИС, ПАИС
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/21: Рейтинг темы: голосов - 21, средняя оценка - 4.95
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 22

[Verilog] Передатчик UART

03.11.2014, 11:17. Показов 4185. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Кто-нибудь может помочь с созданием UART передатчика на Verilog.
Примерно по таким сигналам.
Работа передатчика разрешается установкой в 1 разряда TXEN регистра UCR. Если этот разряд сброшен (передатчик выключен), вывод PD1 (TxD) может использоваться как линия ввода;вывода порта PD. При установке разряда TXEN этот вывод подключается к передатчику UART и начинает функционировать как выход независимо от состояния 1-го разряда регистра DDRD порта PD.
Передача инициируется записью передаваемых данных в регистр данных UDR. После этого данные пересылаются из регистра UDR в сдвиговый регистр передатчика. При этом возможны два варианта:
1) новое значение записывается в регистр UDR после того как был передан стоп-бит предыдущего слова. В этом случае данные пересылаются в сдвиговый регистр сразу же после записи в регистр UDR;
2) новое значение записывается в регистр UDR во время передачи. В этом случае данные пересылаются в сдвиговый регистр после передачи стоп-бита текущего слова.
После пересылки содержимого регистра UDR в сдвиговый регистр флаг UDRE регистра USR устанавливается в 1, что означает готовность передатчика к получению нового значения. В этом состоянии флаг остается до новой записи в регистр UDR. Одновременно с пересылкой формируется служебная информация: 0-й разряд сдвигового регистра сбрасывается в О (старт-бит), а 9-й (или 10-й) разряд устанавливается в 1 (стоп-бит). Если включен режим передачи 9-разрядных данных (разряд CHR9 регистра UCR установлен в 1), то значение разряда ТХВ8 регистра UCR копируется в 9-й разряд сдвигового регистра.
После загрузки сдвигового регистра его содержимое начинает сдвигаться вправо и поступает на вывод TXD в следующем порядке: стартовый бит, данные (начиная с младшего разряда), столовый бит. Сдвиг осуществляется по тактовому сигналу, вырабатываемому контроллером скорости передачи. Если во время передачи в регистр UDR было записано новое значение, то после передачи стоп-бита оно пересылается в сдвиговый регистр. Если же к моменту окончания передачи стоп-бита новой записи выполнено не было, в регистре USR устанавливается флаг завершения передачи ТХС.
где:
TXCIE – разрешение прерывания по завершении передачи, если ТХС1Е=1;
UDRIE – разрешение прерывания при опустошении регистра данных UART, если UDRJE = 1;

TXEN – разрешение передачи при TXEN = 1;
CHR9 – формат посылок (кадров). Если CHR9 = 1, производится передача и прием 9-разрядных данных. При передаче значение старшего (8-го) разряда берется из разряда ТХВ8 регистра, а при приеме записывается в разряд RXB8;
ТХВ8 – 8-й разряд передаваемых данных. Если флаг CHR9 = 1, значение ТХВ8 передается как старший разряд слова.
Значения битов (флагов) регистра состояния:
ТХС – флаг завершения передачи. Данный флаг устанавливается в 1 после передачи всех разрядов слова, включая стоп-бит, из сдвигового регистра передатчика, при условии, что в регистр данных UDR не было загружено новое значение. Этот флаг наиболее полезен при полудуплексной связи, когда передающее устройство должно освободить линию и перейти в режим приема сразу же после окончания передачи. Флаг сбрасывается аппаратно при выполнении подпрограммы обработки прерывания или программно при записи 1 (!) в этот разряд;
UDRE – регистр данных пуст. Данный флаг устанавливается в 1 после пересылки байта из регистра данных UDR в сдвиговый регистр передатчика. Установка этого флага означает, что передатчик готов к получению нового значения для передачи. Сбрасывается флаг аппаратно при записи в регистр UDR;
FE – флаг ошибки формата. Данный флаг устанавливается в 1, если стоп-бит принятого слова равен 0. Флаг сбрасывается при приеме стоп-бита, равного 1;
OR – флаг переполнения. Данный флаг устанавливается в 1, если в сдвиговом регистре приемника находится новое принятое слово, а старое содержимое регистра UDR не прочитано. Флаг остается установленным до тех пор, пока не будет прочитано содержимое регистра UDR. Флаг сбрасывается при пересылке принятых данных из сдвигового регистра приемника в регистр UDR.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.11.2014, 11:17
Ответы с готовыми решениями:

Как реализовать 6 приемников uart - 1 передатчик
Подскажите, пожалуйста, на чем можно реализовать девайс имеющий 6 последовательных портов на прием, и один (два) порта на передачу. Есть...

Icarus Verilog. GNU GPL компилятор под Verilog
...представляет собой свободную и компактную реализацию компилятора для IEEE-1364 Verilog языка описания аппаратуры. Основан на GTKWave...

Конфигурация UART и просмотр файла, в который приходят данные с UART
Уважаемые коллеги! Подскажите, пожалуйста, как будет оптимальнее прочитать (скорее залогировать файл), в который пишутся данные с...

1
 Аватар для raxper
10236 / 6614 / 498
Регистрация: 28.12.2010
Сообщений: 21,154
Записей в блоге: 1
03.11.2014, 20:43
VHDL. Реализация UART на ПЛИС
Open Source Documented Verilog UART http://opencores.org/project,osdvu
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.11.2014, 20:43
Помогаю со студенческими работами здесь

Сообщения для 2 UART выводятся в 1 UART, STM32F103C8T6
Почему может неправильно работать uart? Подключил 1 uart к пк через usb/uart переходник, а второй к gsm модему. В первый уарт вывожу инфу...

Два TX UART на один RX. Мультиплексирование UART.
Привет, сообщество. Возник небольшой затык. Есть необходимость при одном UART на Atmego32 подавать на вход два сигнала от других...

FM передатчик
Вот схема передатчика с использованием КТ3107Б скажите пожалуйста каким транзистором можно заменить КТ3107Б Используемые детали: R1 -...

FM передатчик
Решил сделать FM передатчик на 10,7 мгц - промежуточная частота многих приемников, чтобы принимали все приемники независимо от настройки. ...

Передатчик
Здравствуйте. Если кто может помочь, объясните пожалуйста как построить передатчик с коллекторной системой модуляции. Это задание в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru