реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Об использовании JTAG_UART, Можно ли юзать в своих целях?
RHnd
сообщение Dec 7 2009, 19:03
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 518
Регистрация: 12-04-07
Из: Санкт-Петербург
Пользователь №: 26 997



Ситуация: Есть плата альтеровская, CyclonII starter kit, на которой реализована типовая схема - USB-BLASTER на камне MAX. Т.е. плата подключается к компу одним только usb шнурком, через который идет и питание, и бластер делается. На плате собран проект демонстрационный, который решает свои задачи, внешнее оборудование дергает и т.п.. Для присмотра за всем этим хозяйством собран Nios, содержащий jtag_uart, по которому при отладке общался с Nios2-eds.

Возникло желание при эксплуатации платы передавать на комп в собственный софт некоторые сервисные данные - немного и небыстро. Что-то в духе по нажатию на кнопочку в софтине запрашивать и получать значение одного коэфициента. Обманувшись названием словом uart в названии jtag_uart, я надеялся общаться через этот интерфейс, представляя его на компе как обычный COM. Однако полез сегодня под вечер в мануалы, а там написано, что только nios2-terminal умеет общаться с jtag_uart.

Вопрос - так ли это? Можно ли как-то прикрутить сопсовский модуль и соединение jtag_uart к какому-то собственному софту? Какие можно предложить альтернативы? Безумно не хочется кидать дополнительный шнур.
Заранее всем большое спасибо за помощь!
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Dec 8 2009, 03:56
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



м.б. что-то типа такого:
Код
>screen nios2-terminal
> ps ax | grep nios
8079 pts/5    S+     0:00 screen nios2-terminal
8081 ?        Ss     0:00 SCREEN nios2-terminal
8083 pts/9    Ssl+   0:00 /opt/altera7.2/nios2eds/bin/nios2-terminal-wrapped
>echo "hello" > /dev/pts/5

во всяком случае с " /dev/pts/N" работать можно также как с COM-портом.
Go to the top of the page
 
+Quote Post
RHnd
сообщение Dec 8 2009, 05:10
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 518
Регистрация: 12-04-07
Из: Санкт-Петербург
Пользователь №: 26 997



sad.gif
Увы, но мне, видимо, не хватает знаний, чтоб понять ответ.
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Dec 8 2009, 05:32
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



Цитата(RHnd @ Dec 8 2009, 11:10) *
sad.gif
Увы, но мне, видимо, не хватает знаний, чтоб понять ответ.

