Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Программатор RS232
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Страницы: 1, 2, 3, 4
Max_Fly
трое это уже сила. Если хотите двинуться - давайте ближе к схеме. smile.gif
1) для согласования уровней могу предложить схемное решение заимствованное от кем-то разобранного байтбластера2. - 1 каскад согласования изготавливается на 4-х транзисторах. в микрокапе симулируется и работает пристойно до 1.8 вольта точно. (Симулировал с 5-и вольт) правда 3-е состояние отпадает. симулировал 3-х состояние с полевиком мелким из биакома. всем хорошо - только диод у него обратный - если лапу в 0-е оставишь - через диодик утекает - хорошее 3-е состояние получается если лапы вверх и полевик закрыть. (питание таргета не будет типа выше 5-и вольт - диодик злополучный заперт) НО! на 1 линию - это 5 транзисторов + несколко резисторов и кондерсатор.
2) АВРину укладывать под это дело с интерфейсом внешней памяти как я понимаю? (чтобы 485 удобнее было стыковать)
3) в чём рисовать схему чтобы всем удобно смотреть было? микрокап у народа есть чтобы симуляции показать?
4) при параллельном программировании - сколько там линий надо вывести?
потому как если согласовывать уровни по честному с третьим состоянием и всякое такое - то это ж 18 линий (из даташита что передо мной) и некисло - согласитесь.
5) за и против таких провокаций
а) питать от USB только интерфейс а остальное отвязать
б) питать от USB интерфейс и процессор а отвязать целевое устройство
в) процессор программатора питать от целевого устройства (сразу и защита от чудиков пытающихся прошить обесточенный прибор) а интерфейс от USB.
Max_Fly
Цитата(ROC @ Jul 1 2005, 00:04)
Цитата(Alexey_N @ Jun 30 2005, 21:07)
[skipped нафиг]
ЗЫ. Интересно, а что мы дальше так втроем и будем этот вопрос перетирать  huh.gif ?
*

А что вы хотели? Человек спросил про простой RS232 программатор - ну и куда вас унесло?? biggrin.gif biggrin.gif biggrin.gif
*


простых схем как грязи. только делай. тот же 910 апнот. схема уж куда проще. основная фича вышеперечисленного - это природная USBшность, природная многоплатформенность, потенциальная возможность параллельного программирования, возможность родным софтом атмеля записать прошивку прямо из среды разработки и потом прошить устройство будучи в командировке за "..." сколько километров от компа своего родного. Главное что сохраняется прозрачность для родного софта и никому не придётся лепить горбатого к стенке - да и конечному юзеру проще. открытое API позволит желающим сделать под себя что кому нравится (если не нравится родная кнопка в той же авр студии) или если ОС не винда cool.gif
ROC
Цитата(Max_Fly @ Jul 1 2005, 01:22)
Цитата(ROC @ Jul 1 2005, 00:04)
Цитата(Alexey_N @ Jun 30 2005, 21:07)
[skipped нафиг]
ЗЫ. Интересно, а что мы дальше так втроем и будем этот вопрос перетирать  huh.gif ?
*

А что вы хотели? Человек спросил про простой RS232 программатор - ну и куда вас унесло?? biggrin.gif biggrin.gif biggrin.gif
*


простых схем как грязи. только делай. тот же 910 апнот. схема уж куда проще. основная фича вышеперечисленного - это природная USBшность, природная многоплатформенность, потенциальная возможность параллельного программирования, возможность родным софтом атмеля записать прошивку прямо из среды разработки и потом прошить устройство будучи в командировке за "..." сколько километров от компа своего родного. Главное что сохраняется прозрачность для родного софта и никому не придётся лепить горбатого к стенке - да и конечному юзеру проще. открытое API позволит желающим сделать под себя что кому нравится (если не нравится родная кнопка в той же авр студии) или если ОС не винда cool.gif
*


Хех...
Вышеперечисленного чего? Проекта?
А прошить девайс в командировке можно и PalmAVR'ом biggrin.gif
Max_Fly
[/quote]
Хех...
Вышеперечисленного чего? Проекта?
А прошить девайс в командировке можно и PalmAVR'ом biggrin.gif
*

[/quote]
я бы назвал это пока что мечтаниями. smile.gif.

Ну а на счёт PalmAVR - если вас это устраивает - и слава богу! smile.gif. Только интересно мне как вы будете прошивать если чип убило ударом молнии и чистую микросхему перепаяли. Palm имеет только com порт на выходе, а значит требует наличие загрузчика в чипе. smile.gif.

Да, ещё одно похвальное стремлние - это лошадка скорой помощи. чипов убитых понипрогом не перечесть и с каждым днём их становится всё больше. параллельное программирование не нужно на каждый день но когда есть такое под рукой - всегда спокойнее.
ROC
Цитата(Max_Fly @ Jul 1 2005, 10:06)
Хех...
Вышеперечисленного чего? Проекта?
А прошить девайс в командировке можно и PalmAVR'ом  biggrin.gif
*

я бы назвал это пока что мечтаниями.  smile.gif.

Ну а на счёт PalmAVR - если вас это устраивает - и слава богу! smile.gif. Только интересно мне как вы будете прошивать если чип убило ударом молнии и чистую микросхему перепаяли. Palm имеет только com порт на выходе, а значит требует наличие загрузчика в чипе. smile.gif.
[skipped]
*


Перешивать? Легко! Пальм с RS232 - это собственно софт для программатора. А железо:
'=============
Supported programmers:
· AVR061 protocol (e.g., STK500 and AVR ISP)
· AVR109 protocol (e.g., orig. AVR910, enhanced AVR910, and AVR Butterfly)
'=============
И куда же здесь загрузчик пихать? Главное, зачем? blink.gif
А собственно AVR910 - это девайсик размером со спичечный коробок (на True Hole элементах, не SMD), у меня собран в коробочке от телефонной розетки.

Ладно, ухожу - все равно вся эта тема максимум через пару недель заглохнет biggrin.gif
Alexey_N
Цитата(Max_Fly @ Jul 1 2005, 01:16)
1) для согласования уровней могу предложить схемное решение заимствованное от кем-то разобранного байтбластера2. - 1 каскад согласования изготавливается на 4-х транзисторах. в микрокапе симулируется и работает пристойно до 1.8 вольта точно. (Симулировал с 5-и вольт) правда 3-е состояние отпадает. симулировал 3-х состояние с полевиком мелким из биакома. всем хорошо - только диод у него обратный - если лапу в 0-е оставишь - через диодик утекает - хорошее 3-е состояние получается если лапы вверх и полевик закрыть. (питание таргета не будет типа выше 5-и вольт - диодик злополучный заперт) НО! на 1 линию - это 5 транзисторов + несколко резисторов и кондерсатор.
*


Для согласования уровней, (если уж очень надо на 1,8В), можем взять камешек типа мега 168V. Тогда у нас диапазон питающих будет от 1,8 до 5,5В. Сотворить такой регулятор напряжений, программируемый от самой этой же меги - думаю несложно. Хотя я и не испытывал пока нужды программировать ничего 1.8-волтовое, но для универсальности - нехай будет. Единственно, что скорость кварца придется поставить 8МГц, и соответственно, скорость интерфейса упадет до 500кБод.

