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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Программирование AVR через JTAG, Кто-нибудь имеет информацию конкретно о протоколе JTAG для AVR?
Polaris
сообщение Mar 13 2008, 11:15
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 266
Регистрация: 8-12-05
Пользователь №: 11 964



Уважаемые знатоки!

С целью уменьшения числа коннекторов на плате озаботился следующим вопросом - можно ли программировать AVR через JTAG? Причем интересует не использование сторонних отладчиков, а конкретно протокол общения непосредственно с AVR - то есть, мне не нужен протокол работы JTAG ICE, я хочу попытаться реализовать программирование на логическом уровне. С чем это связано? Сейчас на платах устройств приходится иметь два коннектора - один под JTAG для отладки (а серии у нас небольшие, изменения в прошивке частые, поэтому отказаться от возможности отладки не могу), второй - под SPI, чтобы можно было шить устройства в партии. Причем шить не только с компьютера, но и в тестирующем устройстве, которое само сделано на AVR, в нем хранится актуальная прошивка, которая и загружается в контролируемое изделие, для нас это очень удобно. Но в итоге имеем на плате один лишний разъем, который занимает место, портит внешний вид и так далее. Хотелось бы свести программирование AVR к работе через JTAG. Я так полагаю, что раз JTAG ICE это умеет делать, то задача вполне реальная. Вопрос в том, что ковыряться в прошивке JTAG ICE не хочется, времени не хватает, а никто под эту задачу ресурсов не выделит sad.gif Возможно, что где-то в сети уже есть наработки. Сам я попробовал искать, но слишком уж много хлама, после нескольких десятков сайтов с одними и теми же клонами JTAG ICE и одной и той же прошивкой в хексе, я это дело бросил.
Надеюсь, что найдется человек, который укажет, где этот протокол можно взять. С остальным я справлюсь сам.

Заранее благодарен.
Go to the top of the page
 
+Quote Post
Qwertty
сообщение Mar 13 2008, 11:35
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 408
Регистрация: 21-10-06
Из: Санкт-Петербург
Пользователь №: 21 527



Цитата(Polaris @ Mar 13 2008, 14:15) *
Надеюсь, что найдется человек, который укажет, где этот протокол можно взять. С остальным я справлюсь сам.

Например в книге Евстифеев "Микроконтроллеры AVR семейств Tiny и Mega фирмы ATMEL"
Находится в сети за 5 минут.
Go to the top of the page
 
+Quote Post
Igor26
сообщение Mar 13 2008, 11:39
Сообщение #3


Знающий
****

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



Цитата(Polaris @ Mar 13 2008, 14:15) *
Уважаемые знатоки!

С целью уменьшения числа коннекторов на плате озаботился следующим вопросом - можно ли программировать AVR через JTAG? Причем интересует не использование сторонних отладчиков, а конкретно протокол общения непосредственно с AVR - то есть, мне не нужен протокол работы JTAG ICE, я хочу попытаться реализовать программирование на логическом уровне. С чем это связано? Сейчас на платах устройств приходится иметь два коннектора - один под JTAG для отладки (а серии у нас небольшие, изменения в прошивке частые, поэтому отказаться от возможности отладки не могу), второй - под SPI, чтобы можно было шить устройства в партии. Причем шить не только с компьютера, но и в тестирующем устройстве, которое само сделано на AVR, в нем хранится актуальная прошивка, которая и загружается в контролируемое изделие, для нас это очень удобно. Но в итоге имеем на плате один лишний разъем, который занимает место, портит внешний вид и так далее. Хотелось бы свести программирование AVR к работе через JTAG. Я так полагаю, что раз JTAG ICE это умеет делать, то задача вполне реальная. Вопрос в том, что ковыряться в прошивке JTAG ICE не хочется, времени не хватает, а никто под эту задачу ресурсов не выделит sad.gif Возможно, что где-то в сети уже есть наработки. Сам я попробовал искать, но слишком уж много хлама, после нескольких десятков сайтов с одними и теми же клонами JTAG ICE и одной и той же прошивкой в хексе, я это дело бросил.
Надеюсь, что найдется человек, который укажет, где этот протокол можно взять. С остальным я справлюсь сам.

Заранее благодарен.

DS на Мега128 начиная со страницы 306.Programming Via JTAG specific
JTAG Interface

