|
Прерывания UART, не работает |
|
|
|
Feb 13 2014, 18:10
|
Местный
  
Группа: Участник
Сообщений: 368
Регистрация: 18-04-11
Из: Город-герой Москва
Пользователь №: 64 451

|
Всем категорически драсте. Пытаюсь реализовать небольшое устройство (назовём его A), которое должно управлять другим устройством (В) по интерфеёсу 485 (полудуплексный режим) с использованием протокола юарт. Система работает след. образом : с PC на устройство А отправляется пакет данных (по юарту, скорость 9600кБод/с). Устройство А принемает пакет и транзитом передаёт его на устройство Б но уже со скоростью 1Мбит/с (т.е. длительность импульса данных = 1 мкс). Далее устройство Б должно ответить (по тем же проводам). Решил не морочится, взял ниос прилепил к нему 2 UART контроллера один принемает с компа другой для работы с устройством Б. Сначало было всё нормально, с компа посылка принемалась и благополучно отправлялась с необходимой скоростью. Но вот когда устр. Б отвечает, прерывания UARTа (для 1 Мбита) говорящие о том, что очередной байт принят ведут себя каким то рандомным образом. Дело в том, что для преобразования интерфейсов используется микросхема MAX3485. Её работа такова, что ножка, с которой данные приходят уже на ПЛИС всё время, сидит в 0. Кода же устройство Б начинает передавать оно сначало поднимает линию (назовём этот момент предстартовым битом) и затем опускает (это уже стартовый бит). Этот самый предстартовый бит довольно короткий и я думал дело в этом. Но сдаётся мне дело в чём то другом. Ниос использею естественно самый простяцкий. Может кто подскажет чего. На осциллограмме жёлтым изображён ответ устройства Б, а синим моменты, в которые UART контроллер говорит, что мол байт принят, т.е. происходит прерывание.
Эскизы прикрепленных изображений
|
|
|
|
|
 |
Ответов
|
Mar 12 2014, 09:41
|
Местный
  
Группа: Участник
Сообщений: 368
Регистрация: 18-04-11
Из: Город-герой Москва
Пользователь №: 64 451

|
Нет, ну у Альтеры есть какая то там фифошечка, я правда с ней не разбирался, но в каком то туториале написано было, что оно генерит прерывание, когда полностью заполнится... но это то же не совсем то  Цитата имхо,это самому нужно писать компонент для qsys,в штатном уарте такого нет. Ну дык это значит, что и уарт то весь тогда самому написать проще.
Сообщение отредактировал Грендайзер - Mar 12 2014, 09:46
|
|
|
|
Сообщений в этой теме
Грендайзер Прерывания UART Feb 13 2014, 18:10 sazh Цитата(Грендайзер @ Feb 13 2014, 21:10) п... Feb 13 2014, 18:51 Грендайзер Дело а том, что при переключении из режима передач... Feb 14 2014, 06:44 sazh Цитата(Грендайзер @ Feb 14 2014, 09:44) Д... Feb 14 2014, 07:43 Golikov A. по спецификации UART сигнал должен быть в 1 в неак... Feb 14 2014, 07:12 Грендайзер Подтягивающие резисторы не помогают. Действительно... Feb 14 2014, 08:51 Golikov A. ЕПРСТ!
Что ядра менять, если на осцилографе Н... Feb 14 2014, 08:56 Грендайзер Я ж написал, что ссоединял плисы напрямую, в обход... Feb 14 2014, 11:46 Golikov A. время написания UART модуля - 20 минут. Возьмите и... Feb 14 2014, 12:05 Грендайзер Да написать то UART дело не хитрое кодов и нете по... Feb 14 2014, 12:14 Golikov A. UART надо писать к ниосу, У всех этих процов шина ... Feb 14 2014, 13:02 Грендайзер Да я тоже подумывал сначала написать небольшой мод... Feb 14 2014, 14:38 Грендайзер Появилось времечко, и вновь взялся за разборки с н... Mar 12 2014, 08:27 alexadmin Цитата(Грендайзер @ Mar 12 2014, 12:27) Т... Mar 12 2014, 08:36 Грендайзер Ооопанькииии... А ещё можно наводящий вопросик как... Mar 12 2014, 08:42 _Anatoliy Цитата(Грендайзер @ Mar 12 2014, 10:42) О... Mar 12 2014, 08:59  alexadmin Цитата(_Anatoliy @ Mar 12 2014, 12:59) им... Mar 12 2014, 09:24   _Anatoliy Цитата(alexadmin @ Mar 12 2014, 11:24) И ... Mar 12 2014, 09:32 Golikov A. берете корку уарта
и корку фифо
правильно соединя... Mar 12 2014, 14:57 vadimuzzz вообще-то у альтеры есть streaming-режим, и прерыв... Mar 12 2014, 22:27 Грендайзер Цитатавообще-то у альтеры есть streaming-режим, и ... Mar 13 2014, 02:56 vadimuzzz Цитата(Грендайзер @ Mar 13 2014, 09:56) А... Mar 13 2014, 05:20  alexadmin Цитата(vadimuzzz @ Mar 13 2014, 09:20) в ... Mar 13 2014, 05:24   vadimuzzz Цитата(alexadmin @ Mar 13 2014, 12:24) У ... Mar 14 2014, 01:45    alexadmin Цитата(vadimuzzz @ Mar 14 2014, 05:45) я ... Mar 14 2014, 03:47     vadimuzzz Цитата(alexadmin @ Mar 14 2014, 10:47) Хм... Mar 14 2014, 10:52 Грендайзер Ну проблема то в том, что количество байт в пакете... Apr 9 2014, 08:57 vadimuzzz Цитата(Грендайзер @ Apr 9 2014, 15:57) Ну... Apr 9 2014, 23:07 Грендайзер ааааа... да да да понял... Правда последним символ... Apr 11 2014, 15:15
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|