Цитата(Max_Fly @ Jul 1 2005, 01:16)
2) АВРину укладывать под это дело с интерфейсом внешней памяти как я понимаю? (чтобы 485 удобнее было стыковать)
3) в чём рисовать схему чтобы всем удобно смотреть было? микрокап у народа есть чтобы симуляции показать?
4) при параллельном программировании - сколько там линий надо вывести?
      потому как если согласовывать уровни по честному с третьим состоянием и всякое такое - то это ж 18 линий (из даташита что передо мной) и некисло - согласитесь.
5) за и против таких провокаций
    а) питать от USB только интерфейс а остальное отвязать
    б) питать от USB интерфейс и процессор а отвязать целевое устройство
    в) процессор программатора питать от целевого устройства (сразу и защита от чудиков пытающихся прошить обесточенный прибор) а интерфейс от USB.
*

2.Торможу. Не понял, причем здесь интерфейс внешней памяти и 485-й??
3.Мне пофиг, чем хотите. Вообще-то я пигадом рисую и ничего без большой нужды не симулирую...
4.Ага, понял. Можно взять мегу пожирнее, ну например 164-ю, у ней ног уж точно хватитsmile.gif.
5. = а!
По п."в" - а вдруг хватит мощи закормить? Это и неплохо было б в некоторых случаях.

ЗЫ. Нас уже четверо!!! smile.gif (Жаль ROC отвалил sad.gif )
ROC
Цитата(Alexey_N @ Jul 1 2005, 15:24)
[skipped нафиг]
ЗЫ. Нас уже четверо!!!  smile.gif  (Жаль ROC отвалил sad.gif )
*


Никуда я не отвалил. Здесь я. biggrin.gif
Просто данная постановка вопроса мне не совсем интересна - назачем городить что-то новое, если меня более чем устаивают уже имеющиеся AVR910 & STK200/300? Тем более что для меня однокристаллки - не более чем хобби.
Max_Fly
Цитата(Alexey_N @ Jul 1 2005, 14:24)
Цитата(Max_Fly @ Jul 1 2005, 01:16)
1) для согласования уровней могу предложить схемное решение заимствованное от кем-то разобранного байтбластера2. - 1 каскад согласования изготавливается на 4-х транзисторах. в микрокапе симулируется и работает пристойно до 1.8 вольта точно. (Симулировал с 5-и вольт) правда 3-е состояние отпадает. симулировал 3-х состояние с полевиком мелким из биакома. всем хорошо - только диод у него обратный - если лапу в 0-е оставишь - через диодик утекает - хорошее 3-е состояние получается если лапы вверх и полевик закрыть. (питание таргета не будет типа выше 5-и вольт - диодик злополучный заперт) НО! на 1 линию - это 5 транзисторов + несколко резисторов и кондерсатор.
*


Для согласования уровней, (если уж очень надо на 1,8В), можем взять камешек типа мега 168V. Тогда у нас диапазон питающих будет от 1,8 до 5,5В. Сотворить такой регулятор напряжений, программируемый от самой этой же меги - думаю несложно. Хотя я и не испытывал пока нужды программировать ничего 1.8-волтовое, но для универсальности - нехай будет. Единственно, что скорость кварца придется поставить 8МГц, и соответственно, скорость интерфейса упадет до 500кБод.

Цитата(Max_Fly @ Jul 1 2005, 01:16)
2) АВРину укладывать под это дело с интерфейсом внешней памяти как я понимаю? (чтобы 485 удобнее было стыковать)
3) в чём рисовать схему чтобы всем удобно смотреть было? микрокап у народа есть чтобы симуляции показать?
4) при параллельном программировании - сколько там линий надо вывести?
      потому как если согласовывать уровни по честному с третьим состоянием и всякое такое - то это ж 18 линий (из даташита что передо мной) и некисло - согласитесь.
5) за и против таких провокаций
    а) питать от USB только интерфейс а остальное отвязать
    б) питать от USB интерфейс и процессор а отвязать целевое устройство
    в) процессор программатора питать от целевого устройства (сразу и защита от чудиков пытающихся прошить обесточенный прибор) а интерфейс от USB.
*

2.Торможу. Не понял, причем здесь интерфейс внешней памяти и 485-й??
3.Мне пофиг, чем хотите. Вообще-то я пигадом рисую и ничего без большой нужды не симулирую...
4.Ага, понял. Можно взять мегу пожирнее, ну например 164-ю, у ней ног уж точно хватитsmile.gif.
5. = а!
По п."в" - а вдруг хватит мощи закормить? Это и неплохо было б в некоторых случаях.

ЗЫ. Нас уже четверо!!! smile.gif (Жаль ROC отвалил sad.gif )
*



итого! Если в питании процессора от целевого устройства народ не видит ничего пагубного и от usb питать только сам usb интерфейс, то задача с согласованием уровней упрощается до безобразия. А точнее просто исчезает.

485 я имел в виду ftdi485 за которую голосовал Александр.(которая с управлением потоком и буфером). Я так понял она с параллельным интерфейсом?

По поводу запитать целевое устройство - это можно перекинуть дс-дс от usb - но тут несколько вопросов сразу - если программирование в схеме - фиг угадаешь сколько напряжения подавать - итого ИМХО опасная фича. В отдельной каретке можно, но опять таки... лучше решить это конструктивно так чтобы вывести питание разъёмчиком, кому надо - на свой страх и риск.

Итого считаем - usb + параллельное программирование + spi +клок + i2c( + ОЗУ) + флешка для прошивок + 2-3 светодиода + лапа через ключ к питанию таргета на предмет подключено ли устройство. - сколько лап надо?

Если что забыл добавляйте (вычитайте) надо подбить предварительную сумму чтобы с чипом определиться smile.gif.
ReAl
Цитата(Alexey_N @ Jun 30 2005, 20:07)
Цитата(ReAl @ Jun 30 2005, 15:28)

Если будет стоять FT232, то какой-то стандартній софт возьмёт и поставит ей 115200. И даже если процессор в нашей коробочке угадает и тоже поставит столько - то будет малая скорость. Я не знаю, любой ли софт даст выставить скорости выше 115200. А с FT245 из любого софта будет идти обмен на максимальной частоте. Какая-нибуль студия и не узнает ничего.
*


Развязку мне делать представляется правильным!
Насчет "стандартного софта"... ну, не знаю, раз уж мы завели свой софт (программатор), так он всё и выставит, а если параллельно с ним кто-то ещё к этому самому СОМ-порту лезет, ну тогда конечно баг случится... ну дык это ж и при 245-й то же самое.
В общем, ежели уж очень хочется поставить 245-ю, предлагаю тогда воткнуть две меги, а уж между ними ставить оптроны... бред конечно.
*


По развязке - "да, пожалуй". Мне ни разу не было нужно, но раз этот вопрос постоянно возникает (включая варианты байт-бластера с 5-ю оптронами smile.gif), то оно нужно. И, как я уже писал, для FT232 достаточно одной ADUM1201 (кстати, по прикидкам - практически не дороже двух быстроходных оптронов). Не нужна развязка - паяй вместо неё 4 перемычки (прямо на её ноги: 1-8 ... 4-5).
А под стандартным софтом я имел ввиду AVR STUDIO, что там ещё бывает.
Тут 245-я и 232-я очень разные, AVR STUDIO не сможет запустить обмен на 245-ой на низкой скорости smile.gif
ReAl
Цитата(Alexey_N @ Jul 1 2005, 14:24)
Цитата(Max_Fly @ Jul 1 2005, 01:16)
1) для согласования уровней могу предложить схемное решение заимствованное от кем-то разобранного байтбластера2.