а ОС какая? я для линукса пример накидал. по идее, в cygwin`е такие же команды д.б., только терминалы, наверное, по-другому называются.
Go to the top of the page
 
+Quote Post
iosifk
сообщение Dec 8 2009, 06:06
Сообщение #5


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(RHnd @ Dec 7 2009, 22:03) *
Вопрос - так ли это? Можно ли как-то прикрутить сопсовский модуль и соединение jtag_uart к какому-то собственному софту? Какие можно предложить альтернативы? Безумно не хочется кидать дополнительный шнур.
Заранее всем большое спасибо за помощь!


на самом деле тут вопрос должен быть вот такой:
где достать виндовое API для того, чтобы шевелить пинами в USB-jtag бластере.
вопрос о LPT у меня на сайте уже "разжеван" и пример выложен. Описание приведено в статье об отладке микроконтроллеров...
А вот с USB никак не "выдрать"... Секретят гады...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
RHnd
сообщение Dec 8 2009, 10:11
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 518
Регистрация: 12-04-07
Из: Санкт-Петербург
Пользователь №: 26 997



ОС - WinXP.
А вопрос действительно скорее о виндовском API, которое позволит юартиться через usb-blaster.
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Dec 8 2009, 10:50
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



Цитата(RHnd @ Dec 8 2009, 16:11) *
ОС - WinXP.
А вопрос действительно скорее о виндовском API, которое позволит юартиться через usb-blaster.

очень сомнительно, что такой API даже в природе существует. дело в том, что вся среда разработки для ниоса - это эклипс+gnu tools (gcc,gdb,...)+некоторые фирменные фичи(типа nios2-terminal) - линуксовая. под линуксом все эти тулзы - нативные, а под виндой это дело эмулируется при помощи cygwin. так что гипотетическая программа, которая захочет обмен по jtag-uart с ниосом, по необходимости будет линуксовой и запускаться в том же cygwin.
Go to the top of the page
 
+Quote Post
vetal
сообщение Dec 8 2009, 19:43
Сообщение #8


Гуру
******

Группа: Модераторы
Сообщений: 2 095
Регистрация: 27-08-04
Из: Россия, СПб
Пользователь №: 553



Для тех, кто не умеет пользоваться поисковыми системами http://topic.csdn.net/u/20090112/14/7b4c6c...c3435c4108.html
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Dec 9 2009, 00:05
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



Цитата(vetal @ Dec 9 2009, 01:43) *
Для тех, кто не умеет пользоваться поисковыми системами http://topic.csdn.net/u/20090112/14/7b4c6c...c3435c4108.html

собственно я там не увидел противоречий с тем, что писал выше. пляска с бубном в цигвине, грязные хаки с jtag_atlantic.dll(а лицензия позволяет?). я понимаю, если нужен, скажем, внутрисхемный отладчик, но чтобы пару байт отослать, как топикстартеру надо - зачем? вся задача-то перекинуть данные с одного терминала(или из файла) на другой. в нормальных осях это делается штатными утилитами. да и в цигвине наверняка все эти тулзы есть. но таки насчет поиска вы правы, он рулит: первая ссылка в гугле. если на alteraforum не зареганы, то проект для MSVC в аттаче.
Прикрепленные файлы
Прикрепленный файл  jtag_atlantic.zip ( 5.08 килобайт ) Кол-во скачиваний: 39
 
Go to the top of the page
 
+Quote Post
torik
сообщение Dec 9 2009, 05:58
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



Если не ошибаюсь, вместе с CycloneII_Starter_Kit идут примеры, в том числе и обмен данными по JTAG-UART со встроенного бластера...


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
vetal
сообщение Dec 9 2009, 07:26
Сообщение #11


Гуру
******

Группа: Модераторы
Сообщений: 2 095
Регистрация: 27-08-04
Из: Россия, СПб
Пользователь №: 553



Цитата
собственно я там не увидел противоречий с тем, что писал выше. пляска с бубном в цигвине, грязные хаки с jtag_atlantic.dll(а лицензия позволяет?)

Оттуда только прототипы функций нужны и не более. Остальное динамически подгружается. Для доступа нужна любая доступная среда, способная импортировать функции из dll.
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Dec 9 2009, 07:54
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



Цитата(vetal @ Dec 9 2009, 13:26) *
Оттуда только прототипы функций нужны и не более. Остальное динамически подгружается. Для доступа нужна любая доступная среда, способная импортировать функции из dll.


я в курсе насчет динамической линковки, но есть и сложности:
Цитата
Upon attempting to work with a DLL that has been created in the Cygwin environment it becomes painfully clear that not all
DLLs are created equally. The Cygwin environment creates DLLs using an internal tool known as dlltool.exe. This tool is not
compatible with the export requirements for MS Visual Studio lib.exe tool when building an application which calls on member functions located
in the aforementioned DLL.

Explicit importing of the member functions using MS Visual Studio is not possible using function wrappers and/or ordinals. This can be
misleading due to the fact that no linker errors or warnings will be elicited. However, after attempting to run an
application which calls upon these member functions using the explicit method, there appears to be no linkage to the functions.
This is easily verifiable by inserting error checking code upon calling a member function and determining if it returns correctly.

One cannot use the *.a import library for the implicit calling method for the MSVC environment either. These import
libraries are created by Cygwin and are not compatible with the *.lib import libraries which MSVC expects. The *.def file created by
Cywin is also not compatible with MSVC.

ну и мысль моя была в том, что не фиг писать программу для отправки нескольких байт.
Код
echo "что-то" > куда-то
что м.б. проще? но это уже личные предпочтения.
Go to the top of the page
 
+Quote Post
RHnd
сообщение Dec 9 2009, 07:59
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 518
Регистрация: 12-04-07
Из: Санкт-Петербург
Пользователь №: 26 997



Цитата(torik @ Dec 9 2009, 08:58) *
Если не ошибаюсь, вместе с CycloneII_Starter_Kit идут примеры, в том числе и обмен данными по JTAG-UART со встроенного бластера...

Сейчас посмотрел - там не ниосовская система, используется отдельный модуль USB_JTAG. На хосте используется dll от ftdi. У меня нет уверенности, что этот блок и, что главное, API к нему будут совместимы с jtag_uart от ниоса.

Но всем спасибо за помощь, буду разбираться. В условиях цейтнота пришлось кинуть второй шнур, используя serial2usb переходник (благо на плате есть честный rs232), но к этому вопросу еще придется вернуться.
Go to the top of the page
 
+Quote Post
Maverick
сообщение Dec 9 2009, 09:20
Сообщение #14


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



RHnd, посмотрите надеюсь поможет

эту информацию

Удачи!!
Причина редактирования: Излишнее цитирование


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 6th July 2025 - 14:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01484 секунд с 7
ELECTRONIX ©2004-2016