|
|
  |
Программатор RS232, своими руками |
|
|
|
Dec 7 2005, 09:14
|

Частый гость
 
Группа: Свой
Сообщений: 157
Регистрация: 14-11-04
Из: Санкт-Петербург
Пользователь №: 1 125

|
Цитата(muravei @ Dec 7 2005, 10:45)  [Для новичка - АвРеал! Хи...  А для профи - AVR910,STK500, AVRISP и пр., пр. А, например, AVRDUDE куда отнесете? Он ведь все эти железяки видит и понимает Так за что боремся? Народ достаточно крут, что STK200/300 & AvReal уже не устраивает, но недостаточно крут, чтобы купить STK500 или AVRISP (или что там сейчас мощнее)??? [ничего личного] Просто не совсем понятна цель этих мнээ....экзерсайсов... Что на выходе должно получиться? З.Ы. Что касаемо параллельного программатора - http://elm-chan.org/works/avrx/report_e.html - это очень утяжеленный вариант?
--------------------
WBR, ROC.
|
|
|
|
|
Jan 13 2006, 13:53
|
Участник

Группа: Участник
Сообщений: 40
Регистрация: 24-06-05
Пользователь №: 6 281

|
Столько обсуждать ... а где результат? Похоже на пдсознательно спланированную битву теоретиков ....
|
|
|
|
|
Jan 30 2006, 17:13
|

Местный
  
Группа: Свой
Сообщений: 396
Регистрация: 22-10-04
Из: Воронеж
Пользователь №: 962

|
Цитата Да не будет результата!!! Тема ИЗНАЧАЛЬНО мертворожденная. У меня между прочим есть результаты и девайс рано или поздно оформлю. Между прочим, память программ и память данных ATmega16 я уже программировал. А для бит конфигурации ещё не добраля потому, что нужно оживлять графический интерфейс для них в GTKmm (т.е. разбираться с классами графической библиотеки, на что требуется время.) Сразу ещё хочу ввести поддержку I2C и SPI - интерфейсов (опять же всё дело в GUI). Так что, возможно весной что-то вывешу. Торопиться некуда: мою идеологию не поддержали...
--------------------
всё можно наладить, если достаточно долго вертеть в руках /Законы Мерфи/
|
|
|
|
|
Jan 30 2006, 19:11
|

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

|
Цитата(Yra @ Jan 30 2006, 19:13)  Цитата Да не будет результата!!! Тема ИЗНАЧАЛЬНО мертворожденная. У меня между прочим есть результаты и девайс рано или поздно оформлю. Между прочим, память программ и память данных ATmega16 я уже программировал. А для бит конфигурации ещё не добраля потому, что нужно оживлять графический интерфейс для них в GTKmm (т.е. разбираться с классами графической библиотеки, на что требуется время.) Сразу ещё хочу ввести поддержку I2C и SPI - интерфейсов (опять же всё дело в GUI). Так что, возможно весной что-то вывешу. Торопиться некуда: мою идеологию не поддержали... Зачем изобретать то, что уже давно есть и поддерживается самим Atmel'ом? http://gandalf.arubi.uni-kl.de/avr_project...tool/index.htmlпроект совмещающий JTAGICE и AVRISP на одной плате. Если Вам просто интересно сделать именно свой программатор, то посоветую предельно упростить аппаратную часть устройства, вплоть до того чтобы протокол общения со стороны компьютера сводился к паре команд например R-чтение, W-запись, и передаче в Hex формате тех данных которые надо выдать через ISP или JTAG. Далее просто создать базу известных MK с возможность произвольного ее нарашивания и возложить всю основную часть работы на ПО программатора, который
|
|
|
|
|
Jan 30 2006, 19:57
|

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

|
Цитата(Yra @ Jan 30 2006, 19:13)  Цитата Да не будет результата!!! Тема ИЗНАЧАЛЬНО мертворожденная. У меня между прочим есть результаты и девайс рано или поздно оформлю. Между прочим, память программ и память данных ATmega16 я уже программировал. А для бит конфигурации ещё не добраля потому, что нужно оживлять графический интерфейс для них в GTKmm (т.е. разбираться с классами графической библиотеки, на что требуется время.) Сразу ещё хочу ввести поддержку I2C и SPI - интерфейсов (опять же всё дело в GUI). Так что, возможно весной что-то вывешу. Торопиться некуда: мою идеологию не поддержали... Зачем изобретать то, что уже давно есть и поддерживается самим Atmel'ом? http://gandalf.arubi.uni-kl.de/avr_project...tool/index.htmlпроект совмещающий JTAGICE и AVRISP на одной плате. Если Вам просто интересно сделать именно свой программатор, то посоветую предельно упростить аппаратную часть устройства, вплоть до того чтобы протокол общения со стороны компьютера сводился к паре команд например R-чтение, W-запись, и передаче в Hex формате тех данных, которые надо выдать через ISP или JTAG. Далее, просто создать базу известных MK с возможностью произвольного ее нарашивания и возложить всю основную часть работы на ПО программатора, которое будет выполняться на компьютере. В присоединенных картинках мой вариант, GUI программатора и редактора базы. Само же устроство получилось по схеме почти идентичным с AVRProg, MAX+AT90S2313.
Эскизы прикрепленных изображений
|
|
|
|
|
Jan 31 2006, 20:16
|

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

|
Цитата(Yra @ Jan 31 2006, 19:41)  И почему-бы не сделать поддержку мастеров для SPI и I2C - устройств. Почему- бы не попытаться расширить функции программатора до программирования Cygnal- процессоров через JTAG (благо силикон- лаб распространяет программу для программирования своих процов в исходных кодах опятьже под консоль). Между прочим PIC - процессоры тоже неплохая вещь. Наздоровье, я ведь не пытаюсь запретить Вам делать то, что Вам интересно. электрически названные Вами МК и МП имеют если не одинаковый, то очень схожий набор сигнальных линий. Поэтому еще раз обращаю Ваше внимание на то, что устроство программатора должно быть по возможности максимально "тупым" и прозрачным для ПО, исполняемого на ПК. Цитата Между прочим процы от разных фирм- производителей трудновато подвести под одну гребёнку т.к. разные среды разработки, разный формат выходных файлов. Неправда, практически все известные мне среды разработки позволяют генерировать bin или hex форматы. Так что со стороны сред разработки проблем с совместимостью нет. Цитата Насчёт предельного упрощения аппаратной части устройства: PonyProg : ни путёвого источника программирующих напряжений, ни понятия о таймингах временных диаграмм. PonyProg это подобие программатора, да и вообще все, что через LPT порт - от лукавого. Говоря о пределно простой аппаратной части, я имел ввиду немного не это. Я имел ввиду простоту и универсальность протокола общения с устройством программатора. Поясню. Аппаратная часть должна обеспечивать поддержку интерфесов JTAG, ISP, ICSP, I2C и других, которые Вы хотите в него заложить, на физическом и канальном уровне, т.е. - электрическую совместимость и сигнальную совместимость (задержки между сигналами и т.п.). Со стороны же связи с компьютером должен быть предельно простой и универсальный протокол. К примеру, если на устройство подать команду $R300000CR то соответственно по выбранному интерфейсу программатор пошлет байты 0x30, 0x00, 0x00 и прочитает байт ответа. Байт ответа потом перешлет на компьютер. А уж что с этим байтом будет делать ПО программатора, это дело ПО. PS: лучше бы направили Ваши усилия на разработку отладчика способного работать по debugWire.
Сообщение отредактировал defunct - Jan 31 2006, 20:17
|
|
|
|
|
Feb 1 2006, 09:53
|

Шаман
     
Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221

|
Цитата(defunct @ Jan 31 2006, 22:16)  ...PS: лучше бы направили Ваши усилия на разработку отладчика способного работать по debugWire. Здравая мысль на мой взгляд, хоть и немного не в тему. А что касается УНИВЕРСАЛЬНОГО программатора, т. е. под если не под все, то, по крайней мере под большое количество контроллеров и интерфейсов, то у меня мнение следующее (и судя по ответам в этой и других ветках оно популярно): - набор специальных инструментов удобнее, проще, дешевле, надёжнее и т. д. и т. п., нежели одно универсальное; - всегда найдётся случай, когда универсальное средство его не перекрывает имея явную избыточность для других случаев, которые, возможно, никогда не наступят; - в случае поломки универсального инструмента вы лишаетесь ВСЕГО, а не части; - ... Простейшие примеры из жизни подтверждают моё мнение, хотя возможны и противоположные случаи.
|
|
|
|
|
Feb 1 2006, 11:14
|
Местный
  
Группа: Свой
Сообщений: 266
Регистрация: 8-12-05
Пользователь №: 11 964

|
Цитата(Alexey_N @ Jun 29 2005, 17:57)  Цитата(ReAl @ Jun 29 2005, 19:30) Я так понял, там тот же STK500 протокол? Я морально готов взяться за поддержку STK500, только надо платку сделать какую-то из "засвеченных" (одного из двух немцев  ) 4-й:http://www.matwei.de/eng/index.php?page1=elektronik&page2=usbisp -Опять немцы, но выглядит по внешнему виду вполне пристойно. Судя по фотке там вдалеке 8-я мега стоит. Короче, Вам выбирать, что из этого более-менее сойдет в качестве отправной точки. Думаю, что стоит поддерживать именно стк500, все-таки это стандарт, на него ориентируется куча софта, и это очень удобно во всех отношениях Меньше меги8 брать нет смысла, делал этот протокол, там нужен буфер в 256 байт, меньше его не сделать, команду вывели из поддержки Оставаться лучше именно на FT245, только если взять новый FT245R Но тогда возникает вопрос - а что делать-то, ведь проект уже есть  P.S. Нужна помощь с немецким - спрашивайте, переведу без проблем
|
|
|
|
|
Feb 1 2006, 13:28
|

Участник

Группа: Участник
Сообщений: 24
Регистрация: 11-07-05
Из: Санкт-Петербург
Пользователь №: 6 698

|
Цитата(Polaris @ Feb 1 2006, 14:14)  Оставаться лучше именно на FT245, только если взять новый FT245R Но тогда возникает вопрос - а что делать-то, ведь проект уже есть  P.S. Нужна помощь с немецким - спрашивайте, переведу без проблем Как ни есть в точку  . Фактически нужен выносной LPT порт (или его обрубок), т.е без всякого нижнего софта. А веревками должен дергать верхний софт с компа, где и будет зашит весь алгоритм программирования всех девайсов, которые хотелось бы поддержать и для добавление новых девайсов нужно будет обновлять только верхнее ПО.
|
|
|
|
|
Feb 1 2006, 15:47
|
Местный
  
Группа: Свой
Сообщений: 266
Регистрация: 8-12-05
Пользователь №: 11 964

|
Цитата(serg28serg @ Feb 1 2006, 15:28)  Как ни есть в точку  . Фактически нужен выносной LPT порт (или его обрубок), т.е без всякого нижнего софта. А веревками должен дергать верхний софт с компа, где и будет зашит весь алгоритм программирования всех девайсов, которые хотелось бы поддержать и для добавление новых девайсов нужно будет обновлять только верхнее ПО. Да нет, в таком софте особого смысла нет, если только не написать универсальный драйвер виртуального порта, который будет отлавливать обращения всяких "родных" систем разработки вроде AVRStudio, MPLAB IDE и того же IAR и выдавать себя за "родной" же программатор. Вот тогда будет вам и СТК500, и джитаг однопроводной, и вообще все что угодно
|
|
|
|
|
Feb 1 2006, 17:05
|

Местный
  
Группа: Свой
Сообщений: 396
Регистрация: 22-10-04
Из: Воронеж
Пользователь №: 962

|
Цитата Цитата Между прочим процы от разных фирм- производителей трудновато подвести под одну гребёнку т.к. разные среды разработки, разный формат выходных файлов. Неправда, практически все известные мне среды разработки позволяют генерировать bin или hex форматы. Так что со стороны сред разработки проблем с совместимостью нет. Для примера: результатом работы AVRstudio является *.hex - файл для памяти программ, *.eep (тотже хекс) - для памяти EEPROM и какой- то ещё один для бит конфигурации. MPLAB - гененрит один *.hex - файл (по крайней мере для PIC16), где зашиты по определённым адресам и сегмент кода и EEPROM и биты конфигурвции. Мелочь - а неприятно.
Сообщение отредактировал Yra - Feb 1 2006, 17:06
--------------------
всё можно наладить, если достаточно долго вертеть в руках /Законы Мерфи/
|
|
|
|
|
Feb 2 2006, 04:21
|

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

|
Цитата(Yra @ Feb 1 2006, 19:05)  Для примера: результатом работы AVRstudio является *.hex - файл для памяти программ, *.eep (тотже хекс) - для памяти EEPROM и какой- то ещё один для бит конфигурации. MPLAB - гененрит один *.hex - файл (по крайней мере для PIC16), где зашиты по определённым адресам и сегмент кода и EEPROM и биты конфигурвции. Мелочь - а неприятно. Насколько мне изветно, AVR-Studio не генерирует никакого файла для "бит конфигурации" по причине полного отсутствия в этом надобности. Не знаю как Вы, но Locks и Fuses я предпочитаю устанавливать самостоятельно, поэтому даже если бы что-то там и генерировалось, то его можно было бы просто игнорировать. MPLAB генерирует стандартный hex, и он по принципу "как есть" заливается в PIC, PIC сам "разруливает" по адресам, что и куда класть (в FLASH/ROM или в EEPROM), иначе можны было бы запутаться с его организацией памяти (14-бит на слово). Поэтому не вижу никаких неприятностей.
Сообщение отредактировал defunct - Feb 2 2006, 04:25
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|