Для согласования уровней, (если уж очень надо на 1,8В), можем взять камешек типа мега 168V. Тогда у нас диапазон питающих будет от 1,8 до 5,5В. Сотворить такой регулятор напряжений, программируемый от самой этой же меги - думаю несложно. Хотя я и не испытывал пока нужды программировать ничего 1.8-волтовое, но для универсальности - нехай будет. Единственно, что скорость кварца придется поставить 8МГц, и соответственно, скорость интерфейса упадет до 500кБод.
*


По паспорту у mega168 при 1.8V всего 4 МГц. Так что как вариант - до 2.7В
работать от 8..10МГц (и тот же ADUM должен потянуть до этого уровня).
А для ещё меньше - надо что-то думать.
Или - если кому-то действительно такое надо - ну спаяет себе второй экземпляр с процессором с буквой V и 4МГц кварцем.
Yra
Для полного счастья программатору нужен регулируемый источник программируемого напряжения (чтобы поддерживать не только AVR в принципе).
Наведите на какой-нибудь доступныйНЕвМосковскомЧипИДипе ЦАП с последовательным доступом (по SPI, или по I2C, число ступенек 32-64, перекрываемый диапазон 0- 14 В).
Alexey_N
Цитата(Yra @ Jul 1 2005, 22:16)
Для полного счастья программатору нужен регулируемый источник программируемого напряжения (чтобы поддерживать не только AVR в принципе).
*

А зачем это нужно? (Я не против, я просто действительно не понимаю для чего это может пригодиться). Вот если б хотя б один примерчик.
Max_Fly
Цитата(Alexey_N @ Jul 1 2005, 22:48)
Цитата(Yra @ Jul 1 2005, 22:16)
Для полного счастья программатору нужен регулируемый источник программируемого напряжения (чтобы поддерживать не только AVR в принципе).
*

А зачем это нужно? (Я не против, я просто действительно не понимаю для чего это может пригодиться). Вот если б хотя б один примерчик.
*


человек явно хочет ещё и at89xxx программировать или на ПЗУ совковом пережигать wink.gif - на самом деле - не знаю насколько оно кому надо и востребовано.
Yra
Почитайте спецификации программирования PIC16 - там предусмотрен. Когда понадобится - не хотелось бы подкручивать каждый раз на глазок блок питания.
AndyBig
OFF: прошу прощения, с пятницы был отключен ADSL, не мог выйти в инет sad.gif
И вся последняя активность прошла мимо меня smile.gif

Мое мнение по существу...
Хорошо, давайте делать развязку. Тогда 245-ю использовать не получится, а жаль. С другой стороны, сколько я видел китайских USB-поделок (запущенных в серию) - развязку они там не ставят. И ведь все работает. Вообще, как мне уже не раз говорили при разработке устройств под серию - учись мыслить по-китайски, а не по советски smile.gif. Компромис между качеством и ценой должен больше склоняться в сторону цены.
По питанию: питать программатор от целевого устройства мне не нравится. Во-первых, в целевом устройстве мощность источника может быть не расчитана на дополнительную нагрузку, во-вторых, стабильность источника целевого устройства тоже может оставлять желать лучшего... По поводу защиты от дурака - программатор вообще не то устройство, которое может пользоваться любым и каждым. А от всех случайностей все равно не застрахуешься.
Расчитывать на 1.8-вольтовый целевой чип в общем случае не нужно. Как уже правильно заметили - желающие могут использовать низковольтную мегу. А вот выбор между 5 и 3,3 В нужно еще подумать как осуществить. Один из вариантов - переключать питание самаго программатора MOSFET-ами.

По схематике говорить пока рано - еще не договорились по функциональности smile.gif)).

Вот и давайте в первую очередь определимся по двум позициям:
1. развязка с USB обязательна?
2. Программирование 5- и 3,3-вольтовых целевых чипов - как согласовать уровни?
ReAl
Цитата(AndyBig @ Jul 4 2005, 10:58)
По питанию: питать программатор от целевого устройства мне не нравится. Во-первых, в целевом устройстве мощность источника может быть не расчитана на дополнительную нагрузку

Да, вообще говоря больше шинника лучше не питать.

Цитата(AndyBig @ Jul 4 2005, 10:58)
Вот и давайте в первую очередь определимся по двум позициям:
1. развязка с USB обязательна?
2. Программирование 5- и 3,3-вольтовых целевых чипов - как согласовать уровни?
*

1. Я тоже не уверен в необходимости гальваноразвязки.
Зачем? Перешивать процессор, висящий на фазе?
Но многие почему-то очень хотят, и если это дастся малой кровью, то почему бы и не сделать.
Хотя тут и так можно сказать - FT245 и FT232 со стороны компа почти неотличимы, со стороны программатора надо аккуртано писать и тогда можно начать с FT245 а потом и FT232 версию добавить :-)

2. Процессор программатора запитать от 5В (и влупить 14-16МГц). Далее:
а) Поставить между ним и устройством 74VHC244, запитав её от программируемого устройства. Для 3..5В должно быть нормально. VHC244 позволяет подавать на входы больше питания.
б) Поставить нечто ByteBlaster-II-подобное. Тогда и до 1.8В будет работать.
Я считаю, что для уменьшения размера допустимо на печатку ставить сдвоенные транзисторы в 363-ем корпусе - вещь достаточно массовая, чтобы везде нашлась достаточная компашка для заказа плат и на ЛУТ рассчитывать не надо.

Хотя б) противнее, поэтому на мой взгляд стоит поставить VHC244, а для шлейфа сделать следующее:
Поставить штыри 2x8 (а то и 2x10), в которых штыри 11 и 12 не паять. Тогда можно надеть как 10-жильный шлейф, так и 16-жильный. На доп. 4 контакта вывести внетреннее питание программатора и ещё пару сигналов. Тгда для up to 1.8V можно будет отдельно кому надо сделать переходничок "а-ля BB-II" (запитав VHC244 пробросом через этот переходничок). Кроме того можно будет
делать разные довески типа hiV-программатора для всяких tiny15 (преобразователь 5-12 сделать на довеске). Конечно, неплохо сразу на основной всё сделать, чтобы была одна плата и не вазькаться с довесками, но тогда надо сразу хорошо решить - что делать. А то слишком универсальные вещи или бывают одинаково плохие для всего, или не бывают доделаны.
AndyBig
1.
Цитата
Но многие почему-то очень хотят, и если это дастся малой кровью, то почему бы и не сделать.

Так вот в том-то и дело, что малой крови я пока не вижу... Конечно, можно развязать все по всем правилам, но бюджет устройства при этом может вырасти до неприличия. Если кто-то покажет простой и дешевый способ развязки (и объяснит повседневную необходимость это делать) - буду только рад smile.gif.
Цитата
... и тогда можно начать с FT245 а потом и FT232 версию добавить :-)