P.S. Чтоб не ставить разъем JTAG на плату, я в процессе отладки устройства напиваю МГТФом JTAG-разъём непосредственно к ножкам процессора. Одна плата ведь у программиста есть всегда. Ну и пусть JTAG-разъём на проводах болтается!
Go to the top of the page
 
+Quote Post
defunct
сообщение Mar 13 2008, 11:45
Сообщение #4


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата
можно ли программировать AVR через JTAG?

Можно

Цитата(Igor26 @ Mar 13 2008, 13:39) *
P.S. Чтоб не ставить разъем JTAG на плату, я в процессе отладки устройства напиваю МГТФом JTAG-разъём непосредственно к ножкам процессора. Одна плата ведь у программиста есть всегда. Ну и пусть JTAG-разъём на проводах болтается!

Я напротив предусматриваю JTAG разъем на всех устройствах.
Занимает не так уж и много места на плате - всего 6 пинов (TDO, TDI, TMS, TCK, Vcc, GND).
В конечных устройствах просто не запаиваются разъемы.

Болтающиеся на МГФе конструкции - ненадежные (даже для программиста) ;>
Go to the top of the page
 
+Quote Post
Qwertty
сообщение Mar 13 2008, 11:52
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 408
Регистрация: 21-10-06
Из: Санкт-Петербург
Пользователь №: 21 527



Если оставить только JTAG, то его будет не отключить smile.gif Мало ли ног будет не хватать...
Go to the top of the page
 
+Quote Post
Polaris
сообщение Mar 13 2008, 12:16
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 266
Регистрация: 8-12-05
Пользователь №: 11 964



Цитата(Igor26 @ Mar 13 2008, 13:39) *
DS на Мега128 начиная со страницы 306.Programming Via JTAG specific
JTAG Interface

P.S. Чтоб не ставить разъем JTAG на плату, я в процессе отладки устройства напиваю МГТФом JTAG-разъём непосредственно к ножкам процессора. Одна плата ведь у программиста есть всегда. Ну и пусть JTAG-разъём на проводах болтается!

Да, действительно все описано!
Спасибо большое, буду разбираться!
Go to the top of the page
 
+Quote Post
sensor_ua
сообщение Mar 13 2008, 13:07
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 266
Регистрация: 22-04-05
Из: Киев
Пользователь №: 4 387



Вообще-то такое уже делалось
http://home.telkomsa.net/antera/
http://spijtag.com/ru/taxonomy_menu/22/30/31
и чуть-чуть другое - RabbitISP
http://www-robotics.usc.edu/~ahoward/downl...isp-0.1-src.tgz

Кроме того существует тулза от Atmel для программирования через JTAG ICE -
Прикрепленные файлы
Прикрепленный файл  jtag_programmer.zip ( 503.61 килобайт ) Кол-во скачиваний: 127
 


--------------------
aka Vit
Go to the top of the page
 
+Quote Post
Igor26
сообщение Mar 14 2008, 07:31
Сообщение #8


Знающий
****

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



Цитата
Я напротив предусматриваю JTAG разъем на всех устройствах.
Занимает не так уж и много места на плате - всего 6 пинов (TDO, TDI, TMS, TCK, Vcc, GND).
В конечных устройствах просто не запаиваются разъемы.

Болтающиеся на МГФе конструкции - ненадежные (даже для программиста) ;>

Если жесткие требования по габаритам, тогда ставить JTAG-разъём не пойдет. Вот на такие девайсы разъем на МГТФе - самое оно. Ну отвалился провод раз в месяц, ну подпаял его на место, делов то! Опять же, если в конечном устройстве используются все каналы АЦП, то JTAG работать не будет. Но это легко обходится.
А вообще JTAG вещь часто просто не заменимая. И при отладке программы, и при ремонте сложного устройства. Лично я не ставлю этот разъем только в случае озвученном выше(габариты), в сложных устройствах ставлю ВСЕГДА.
Go to the top of the page
 
+Quote Post
GDI
сообщение Mar 14 2008, 11:49
Сообщение #9


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Внесу свое имхо... заливать прошивку можно и через бутлоадер, т.е. через любой(!) интерфейс. на avrfreaks.net я встречал 1-wire бутлоадер, т.е. для него нужно вообще всего 2 провода, там была и программа для ПК. Т.е. можно оставить разъем JTAG и заливать через него программу при производстве и для отладки, а обновлять прошивку через бутлоадер.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
Polaris
сообщение Mar 17 2008, 16:03
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 266
Регистрация: 8-12-05
Пользователь №: 11 964



