Перейти к содержанию
    

Альтернатива AvrUsb500 by Petka

Возможно кому-то будит интересно:

Скоростной AVR USB программатор на FT232RL без вспомогательного контроллера:

http://easyelectronics.ru/skorostnoj-avr-u...a.html#more-268

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здесь некоторое продолжение: http://reddylab.eu/rclab/

Да, такой способ и применяется в "AvrUsb500 by Petka" для первоначальной заливки контроллера. Однако этот процесс оооочень медленный и совсем несовместимый с stk500.

ИМХО более перспективны "программаторы" не на FT232RL, а на FT2232. (смотрите сайт AvReal).

Изменено пользователем IgorKossak
Бездумное цитирование

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здесь некоторое продолжение: http://reddylab.eu/rclab/
Да, кстати, спасибо - взял в субботу с Вашего сайта пропатченный avrdude, потыкался осциллографом и успокоился :biggrin:

Я уже давно ("очень давно") ткнулся в FT232RL, но мне не понравилась рваная форма SCK - (полу)-периоды скачут по длительности в разы, если не на порядок. Не паузы в пачках, что было бы логично при довольно высокой частоте sync bitbang (надо же и когда-то отправлять данные назад в PC), а чудненький хаос, иногда выстраивающийся в что-то в духе

_-_-_-______-_-----_-_----------___________-_-_----___

Поскольку непонятно, не бывают ли они при такой каше изредка короче, что будет приводить к сбою программирования, я не рискнул добавлять поддержку.

Времени мало, ещё пару раз с интервалом в несколько месяцев ткнулся, перепроверил свою тестовую программу, опять потыкался - результут тот же.

Ну а тут взял готовый avrdude, посмотрел осфиллографом - да та же самая каша :laughing:

Так что чёрт с ней, с кашей. Зря я боялся.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

взял в субботу с Вашего сайта пропатченный avrdude.

Добрый день, очень извиняюсь,но это не мой сайт. Просто мне этот проект попался в сети и собственно хотелось услышать мнение зубров программатора строения :)

 

зы. Сам пока пользуюсь Вашим, спасибо за разработку.

 

Однако этот процесс оооочень медленный и совсем несовместимый с stk500.

 

Автор на своём сайте пишет:

В: Скорость загрузки через него как ?

О: Аплоад на скорости 115200бс - 2кБ за 3 сек, Эксперементировалось на МК ATtiny2313 кварц 4мГц

===============================

 

Вроде не сильно медленно.

Изменено пользователем UserM

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...

Вроде не сильно медленно.

Тогда снимаю возражение.

Остаётся вопрос по надёжности и совместимости.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, такой способ и применяется в "AvrUsb500 by Petka" для первоначальной заливки контроллера. Однако этот процесс оооочень медленный и совсем несовместимый с stk500.

ИМХО более перспективны "программаторы" не на FT232RL, а на FT2232. (смотрите сайт AvReal).

Нет-нет, это совсем другой метод.

Там - асинхронный ногодрыг, я его попробовал на FT245 году так в 2002-2003 и плюнул - слишком медленно.

Нет, я ещё подёргался, попробовал из вала поиском выбирать свой "служебный" сигнал синхронизации, передаваемый перемычкой из выходной ноги на входную, но постоянно срывалась синхронизация, так как в этом режиме если включить ввод "валом", то постоянно переполнялись буфера, где-то терялись байты и т.п. А в режиме только вывода с опросом текщего состояния входов каждый бит занимал две транзакции на USB (вывод двух байтов с MOSI и SCK=0, SCK=1 - одна, ввод MISO - вторая).

 

FT232R/FT245R имеют тот же режим synchronous bit-bang, который есть и у FT2232C+, при нём данные вводятся только вместе с выводом и можно обмениваться длинными пакетами.

Я попробовал почти год назад, сразу после того, как добавил FT2232C, но нарвался на странное поведение, о котором написал тут выше. Ещё тогда я оценил достижимую скорость приблизительно в половину нормального LPT, я на сахаре об этом писал.

 

Режим будет сделан и будет добавлен также в FT2232, как вспомогательный режим для случая, когда заказана генерация XTAL (-o0).

 

Только сейчас я застрял на драйверах для win/x64, для win7 и т.п. - см. тему avreal.

 

Добрый день, очень извиняюсь,но это не мой сайт. Просто мне этот проект попался в сети и собственно хотелось услышать мнение зубров программатора строения :)
"Извините, обознался", не знаю, с чего я решил :-)

Ну я на радиокоте хозяина сайта поблагодарю (хотел, но, как в анекдоте - "уже заклеил конверт", а тут увидел тему и вспомнил).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Привет всем!