Может быть наоборот? smile.gif Развязать ведь легче 232-ю smile.gif

2.
Цитата
Процессор программатора запитать от 5В (и влупить 14-16МГц)

Полностью согласен smile.gif. Но:
а) поставить уже два буфера. ведь нужна и обратная связь - от целеыого контроллера к программатору. Кстати, почему именно VHC? По параметрам и HC вполне подходит...
б) посмотрел схему ББ-2. В принципе, почему бы и нет? Можно поставить сдвоенные низковольтные полевики (типа IRF7314), думаю тогда схему можно будет упростить. Но с транзисторами теряется возможность двунаправленных линий. Или усложняется конструкция каждого ключа.
Цитата
слишком универсальные вещи или бывают одинаково плохие для всего

Поддерживаю. Нужно ограничиться разумными рамками.
aal
Hi All!

Мне кажется вы немножко не стого конца пошли. Развязка это обязаловка. Чтоб потом небыло выяснений кто дурак. (Сам через это пару раз прошёл - хватит.)

1. Мне кажется развязку надо ставить именно у конектора к программируемому дивайсу. Для этой цели хорошо подойдут ADUM1401 - i/o 1/3 (vcc 2,7..5,5V). Автоматом получаем и соглосование уровня и развязку. Скорости и на младшем кристале хватит.

2. Питать программатор от юсби естественно. Выбор юсби - тот что дешевлеи проще в подключении. Скорости 1мбит хватит ещё очень надолго.

3. На проц программатора не пожалеть денег и поставить чёй-то аля меги64 или мсп430ф149 или постарше (ну и пусть на 50-150р дороже будет не великая же серия). Чтоб добавлять функции без напрягов.

4. Мутить с высокин напряжением 12в для программирование помоему не стоит. Требующие 12в микрухи уходят с ранка очень быстро, а новым и 3в хватает. Мы же не на вчерашний день программатор собрались делать....

5. Насчет использования стандартного софта есть некоторое сомнение. Его слишком много и под все не подстроишся. У меня в работе i2c, SPI, JTAG (MSP430, ALTERA, XILINX в перспективе дсп от тексаса). А многим ещё и JTAG для армов интересен. Лучше связатся с теми программистами, инициаторами свободно распространямых программаторов. Наверняка можно организовать свободную группу. В любом случае тому же автору понипрога будет много меньше работы, ненадо рисовать оболочку, редактор и многое другое. А работа с лпт или комом у них идет все равно через ИХ драйвер порта. Т.е. для них требуется изменить драйвер порта и немного программу и готовый пакет с большим перечнем микросхем.

6. Что касается JTAG - многим он требуется для отладки. А сдесь вообще чудо из чудес - стандартизован сам физический JTAG и некоторое кол-во обязательных команд и регистров именно JTAG интерфейса. А вот системное соглосование JTAG и целевой программы каждый производитель лепит своё для каждого симейства микрух. В итоге на одном компе живёт до 2-3 JTAG и для каждого свой адаптер.
Но если отказатся от отладки, то всё упрощяется....

7. В связи с п.5 выработать модель взаимодействия программатора с софтом и железом. В своё время делая ком программатор аля АВР910 на 2051 заложил универсальный протокол, построив на 2051 сравнительно тупой ковертор уарт-спи. В итоге с одинаковой легкостью програмил и авр-ки и меги и ат89 эспиайные, датафлешки ат45. (болшее не требывалось).

Я рад что тема униврсального последовательного быстрого программатора была сдесь поднята. Надеюсь она не зачахнет.
AndyBig
1.
Цитата(aal)
Мне кажется развязку надо ставить именно у конектора к программируемому дивайсу. Для этой цели хорошо подойдут ADUM1401...

Да, для последовательного программатора можно. А для параллельного? Сколько нужно будет таких адумов? Если программатор будет выходить стоимостью под сотню долларов, он просто никому не будет нужен. А отказываться от возможности параллельного программирования - ой как не хочется. По поводу развязки - возьмите практически все существующие на сегодня популярные программаторы - LPT, COM, USB... В скольки из них стоит развязка? И как часто люди матерятся на ее отсутствие? Гораздо больше они матерятся на случайный прожиг фьюзов клока или на сброс фьюза последовательного программирования. Это, естественно, только мое мнение...

2, 4. Да, с этим я полностью согласен.

3. От контроллера, на самом деле, потребуется не слишком много. Только скорость и достаточное число IO, остальное решает компьютерный софт. Думаю, атмеги 169 хватит.

5. Имеется в виду софт производителей контроллеров. Т.к. программатор расчитывается в основном под AVR, то логично было бы сделать его совместимым со стандартными программаторами атмела - их поддерживает большинство сред разработки. Тем более, что это только дело софта.

6. У атмела интерфейс JTAG расписан достаточно подробно, что бы в дальнейшем можно было задуматься об отладке. Другой вопрос - привязка бинарника к исходникам. Я не изучал этот вопрос, но теоретически можно разобрать формат отладочных файлов того-же IAR и оттуда выцеплять эту привязку.

7. Угу. Я тоже представляю себе прошивку программатора как чисто исполнительную. Со стороны компа ей спускаются все необходимые параметры (назначение ног, временные характеристики и т.п.) и она по этим параметрам работает с целевым чипом.

Я тоже надеюсь, что тема не умрет, но и не расчитываю на сверхбыстрый результат smile.gif. У всех ведь есть основная работа, личная жизнь, шабашки... На общественные проекты времени остается не так много как хотелось бы...
ReAl
Цитата(AndyBig @ Jul 4 2005, 23:38)
Цитата
... и тогда можно начать с FT245 а потом и FT232 версию добавить :-)

Может быть наоборот? smile.gif Развязать ведь легче 232-ю smile.gif

А вот кому нужна развязка, тот
пусть с 245 на 232 и переделывает smile.gif

Цитата(AndyBig @ Jul 4 2005, 23:38)
2.
Цитата
Процессор программатора запитать от 5В (и влупить 14-16МГц)

Полностью согласен smile.gif. Но:
а) поставить уже два буфера. ведь нужна и обратная связь - от целеыого контроллера к программатору. Кстати, почему именно VHC? По параметрам и HC вполне подходит...

А VHC на входах больше питания держит по штату. Её запитать от программируемой платы, а 3В назад процессор и так должен взять.
Я сейчас в byte-blaster-ы её ставлю и диод тот пресловутый убрал наконец-то с чистой совестью.
ReAl
Цитата(aal @ Jul 5 2005, 09:56)
Мне кажется вы немножко не стого конца пошли. Развязка это обязаловка. Чтоб потом небыло выяснений кто дурак. (Сам через это пару раз прошёл - хватит.)

1. Мне кажется развязку надо ставить именно у конектора к программируемому дивайсу. Для этой цели хорошо подойдут ADUM1401 - i/o 1/3 (vcc 2,7..5,5V). Автоматом получаем и соглосование уровня и развязку.

А XTAL1 ? На моей памяти, судя по всем эхам/форумам/почте проблем с зашиванием сдуру на external clock было несоизмеримо больше, чем с отсутствием гальваноразвязки. А с XTAL1 уже надо не 1/3, а 1/4, а ADUM1501 пока не придумали.