Цитата(GDI @ Mar 14 2008, 13:49) *
Внесу свое имхо... заливать прошивку можно и через бутлоадер, т.е. через любой(!) интерфейс. на avrfreaks.net я встречал 1-wire бутлоадер, т.е. для него нужно вообще всего 2 провода, там была и программа для ПК. Т.е. можно оставить разъем JTAG и заливать через него программу при производстве и для отладки, а обновлять прошивку через бутлоадер.

А каким образом в изначально девственно чистом кристалле материализуется бутлоадер??

Цитата(sensor_ua @ Mar 13 2008, 15:07) *
Вообще-то такое уже делалось
http://home.telkomsa.net/antera/
http://spijtag.com/ru/taxonomy_menu/22/30/31
и чуть-чуть другое - RabbitISP
http://www-robotics.usc.edu/~ahoward/downl...isp-0.1-src.tgz

Кроме того существует тулза от Atmel для программирования через JTAG ICE -

Спасибо за ссылки!
Через JTAG ICE рассматривать буду в последнюю очередь по указанном выше причинам...
Go to the top of the page
 
+Quote Post
GDI
сообщение Mar 18 2008, 07:17
Сообщение #11


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Цитата
А каким образом в изначально девственно чистом кристалле материализуется бутлоадер??


Цитата
Т.е. можно оставить разъем JTAG и заливать через него программу при производстве


Внимательнее читать надо... а смысл всего мною ранее написанного сводится к тому, что не надо реализовывать отдельно программу и прошивку другого контроллера для того чтобы прошивать целевую систему используя JTAG, для этого придумали бутлоадеры. Т.е. чтобы
Цитата
шить не только с компьютера, но и в тестирующем устройстве, которое само сделано на AVR, в нем хранится актуальная прошивка, которая и загружается в контролируемое изделие
вам нужен бутлоадер исходники которых открыты и в великом множестве лежат на просторах интернет.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
Polaris
сообщение Mar 18 2008, 08:12
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 266
Регистрация: 8-12-05
Пользователь №: 11 964



Цитата(GDI @ Mar 18 2008, 09:17) *
Внимательнее читать надо... а смысл всего мною ранее написанного сводится к тому, что не надо реализовывать отдельно программу и прошивку другого контроллера для того чтобы прошивать целевую систему используя JTAG, для этого придумали бутлоадеры. Т.е. чтобы вам нужен бутлоадер исходники которых открыты и в великом множестве лежат на просторах интернет.

Это Вы внимательнее читайте. Откуда в чистом фабричном кристалле появится бутлоадер без использования сторонних средств программирования? Об этом и речь в теме. Как с минимальными затратами ресурсов загрузить в кристалл тот же Ваш бутлоадер. И исходники бутлоадеров мне не нужны, у меня свой есть, позволяет квалификация. Вас, извините, про Фому спросили, а Вы про Ерему.
Go to the top of the page
 
+Quote Post
GDI
сообщение Mar 18 2008, 08:40
Сообщение #13


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



На то и форум, чтобы предлагать и другие пути решения проблем, т.е. говорить и "про Ерёму"... smile.gif


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
Polaris
сообщение Mar 18 2008, 09:13
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 266
Регистрация: 8-12-05
Пользователь №: 11 964



Цитата(GDI @ Mar 18 2008, 10:40) *
На то и форум, чтобы предлагать и другие пути решения проблем, т.е. говорить и "про Ерёму"... smile.gif

Сорри, что-то я нервный с утра smile.gif Но вообще мне именно по голому кристаллу решение интересно. Так, чтобы и отлаживать, и писать можно было. А то плата может с два спичечных коробка быть, и требовать два немелких разъема
Go to the top of the page
 
+Quote Post
GDI
сообщение Mar 18 2008, 09:47
Сообщение #15


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



У нас видал подобную плату, как раз с 2 коробка, так там стоит для программирования какой то мелкий разъем на 10 контактов с ключем, но размером как 4 пина обычного IDC, модель разъема к сожалению подсказать не могу, т.к. у меня нет доступа к документации на плату.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post

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

 


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


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