Кто-нибудь собрал девайс? Есть баги? Я один вроде нашел...

 

ЗЫ: Хозяин сайта "радиокот" тут не причём. Я разместил схемы на разных форумах, а мой ник совпал по смыслу с "радиокотом")))))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну я на радиокоте хозяина сайта поблагодарю

ЗЫ: Хозяин сайта "радиокот" тут не причём. Я разместил схемы на разных форумах, а мой ник совпал по смыслу с "радиокотом")))))
_На_радиокоте_ (т.е. на том форуме) поблагодарю _хозяина_сайта_ (на котором avrdude взял)

Что-то не так?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну читаю я не внимательно, понимаю плохо. Но вопрос не в этом. Интересуют предложения и замечания.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендую не большое дополнение к схеме!!! - Для уменьшения паразитных помех на лини приёма UART (COM Port) можно подключить резистор сопротивлением 10К между массой и контактом №15 микросхемы U2 (74HC241). Проверяется просто, включаем любую терминальную программу, выбираем и открываем КОМ-Порт USBBit'a, и трогаем контакты ISP разъёма пальцем. Без этого резистора в порт будет приходить "мусор".

http://www.reddylab.eu/rclab/#ahtung3

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Висячие входа КМОП-микросхем вообще являются дурным тоном. Только в данном случае, учитывая что это сигнал UART'а, тянуть желательно к питанию.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, кстати, спасибо - взял в субботу с Вашего сайта пропатченный avrdude, потыкался осциллографом и успокоился :biggrin:

Я уже давно ("очень давно") ткнулся в FT232RL, но мне не понравилась рваная форма SCK - (полу)-периоды скачут по длительности в разы, если не на порядок. Не паузы в пачках, что было бы логично при довольно высокой частоте sync bitbang (надо же и когда-то отправлять данные назад в PC), а чудненький хаос, иногда выстраивающийся в что-то в духе

_-_-_-______-_-----_-_----------___________-_-_----___

Поскольку непонятно, не бывают ли они при такой каше изредка короче, что будет приводить к сбою программирования, я не рискнул добавлять поддержку.

Времени мало, ещё пару раз с интервалом в несколько месяцев ткнулся, перепроверил свою тестовую программу, опять потыкался - результут тот же.

Ну а тут взял готовый avrdude, посмотрел осфиллографом - да та же самая каша :laughing:

Так что чёрт с ней, с кашей. Зря я боялся.

 

Недавно собрал себе программатор USBBit и тоже обнаружил эту проблему. Хочется попытаться её решить или хотя бы точно понять причины и границы надёжной работы.

Хочу узнать у вас, как у человека, который разрабатывал программу для управления этой FT232R в режиме Sync Bitbang.

1. Верно ли я понял, что рваная форма SCK присуща самой связке драйвер FTDI D2xx - FT232R и вообще не корректируется средствами вызывающей программы (Будь это AVReal, avrdude или элюбая другая)?

2. Чем это может быть вызвано? И кстати, по-моему это противоречит самой идее битбанга, когда мы можем ОДНОЗНАЧНО управлять заданной ножкой порта, и наша задача только успевать её дёргать. Другими словами получается ситуация, когда выводы порта в течение некоторого времени неизбежно выдают мусор, но очень немногие протоколы, думаю выдержат такие сбои в работе. И следовательно, битбанг в FTDI 232r реализовать не смогли (тогда как же они это проморгали?).

3. Почему такая проблема возникает только (а может и не только???) на SCK? За счёт чего тогда этот программатор всё-таки работает?

4. Пробовали ли вы использовать libusb, которая является альтернативой FTDI D2xx?

5. И главное, как надёжно определить скорость программатора для заданной частоты МК (кроме эксперимента)), если в SCK проскакивают эти очень короткие периоды?

6. Правильно я думаю, что именно из-за этой особенности вы не стали поддерживать 232r в AVReal-е? Если удастся найти решение, добавите ли вы поддержку USBbita и прочих программаторов на FT232R?

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Про Synchro Bitbang - у FTDI есть особенность в этом режиме, почему то иногда возникают паузы (причем довольно часто) причем не важно в одном пакете по USB данные ушли или нет. Поэтому протокол чуствительный к задержкам в этом режиме не реализовать! Когда только появилась RL серия хотел сделать Silabs C2, но из-за этой особенности не получалось, т.к. в данном интерфейсе клоки объеденены с ресетом.

 

Но вот протоколы типа SPI прекрасно работают! И AVR программируется и ARM SWD работает и JTAG именно на FT232RL в режиме синхро битанг, т.к. все происходит по фронтам клоков и не должно быть чувствительно к их неравномерности. По край ней мере у меня никаких проблем не возникало.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...