Цитата(aal @ Jul 5 2005, 09:56)
2. Питать программатор от юсби естественно. Выбор юсби - тот что дешевлеи проще в подключении. Скорости 1мбит хватит ещё очень надолго.

Плавали, знаем. "640 килобайт хватит навсегда". И уже через год-полтора начали EMS лепить.
Мне лично кажется, что мне раньше скорости захочется, чем гальваноразвязки.

Цитата(aal @ Jul 5 2005, 09:56)
4. Мутить с высокин напряжением 12в для программирование помоему не стоит. Требующие 12в микрухи уходят с ранка очень быстро, а новым и 3в хватает. Мы же не на вчерашний день программатор собрались делать....

А с RSTDISBL как? tiny15-tiny85 - это вчерашний день? А у них вечно одной ноги не хватает, хоть tiny26 ставь.
AndyBig
Цитата
А с RSTDISBL как? tiny15-tiny85 - это вчерашний день?

о, блин. если у них установлен этот фьюз, то возможна только высоковольтная прошивка?
Alexey_N
1. Давайте попробуем всё-таки взвесить, что важнее - гальваническая развязка (ГР) или скорострельность. За ГР говорит то, что почти всегда комп и программируемое устройство питается от разных БП. Причем, совсем не факт, что БП для контроллера сделан как полагается, и подсоединен трехпроводной вилкой к тому же удлинителю, что и БП компа. С некоторой вероятностью это бывает не так wink.gif. Тогда, при соединении девайсов программирующим разъёмом, мы имеем удовольствие наблюдать искру. А при разъединении этих разъемов, при удачном стечении обстоятельств, нас бодро потряхивает 110 Вольт. Опасно ли это? Не думаю... Т.е. для взрослого человека - это даже бодрит smile.gif. Для USB-порта, думаю тоже, пройдет без последствий. ЛПТ-порт, с большой вероятностью от этого дела наворачивается, но мы же делаем не на ЛПТ... Может сгореть контроллер. Ну дык не страшно - перепаять камень, заземлить (об комп) БП контроллера, и можно продолжать процесс прошивки дальше smile.gif! Так что, в общем, никакой такой уж ужасной необходимости в ГР нет. Хотя, не скрою, её наличие действует довольно умиротворяюще smile.gif.
С другой же стороны, вопрос о скорости носит, на мой взгляд, количественный характер. Т.е. при переходе с 232 на 245 достижимая скорость трансфера по нашим общим оценкам возрастает в 4 раза (с 1 МБод до 4 Мбод). "Целых 4" или "всего 4"? Ну, это как к этому относиться. Радикально, на мой взгляд, проблему со скорострельностью может изменить только переход на другой тип интерфейса (USB-2.0, LAN-100, FW и т.д.), что однако связано с крутыми программными заморочками. Поэтому я склоняюсь к тому, что пока проект замутить на скорости 1М, а уж ежели это дело понравится и приживётся, то спокойно перейти на Лань-100 (а то и Гигабит).
Впрочем, это моя точка зрения. В настоящее время мнения разделились, и если Александр (ReAL) будет настаивать на 245-м варианте, не вижу никаких проблем сотворить две модификации, почему бы и нет? Трудностей - ноль!
Главное - давайте подведем по этому вопрсу промежуточные итоги, да и двинемся дальше!
2. Вот решительно я пока не понимаю, зачем на выходе нам нужно втыкать шинный формирователь. У любой меги выходная мощность ног - за глаза и за уши для такого дела. Третье состояние - пожалуйста. Двунаправленность - пожалуйста. Зачем нам нужна лишняя деталь? Для согласования выходного напряжения? - Без проблем! - Сама мега пусть и регулирует свое питающее напряжение, это легко делается с помощью "палки и веревки", т.е. малюсенького регулятора напряжения. Т.е. по-любому, места для шинника я не вижу...
3. Очень серьезный вопрос по выходному разъему. Здесь действительно хотелось бы не жаться и поставить 2х10. (Но это уже надо как-то прикидывать с размерами корпуса. Впрочем, это не главное.) Надо попробовать представить все возможные варианты использования этой железяки, в том числе и для МСП430, и для АРМ-ов и для Альтер и пр., и попытаться всё нужное вытащить на этот разъем. Вот, например, для АРМов нужен программатор по СОМ-порту, значит надо второй СОМ-порт меги подтащить к этому разъему. Давайте может в Вике составим табличку с нашими пожеланиями к разъему?
4. Вопрос о еде. Питать ли программатор от контроллера, либо от УСБ? Или питать контроллер от программатора, или вообще не разрешать такую ситуацию?
Так вот, ответ здесь ИМХО простой - не сложно предусмотреть возможность реализовать все эти варианты, да и оставить их на усмотрение энд-юзера. Вопрос только о том, что в варианте с ГР все эти штуки можно будет крутить программно, а без ГР могут потребоваться перемычки (джамперы, ВДМ-ки), что в принципе тоже, совсем не страшно.
По этому вопросу я тоже предлагаю перейти к подведению промежуточных итогов, т.е. таблички с желаемыми комбинациями.

ЗЫ. Общие соображения. Наверное имеет смысл прислушаться к словам ROC-а и ограничить нашу дискуссию по проекту какими-то временными рамками, ну например, на конец этой недели выкатить примерную конфигурацию девайсины. С том, чтобы на следующей уже обсуждать нарисованную схему, а через неделю развести, да и вкинуть в изготовление...
AndyBig
1. Развязка - договорились, делаем без развязки. Добавить развязку при большой необходимости будет несложно. Скорость - для меня, например, повышение скорости с 1 до 4 МБит - это очень даже чувствительно smile.gif))). Поэтому давайте делать не в расчете на какую-то определенную скорострельность, а на сколько получится. Если вытянем 4 МБита - отлично. Вытянем только мегабит - тоже очень даже неплохо. Я тоже за 245-й - с ним намного меньшая нагрузка на контроллер и выше скорость.
2. Честно говоря, мне тоже вариант с шинником не очень нравится. Это усложняет создание двунаправленных линий. Но есть и свои преимущества - уровни сигнала будут автоматом подстраиваться под целевой девайс, защита от программирования незапитанного девайса. Мысль об управлении программатором своим питанием мне тоже приходила в голову, но что-то мне эта идея не по душе. Дергать питанием прямо на ходу - это как-то неправильно smile.gif. Тем паче, что целевой девайс может быть запитан не только одним из стандартных напряжений, но и каким-то промежуточным - например, 4,2В. Тогда 3,3 будет мало, а 5 - много.
3. А мы что, собираемся шить этим программатором несколько контроллеров одновременно? smile.gif К этому нужно подойти с другой стороны - прикинуть сколько линий максимум может понадобиться для шитья любого из предполагаемых контроллеров, добавить еще пару линий на всяк случай и на получившееся число ориентироваться.
4. Программатор питается от USB - однозначно. Питать контроллер от программатора - ни в коем случае. Если только предусмотреть перемычку для этого и оставить такой вариант на страх и риск пользователя. У программатора и у контроллера питания должны быть свои, единственное исключение - шинник на выходе программатора питается от контроллера.

Хорошо, сегодня я выложу на wiki то, к чему потихоньку пришли по железу smile.gif. С понедельника начнем рисовать и обсуждать схему smile.gif.
PlainUser
Цитата
Можно поставить сдвоенные низковольтные полевики (типа IRF7314), думаю тогда схему можно будет упростить. Но с транзисторами теряется возможность двунаправленных линий. Или усложняется конструкция каждого ключа.
слишком универсальные вещи или бывают одинаково плохие для всего



Полевики подключенные к выходящим с платы концам долго не живут.Жизненное наблюдение.
ReAl
Цитата(Alexey_N @ Jul 5 2005, 23:01)
2. Вот решительно я пока не понимаю, зачем на выходе нам нужно втыкать  шинный формирователь. У любой меги выходная мощность ног - за глаза и за уши для такого дела. Третье состояние - пожалуйста. Двунаправленность - пожалуйста. Зачем нам нужна лишняя деталь? Для согласования выходного напряжения? - Без проблем! - Сама мега пусть и регулирует свое питающее напряжение

Только тогда кварц на меге придётся поставить в рассчёте на минимальное напряжение её питания, боюсь, что тогда и о мегабоде можно будет говорить с натяжкой.
А согласование уровней перейдёт на стык мега-ftdi.
Раздельное программирование всех ног на in/out/Z - не очень-то и надо, MOSI всё равно выход, MISO всё равно вход.
Кстати, а для jtag (точнее, для его скорости) полезно бы уметь MOSI процессора направлять то на TDI, то на TMS...
Yra
Предлагаю схему программатора.
Схема нарисована не с пустого места: до этого имелся успешный опыт
разработки программатора AT89C51, AT89C52, AT89C2051 - параллельное
программирование, AT90S1200 - последовательное программирование по SPI(не
сильно отличается от протоколов программирования ATmega), PIC16F84A- (ICSP-
интерфейс), I2C - интерфейсных микросхем.
Все эти функции умещались в 4Кбайта памяти программ и менее чем 128 бит
оперативки (AT89C51).
Некоторые соображения по поводу идеологии программатора
1) Временные интервалы программирования и напряжения программирования
должны быть соблюдены как можно точнее (чтобы лишний раз не сказывалось на
надёжности микросхем)
2) Возможность параллельного программирования никогда не повредит (допустим
в дальнейшем может понадобиться тестер LCD - модулей или ещё чего с большим
количеством ног)
3) Гальвоническая развязка с компьютером - лишняя заморочка с сомнительным
результатом т.к.
a) приборы (включая комьютер) на рабочем месте ДОЛЖНЫ БЫТЬ ЗАЗЕМЛЕНЫ и
те кто пользуется любыми примочками типа GTAG - эмуляторов должны это
знать.
б) блок питания программатора должен быть гальванически развязан с сетью
и если уж дело дошло до подключения компьютер к программатору, то лучше
это делать при выключенном питании (или использоватьразъёмы специальной
конструкции - как USB -где всегда сначала подключается общий провод.
в) общий провод компьютеров всегда соединён с корпусами.
г) много- ли Вы видели JTAG - эмуляторов с гальванической развязкой.
4)Нужно - ли плате программатор буферное ОЗУ или, может сделать
программирование по мере поступления байт от компьютера? Обычно FLASH -
ячейке требуется порядка нескольких миллисекунд на программирование (за это
время можно принять следующий байт данных).
В общем, буферное ОЗУ только усложнит схему, при сомнительном выигрыше по
скорости.
5)Цепи программатора следует обесточивать при установке/удалении
программируемых микросхем следовательно нужно осторожно относиться к
инициализации источника напряжения программирования.
6)Для связи с компьютером для начала следует использовать RS-232 (на
перспективу есть же мостыь USB<->RS232) так как всё равно всё сведётся к
UART со стороны контроллера.
7)Исходя из эвристических соображений скажу, что в 8Кбайт памяти программ
влезут протоколы программирования всех AVR и многого другого.
8) Насчёт программирования 3.3В схем - 5 - вольтовая TTL - логика совместима
с LVTTL по уровням.
9)Что бы ни говорили линуксоиды - командная строка - это трата времени
пользователя. Программатору
нужен GUI. Чтобы уж совсем сработать на перспективу, можно воспользоваться
не MFC или C++Builder, а кроссплатформенными QT (Trolltech) или GTK (GNU).
Тогда, когда возникнет надобность можно с минимумом прооблемм перейти под
Linux (теоретически переписав: функцию main, модуль comport, файл Makefile)


Предлагаю принципиальную схему Sheet1.pdf (на мой взгляд вполне жизнеспособную)
ВНИМАНИЕ ! Некоторуе тонкости ещё не проработал (нужен - ли инвертор на
ноге Р2.2 AT89S52, поставить - ли всё-таки резистор последовательно с ногой
частота кварцевого генератора теоретически позволяет использовать UART на
скорости 38400 на практике - не знаю.)
-----------------------------------------------------------------------------------------------
Продолжаю заниматься программатором. Собрал принципиальную схему, устранил ошибки:
1) частота кварца 22.1184 МГц - реально общался с платой на скорости 115200
2) решил проблеммкус отрицательным источником напряжения программирования для запитки операционного усилителя: от MAX232 smile.gif
3) источник напряжения программирования работает теперь в диапазоне 0...(Uвх - 2В - 0.6В)
Вот ещё не окончательный вариант, но более приближенный к реальности Sheet2.pdf
-----------------------------------------------------------------------------------------------
Вот схема в фрмате P-CAD2001 P-CAD2001.ZIP
-----------------------------------------------------------------------------------------------
Каркасец программы для платы программатора. Пока работают функции смены
скорости обмена с компьютером, информация о версии, управление источником напряжения : в файле Programmator.zip
-----------------------------------------------------------------------------------------------
Работаю над управляющей программой. Создаю её на языке C++ в среде
Dev-C++ c использованием графической библиотеки GTK (знаете есть такой
редактор картинок GIMP - гроза Adobe PhotoShop)
-----------------------------------------------------------------------------------------------
Вот предварительные наброски управляющей программы вместе с исходниками:
файл Progr3.0.zip. Работы в общем ещё много, но идею можно уловить.
Думаю, перечисленные там процессоры осилю один, а остальные буду добавлять по мере поступления. В общем, чтобы программатор был полноценным
нужно, чтобы человек несколько прониклись идеей
------------------------------------------------------------------------------------------------
GIU со связями почти готов. Процедуры обмена с приставкой будут во втором
потоке (пока вместо них заглушки) Файл GTK.zip
AndyBig
Цитата
полезно бы уметь MOSI процессора направлять то на TDI, то на TMS...

TMS можно рулить и программно, на скорости это сильно не скажется.

Цитата
Предлагаю схему программатора

Использование в программаторе AT89xxx по моему глубокому убеждению исключено. При кварце 22 МГц его клок составит меньше 2 МГц, это совсем мало.
Про "сначала RS232" уже говорили - абсолютно бессмысленно. Зачем делать сначала одно железо, а потом переделывать на другое? Какое преимущество у RS232? Зато недостатков много. Например, скорость - не выше 115 КБит.
Временные интервалы - обязательно нужно выдерживать как можно точнее. Вот для этого скорострельность контроллера и нужна (в том числе).
Устанавливать микросхемы... Все таки это в основном In-System программатор. Единственный вариант установки микросхемы в него - это при параллельном программировании, что не является основной функцией.
Буферное ОЗУ при программировании, возможно и не даст большого выигрыша (хотя небольшой все равно будет), но вот проверку он ускорит значительно.
Командная строка - первое, что необходимо делать. GUI можно будет навернуть потом отдельно. Поясню почему: командную строку намного проще интегрировать в среды разработки, и не нужно переключаться между средой и программатором (меня это всегда раздражало в PonyProg).

Ну и в целом: для начала надо нарисовать блок-схему, а затем начинать выводить каждый блок.
Yra
Мы наверное говорим об устройствах разного класса. Если осилите то, что собираетесь сделать- хвалю, но готовьтесь, что разработать принципиальную схему
в данном случае - это 5% от всего, если не меньше. Самое главное- вправить мозги ей и управляющей программе. И сделать это так, чтобы это всё легко надстраивалось.
Не тяните с принципиальной схемой.
AndyBig
Для начала нужно определиться с концепцией, с железом. Это 50% готовности устройства smile.gif. Поэтому так долго и обсасывается этот вопрос.
Но, вроде бы, уже более-менее пришли к каким-то общим результатам.
aal
Покапавшись в журналах нашёл то, что скорее всего удовлетворит зачинщиков. wink.gif

Радиохобби №3 за 2004 год стр.19-21.

Показан программатор с загрузкой софта по юсб или через и2ц в контроллер от тексаса - TUSB3210. Там что вы хотели сделано:
1. есть и панелька для паралельного программирования и разъёмы для исп.
2. есть генератор высокого напряжения.
3. есть простейшие цепи согласования уровней.

Понимает атмеловские 89 и 90, 24 еепром + микрочип.

когда год назад увидел захотел собрать, да по нехватке времени и малым кол-вом его функций (мне неинтересных + нет того с чем я работаю) программатор делать не стал.

А чип для себя отметил. х51, на борту 4 8бит порта + память небольшая. Главный для меня козырь в его пользу - загрузка софта с РС при включении.
Yra
Цитата
Покапавшись в журналах нашёл то, что скорее всего удовлетворит зачинщиков. wink.gif

Радиохобби №3 за 2004 год стр.19-21.


Можете дать ссылочку на документ (или скриншот схемы вывесить smile.gif )
aal
Радиохобби №3 за 2004 год стр.19-21.
Отсканировал и распознал в 1 стр.
Yra
По указанному электронному адресу http://www.segment.nl/ наблюдается не то.что нужно. Кажется
программатор оттуда кудато съехал.
Alexey_N
Цитата(aal @ Jul 6 2005, 16:45)
Показан программатор с загрузкой софта по юсб или через и2ц в контроллер от тексаса - TUSB3210.
*

А что, очень красивое решение! Хороший, правильный камень, ног много...
Вот только думаю, что нет на него драйверов VCP под Выньдос, соответственно его применение может оказаться неэкономичным с софтовой точки зрения.
BVU
Всем участвующим в обсуждении привет!
Раздел в котором мы общаемся называется AVR, так давайте обсуждать и планровать программатор именно для AVR. Intel-51 и т.д. клоны абсолютно не уместны.

Во первых необходимо выработать постулаты типа:
1. Программатор AVR микроконтроллеров.
2. Параллельное(высоковольтное), последовательное(внутрисхемное) программирование.
3. Поддержка +5/+3v микроконтроллеров AVR.
4. PC интерфейс USB.
5. Модули-адаптеры (переходники сокеты) для параллельного программирования.

Остальное уже часности (схемотехника, конструктив, software, firmvare) определившегося устройства.

С наилучшими пожеланиями,
BVU
AndyBig
Вчера так и не нашлось времени для приведения в порядок wiki-страничку проекта sad.gif.
Решение на TUSB действительно очень красивое smile.gif. Кстати, а развязка там реализована между программатором и девайсом на полевиках.
Несколько мыслей, пришедших в голову в связи с этой схемой:
1. Делать программатор все равно будем на AVR.
2. Перепрошивка самого программатора вполне возможна без использования дополнительного железа или переделки/переключений чего-либо в программаторе. Используя bit-bang режим FT2xx.

Я почти во всем согласен с BVU smile.gif За исключением одного - не нужно жестко останавливаться на поддержке только AVR. Нужно все-таки предусмотреть программирование и других чипов - хотя бы только потенциально, с тем расчетом, что бы не пришлось переделывать в будущем железо.
aal
2 Yra

Вот один из архивов мной сохранённый....
Yra
Цитата
Покапавшись в журналах нашёл то, что скорее всего удовлетворит зачинщиков. wink.gif

Радиохобби №3 за 2004 год стр.19-21.

Показан программатор с загрузкой софта по юсб или через и2ц в контроллер от тексаса - TUSB3210. Там что вы хотели сделано:
1. есть и панелька для паралельного программирования и разъёмы для исп.
2. есть генератор высокого напряжения.
3. есть простейшие цепи согласования уровней.

Понимает атмеловские 89 и 90, 24 еепром + микрочип.

когда год назад увидел захотел собрать, да по нехватке времени и малым кол-вом его функций (мне неинтересных + нет того с чем я работаю) программатор делать не стал.

А чип для себя отметил. х51, на борту 4 8бит порта + память небольшая. Главный для меня козырь в его пользу - загрузка софта с РС при включении.



У автора даже своя страничка есть http://www.microcontroller.de.vu/

Жалко, что управляющая программа написана на Delphi
Процессор там ядрёный, не на каждом шагу продающийся.
aal
2Yra
В ефинде десятки предложений TUSB3210 от кучи поставщиков с ценой от 3,5$ и выше....
В крайнем случае две-три недели подождёш.....

Цитата
Жалко, что управляющая программа написана на Delphi

А насчёт Delphi ты неправ. Какая разница на чём написанно - главное чтоб работало. Я свои мелкие служебные проги на делфи и крапаю. Быстро и удобно. Просто долгое время писал на паскале. Сейчас могу и на с и на фортране накропать, но смысл. Есть кучка мной написанных за 10 лет библиотечек и программок, мне бымтрей на делфи накропать....
Yra
Цитата
В ефинде десятки предложений TUSB3210 от кучи поставщиков с ценой от 3,5$ и выше....
В крайнем случае две-три недели подождёш.....


Поставщиков то много, но все они в Москве или в Питере. Если делать для себя - то лишний напряг (если откажется чип и дип - надо осваивать электронный перевод денег, не факт что привезённый контроллер не битый и.др.) А на работе программатор то есть.


Цитата
А насчёт Delphi ты неправ. Какая разница на чём написанно - главное чтоб работало. Я свои мелкие служебные проги на делфи и крапаю. Быстро и удобно.


Вот именно: мелкие проги. А когда более- менее приличный проект - то не желательно сваливать в одну кучу и GIU и всё остальное (как в данном программаторе) - результате исходник *pas - занимает 65 кБайт и с усложнением разрастается. А разделить на функциональные модули - навык нужен - дурацкая проблемма в паскале с взаимным подключением модулей друг к другу.
В общем я тоже начинал с делфей но затем из- за всего этого перешел на C++ (Builder - скончавшийся, к сожалению)
halfdoom
Цитата(ROC @ Jul 1 2005, 08:36)
А прошить девайс в командировке можно и PalmAVR'ом  biggrin.gif
*

Угу, а мне вот хочется AvReal-USB для Sharp SL-C3000, на котором стоит полноценный линукс и имеется встроенный USB хаб blush.gif.
Alexey_N
Пока непонятные мне вопросы.
1.Выбор тактовых частот.
1.1. Хочется как-то увязать кварцевый генератор 6МГц для FT-2xx и кварцевый генератор на ххМГц для Меги.
1.2.Хочется иметь возможность переключать частоты работы Меги (4, 8, 16 МГц).

Просто взять и прилепить два кварцевых резонатора - как-то уж слишком в лоб. Может завести мегу от 6 МГц? - Жалко потери хода, но с другой стороны, для программатора нам особо быстрый камень как бы и не к чему, а с точки зрения максимальной скорости UARTа в случае ФТ232-й, по моим подсчетам, должна оказаться 750кбод, может нам хватит? При этом работать эта мега будет во всем диапазоне питающих напряжений. Т.е. от 2,7 до 5,5 В.

2.Регулятор выходного напряжения.
Нет проблем влепить обычный линейный регулятор, и подсоединением разных резисторов к точке FeedBack, получать весь набор юзаемых напруг, от 2,7 до 5В. Ну, скажем, в такой сетке: 5, 4.5, 3.3, 3.0, 2.7 Вольт. Можно выпендриться и поставить простенький ЦАП, и получить весь ряд с точностью 0.1 Вольта. Но хотелось бы как-то совместить регулировку питания с DC\DC-конвертером гальванической развязки. Может кто знает такие конверторы, чтоб у них ещё и выход регулировался? Было бы красиво...
rezident
Цитата(Alexey_N @ Jul 9 2005, 04:14)
Пока непонятные мне вопросы.
2.Регулятор выходного напряжения.
Нет проблем влепить обычный линейный регулятор, и подсоединением разных резисторов к точке FeedBack, получать весь набор юзаемых напруг, от 2,7 до 5В. Ну, скажем, в такой сетке: 5, 4.5, 3.3, 3.0, 2.7 Вольт. Можно выпендриться и поставить простенький ЦАП, и получить весь ряд с точностью 0.1 Вольта. Но хотелось  бы как-то совместить регулировку питания с DC\DC-конвертером гальванической развязки. Может кто знает такие конверторы, чтоб у них ещё и выход регулировался? Было бы красиво...
*

Вам по-моему уже подсказывали нормальное и стандартное решение с питанием и согласованием уровней, реализованное во многих приложениях, в т.ч. а программируемой логике Altera и Xilinx. Непонятно почему вас тянет на нестандартные вещи? Контроллер (ядро) устройства (программатора) питается от одного фиксированного напряжения. Например, 3,3В или 5В. Входные и выходные буфера питаются той же величиной напряжения, что и программируемое устройство. Никаких специальных регулировочных (управляемых) цепей, чисто аналоговый повторитель. Если это напряжение в диапазоне 3.3В-5В, то особых проблем нет - буфер 74LVCxxx. Немного сложнее реализация выходных буферов лишь при более низком напряжении питания. Посмотрите, например, как этот узел реализован в Wiggler, MSP430 FET, SM510PCI, прежде чем изобретать велосипед.
Нужен лишь один гальваноразвязанный DC/DC 5V-to-5V или 5V-to-3.3V, чтобы запитать ваш интерфейс от USB и аналоговый каскад повторителя напряжения для питания входных/выходных буферов программатора.
halfdoom
Цитата(Alexey_N @ Jul 9 2005, 01:14)
1.1. Хочется как-то увязать кварцевый генератор 6МГц для FT-2xx и кварцевый генератор на ххМГц для Меги.

Нет смысла вводить ограничения экономя на детали стоимостью меньше доллара.
Цитата
1.2.Хочется иметь возможность переключать частоты работы Меги (4, 8, 16 МГц).

Зачем ? Мега питается от USB фиксированным напряжением (или через DC/DC). Выбираем 14.7456 или 16MHz кварц и проблема решена.
AndyBig
1.1 Не получится, если делать гальваническую развязку.
1.2 Мега 169 прекрасно может управлять своим клоком, но не вижу в этом смысла.
2. В общем-то уже ответили smile.gif)
Alexey_N
Цитата(halfdoom @ Jul 9 2005, 10:33)
Цитата(Alexey_N @ Jul 9 2005, 01:14)
1.1. Хочется как-то увязать кварцевый генератор 6МГц для FT-2xx и кварцевый генератор на ххМГц для Меги.

Нет смысла вводить ограничения экономя на детали стоимостью меньше доллара.
*


Согласен, вопрос снимаю.
Alexey_N
Цитата(rezident @ Jul 9 2005, 09:09)
Контроллер (ядро) устройства (программатора) питается от одного фиксированного напряжения. Например, 3,3В или 5В. Входные и выходные буфера питаются той же величиной напряжения, что и программируемое устройство. Никаких специальных регулировочных (управляемых) цепей, чисто аналоговый повторитель. Если это напряжение в диапазоне 3.3В-5В, то особых проблем нет - буфер 74LVCxxx.
*

Меня смущает в этом решении потеря универсальности ног на выходном разъёме. Если применять двунаправленный буфер класса 74хх245, то получается завязка по направлению одновременно 8 ног. У Вас есть какие-то конкретные предложения по буферам дабы избегнуть такой неприятности?
Или предлагается на это место наплевать и жестко закрепить 8 ног на вход и 8 на выход?
А, с другой стороны, регулировка напряжения питания меги неизбежно приведет к кручению тактовой (переключению кварца и пр.), что конечно, гиморно... Так что, пожалуй я сейчас уже и не знаю что лучше (т.е. что хуже), оба решения как-то по своему кривы...
Впрочем, нарисуйте, плз., Ваши соображения о буферах поподробнее, может я просто, как обычно, чего-то не замечаю wink.gif.
AndyBig
Одно из соображений - встречно-параллельное включение буферов 74хх244 с соответствующим управлением выходов. Нужно туда - включил выходы у "тудашнего" буфера, нужно оттуда - включил выходы у "оттудашнего" буфера. Количество корпусов, конечно, увеличивается, но зато переключается уже по 4 линии smile.gif.
Yra
Вопрос. Если взять самый что ни на есть ATmega128 - не прикидывали какое время в секундах получается на его программирование по SPI разрабатываемым программатором (если, конечно же воспользоваться встроенным аппаратным SPI) ?

Насчёт буферов с 5В логики на 3.3 В логику и наоборот : они не нужны (поглядите спецификации на LVTTL) LVTTL - совместима по лог. уровням с TTL.
Еслибы CMOS - то тогда действительно нужны преобразователи.
В природе есть ещё такая вещь translators (двунаправленные трансляторы уровней) если нужно буферизовать I2C шину (как раз с 3.3 В в 5В). У фирмы Maxim
есть микросхемки типа MAX3373EEKA-T
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.