Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Программатор RS232
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Страницы: 1, 2, 3, 4
AndyBig
Ну, скажем, при 16 МГц клока, максимальная скорость программирования может достичь (теоретически) 16/6=2,6Мбит (как требует Атмел, периоды низкого и высокого уровней на SCK должны быть не менее 3 тактов каждый).
То есть, за пол-секунды должно успеть залиться smile.gif.
Это, естессно, при соблюдении некоторых условий. 5-вольтовое питание целевого контроллера, 16 МГц кварц... Хотя по кварцу - есть идея перед заливкой прошивки выставить у целевого контроллера фьюзы клока на внешний клок и тактировать его от программатора. После заливки прошивки вернуть фьюзы на родину smile.gif.
AndyBig
По поводу совместимости уровней... В даташитах на атмелы везде указывается, что максимальное входное напряжение на портах - VCC+0,5 (V).
Можно, наверное, сделать очень дешево и сердито - поставить последовательно два резистора по 1К, а между ними стабилитрон на 3,3 на землю smile.gif. И уровни туда и обратно через эту цепь всегда будут приводиться к 3,3 вольта, что для 5-вольтовой логики вполне приемлимо smile.gif.
yung
Ребята, можно, я прерву? Я не сомневаюсь, что все это останется в памяти благодарных потомков в виде весьма продолжительной, увлекательной и на редкость познавательной светской беседы. За те полторы недели, что народ блещет эрудицией, два просто технически грамотных человека - один по вехнему уровню, другой по нижнему (можно обойтись и одним), основываясь на открытых протоколах, сделали бы программатор, работающий со всеми кристаллами AVR, на которые есть описания, и его себестоимость была бы рублей 100 (простенькая мега, что-то типа 232 макса, кварц, десяток резисторов-кондеров, разъемs DRB-9 и IDC-10). Насколько я помню, тема начиналась с этого. И не забывайте про х...леб и п...иво (см. опять же верхние сообщения темы). Похоже, многие смотрят в сторону горизонта.
Alexey_N
Цитата(yung @ Jul 10 2005, 01:00)
Ребята, можно, я прерву?
...
*

Нельзя! Мы обсуждаем здесь не х и п, так что нельзя.

А насчет того, что за пол-дня(недели, года) можно на коленке слабать затычку на все подходящие бочки, дык вроде бы как все уже наелись этими "затычками", слава Богу не первый год АVR шьём. Теперь хотелось бы, наконец, и разумное устройство построить. Из всего многообразия продающихся приблуд ничего похожего пока нет, так что приходится, как всегда, всё делать самим...

"Если хочешь, чтобы что-то было сделано - сделай это сам!" (с)"Пятый элемент".
yung
Какими затычками? Лично я несколько лет пользуюсь AS1, AS2 - все что нужно, они позволяют. Ребята, не надо в штыки все воспринимать. У профессионала нет смысла повторять не то что программатор стоимостью 30$ (как раз AS), но и эмулятор за 350$ - проще и дешевле купить. Я живу и работаю не в самом богатом городе России, и хозяева мои на меценатов совсем похожи не были, но эти вещи всегда покупались. У большинства новичков может не найтись денег и наверняка не найдется возможностей приобрести все то, что необходимо. Остается только два варианта - 1) фанатики из Москвы, Питера и еще максимум десятка городов, где все это можно приобрести; 2) это устройство пойдет на продажу. Но много ли на этом заработаешь?

И вам в помощь.
Цитата(AndyBig @ Jul 9 2005, 23:16)
По поводу совместимости уровней... В даташитах на атмелы везде указывается, что максимальное входное напряжение на портах - VCC+0,5 (V).
Можно, наверное, сделать очень дешево и сердито - поставить последовательно два резистора по 1К, а между ними стабилитрон на 3,3 на землю smile.gif. И уровни туда и обратно через эту цепь всегда будут приводиться к 3,3 вольта, что для 5-вольтовой логики вполне приемлимо smile.gif.
*


Еще более дешево и намного злее - поставить просто резистор. В тех же даташитах указано внутреннее устройство портов - от каждого пина по диоду на питание и землю. "Излишки" напряжения упадут как раз на резисторе и этом диоде (величина 0,5В отсюда и берется). Насколько я знаю, в большинсте цифровых (и не только) микросхем входы защищаются точно также - не случайно масимально допустимые ВХОДНЫЕ токи указывают.

P.S. Стабилитроны ни в коем случае - получится замечательная RC-цепь, стабилитроны обычно обладают приличной емкостью. Хотя в этом случае можно уже не заморачиваться с высокой скоростью обмена smile.gif
Yra
Цитата
Ребята, можно, я прерву? Я не сомневаюсь, что все это останется в памяти благодарных потомков в виде весьма продолжительной, увлекательной и на редкость познавательной светской беседы. За те полторы недели, что народ блещет эрудицией, два просто технически грамотных человека - один по вехнему уровню, другой по нижнему (можно обойтись и одним), основываясь на открытых протоколах, сделали бы программатор, работающий со всеми кристаллами AVR, на которые есть описания, и его себестоимость была бы рублей 100 (простенькая мега, что-то типа 232 макса, кварц, десяток резисторов-кондеров, разъемs DRB-9 и IDC-10).

А я уже схемку - то и спаял (правда на 52- м т.к. если бы у меня были средства программирования AVR - зачем мне программатор. А PonyProg я брезгую) и потихоньку пишу софт. Правда в принципе получается девайс не такой скорострельный (ATmega128 думаю будет программироваться за 1.5 минуты smile.gif ) -
больше будет времени подумать. Потом, наверное заменю проц на AVR, перепишу макросы работы с железом... Управляющая же программа от этого не изменится.

Цитата
Можно, наверное, сделать очень дешево и сердито - поставить последовательно два резистора по 1К, а между ними стабилитрон на 3,3 на землю smile.gif. И уровни туда и обратно через эту цепь всегда будут приводиться к 3,3 вольта, что для 5-вольтовой логики вполне приемлимо smile.gif

Вот даташит. Никакой самодеятельности не нужно
ReAl
"Не надо только в штыки воспринимать" smile.gif, но

Цитата(yung @ Jul 10 2005, 00:00)
За те полторы недели, что народ блещет эрудицией, два просто технически грамотных человека - один по вехнему уровню, другой по нижнему (можно обойтись и одним), основываясь на открытых протоколах, сделали бы программатор,

Может новые опросы соорудим?
"кто готов оплатить 2*1,5 человеко-недели и выложить это бесплатно?"
и
"кто родился сразу профи и ему не надо было начинать с чего-то дешёвого?"

Цитата(yung @ Jul 10 2005, 00:00)
работающий со всеми кристаллами AVR, на которые есть описания, и его
*

А кто сказал, что оно будет только для AVR?
А кто сказал, что оно будет только программатором и не будет какой-то AVRjtag эмулировать?
А это для начинающего уже совсем другой расклад по деньгам будет.

Скольким начинающим реально помогли стать на эту дорожку существующие бесплатные инструменты?

А что касается комплектации, то FT232/FT245 уже достаточно массовые, например, в Киеве даже на кардачах есть (хоть это и не самое дешёвое место по ним), думаю, в Харькове без проблем, значит, достать можно. И гонца сгонять, и поездом/автобусом передать.
yung
Да не о том разговор. Если есть время, желание, единомышленники - конечно можно и нужно сделать все, что душе угодно . Просто на мой взгляд намного актуальней простой и дешевый программатор - аналог ПОНИ. Короче, НОВАЯ ТЕМА.
halfdoom
Цитата(ReAl @ Jul 11 2005, 18:01)
А что касается комплектации, то FT232/FT245 уже достаточно массовые, например, в

Поддерживаю вариант с FT245 как более прогрессивный и предлагаю ReAl посильную помощь в разработке/отладке как софта так и железа.
ReAl
Цитата(yung @ Jul 11 2005, 23:56)
Да не о том разговор. Если есть время, желание, единомышленники - конечно можно и нужно сделать все, что душе угодно . Просто на мой взгляд намного актуальней простой и дешевый программатор - аналог ПОНИ. Короче, НОВАЯ ТЕМА.
*

А зачем нужен новый аналог Пони? Любой может себе спаять STK300/ByteBlaster/Xilinx/AVR910, взять AVRstudio/Пони/avreal/avrdude или любую из появляющихся софтин - и шить AVR сколько душа пожелает.
Разработка такой фиговины - не актуальна. Зачем изобретать ещё одну? Дешевле не будет. Проще в повторнии - не будет.
Совсем простых и дешёвых программаторов AVR уже и так в каждом уважающем себя городе и/или институте понаразработано ("у меня курсовой - программатор АВР, у меня вопрос" - года два назад в моей почте типичное письмо).

На мой взгляд - тема о другом.
А именно - о на новом уровне дешёвом и лёгком для повторения программаторе поначалу AVR, а потом - всего, что шьётся последовательно - SPI, JTAG, I2C, близкое к MICROWIRE (те же PIC).
И - изначально на USB, по мере возможности - максимально выбрать скорость. Но - в целях совместимости с существующим софтом железо должно уметь через USB прикидываться COM-ом (но не обязано этим всегда пользоваться smile.gif ).
А вот чтобы не думать о согласовании скоростей втихую от существующего софта работать с этим софтом на максимальной частоте - я и предлагаю FT245.
ReAl
Цитата(Alexey_N @ Jul 9 2005, 14:22)
Меня смущает в этом решении потеря универсальности ног на выходном разъёме.
*

А я - не понимаю разговоров о двунаправленности (универсальности) всех ног. Чтобы ещё и одной колодкой поддержать все возможные цоколёвки шлейфа? Так тогда на каждую ногу ещё и по паре хороших полевиков надо - GND да VCC изображать.

Надо составить список интерфейсов и посмотреть типичные ноги.
JTAG и SPI - практически одно и то же. Хуже с I2C (две двунаправленных линии с ОК) и с 3-проводным интерфейсом типа PIC. Но на I2C надо вывести аппаратные ноги процессора и считать, что не будет работы с устройствами, запитанными от менее 3.3В. Или сразу заложить два полевичка согласователями уровней.
Но это можно решить сделав жёстко пару таких ног и успокоиться на шлейфах-переходниках или на платках, перебрасывающих ноги с единой 16..20-контактной колодки на нужную для данной системы. Ну в крайнем случае одну 74HC4053 возле процессора поставить, программно перекидывать какие-то буфера на входные ноги процессора - всё равно программатор останется простым в повторении и дешёвым.
А вот морочить себе голову об полную универсальность всех ног на колодке я не вижу. Тогда надо и MOSI/MISO/SCK на любую уметь перебрасывать
(программные SPI/I2C не предлагать!).
jack_avenger
Извинните если немного не в тему, а как насчет поддержки debugWIRE? Реально?
ReAl
Цитата(jack_avenger @ Jul 12 2005, 17:46)
Извинните если немного не в тему, а как насчет поддержки debugWIRE? Реально?
*

Я просто не смотрел этот протокол (а он уже описан где-то?).
На самом деле проблем быть не должно, было бы описание.
m16
Да вот он

Извиняюсь это протокол mkII
Alexey_N
Цитата(ReAl @ Jul 12 2005, 15:05)
А я - не понимаю разговоров о двунаправленности (универсальности) всех ног. Чтобы ещё и одной колодкой поддержать все возможные цоколёвки шлейфа? Так тогда на каждую ногу ещё и по паре хороших полевиков надо - GND да VCC изображать.

Надо составить список интерфейсов и посмотреть типичные ноги.
JTAG и SPI - практически одно и то же. Хуже с I2C (две двунаправленных линии с ОК) и с 3-проводным интерфейсом типа PIC. Но на I2C надо вывести аппаратные ноги процессора и считать, что не будет работы с устройствами, запитанными от менее 3.3В. Или сразу заложить два полевичка согласователями уровней.
Но это можно решить сделав жёстко пару таких ног и успокоиться на шлейфах-переходниках или на платках, перебрасывающих ноги с единой 16..20-контактной колодки на нужную для данной системы. Ну в крайнем случае одну 74HC4053 возле процессора поставить, программно перекидывать какие-то буфера на входные ноги процессора - всё равно программатор останется простым в повторении и дешёвым.
А вот морочить себе голову об полную универсальность всех ног на колодке я не вижу. Тогда надо и MOSI/MISO/SCK на любую уметь перебрасывать
(программные SPI/I2C не предлагать!).
*

1. Я встречался с такими программаторами, которые были предназначены для шитья микросхем, вставляемых в колодку. Так там колодка была универсальная, и действительно все ноги могли быть чем угодно - вход, выход, питание, земля. Нам же такое, определенно ни к чему, т.к. у нас ISP - программатор. Поэтому разговор об универсальности ног - от апориорного незнания ВСЕХ протоколов, по которым эта хрень ныне шьется и по которым она БУДЕТ шиться в будущем. Я предполагаю худшее, поэтому и предполагаю заранее не связываться определенными ограничениями, которые, на мой взгляд, не являются необходимыми. Кстати Вы тут же подтвердили мои опасения, приведя пример с I2C (который мне самому почему-то в голову не пришел).
2.Согласен, уже пора (!) составить список интерфейсов. И положить табличку в Вики.
3. 74HC4053. Ну хорошо, три ноги мы обустроили, а остальные? Бросаем, авось прокатит? Согласен, в обозримом будущем прокатит. Но, некрасивое решение, ещё одна микруха, некие программные довороты по её переключению... мне почему-то не нравится. Более склоняюсь к варианту согласовать питание меги с питанием программируемого контроллера. Тогда все ноги - наши! И аппаратные SPI и I2C и USART, и всё, что мы потом напридумаем. ЕДИНСТВЕННЫЕ грабли при таком подходе - переключение кварцевых разонаторов. И вот, что я подумал - а может надо быть проще, приземленнее, что-ли smile.gif? А давайте просто оставим на плате место для двух (трех) кварцев, и ежели кому-то будет уж сильно невтерпёж прошивать попеременно то 5-вольтовые, то 1,8-вольтовые микрухи, - ну дык перетыкать тогда джамперами (или ВДМ-ками) нужный кварц, и все дела! Достоинства - предельная простота, и полная универсальность. Недостатки: шевеление руками джампера, и ограничение по скорости при питании меньше 3В. (От 5В до 3В, я думаю переключать скорость не придется, впрочем это надо будет проверить.)
halfdoom
Цитата(Alexey_N @ Jul 13 2005, 11:43)
А давайте просто оставим на плате место для двух (трех) кварцев, и ежели кому-то будет уж сильно невтерпёж прошивать попеременно то 5-вольтовые, то 1,8-вольтовые микрухи, - ну дык перетыкать тогда джамперами (или ВДМ-ками) нужный кварц, и все дела!

Рулить таким хозяйством будет тяжело: процессор должен знать на какой частоте его завели в данный момент, вся тактируемая периферия потребует отдельных настроек, также потребуется несколько вариантов кода который привязывается к длительности такта. ИМХО, наличие буфера вполне приемлемо. А что касается 100% универсальности, то она не очень и нужна: обычный БайтБластер подходит для значительного количества последовательных интерфейсов (кроме i2c), а ведь в нем самый обычный hc244. Наличие дополнительных переходников не должно быть проблемой - IDC10 не поставишь абсолютно во все устройства.
_Alfred_
Привет ВСЕМ!
Я уже несколько дней наблюдаю за ходом вашего диалога, и он мне все больше напоминает детектив с закрученым сюжетом, который с удовольствием читаешь и спрашиваешь себя, что-же будет дальше?
Это было так, отступление...
Как я понял, вы люди с опытом, и я хотел-бы задать вам такой вопрос:
Раньше я писал под PIC16 (мелочь всякую) и решил перейти на более серьезные PIC18 или Atmel'ы, но мой програматор ничего толком не поддерживает (у меня старый ComPic).
Посоветуйте, какой программатор лучше собрать (хотелось бы поуниверсальнее, а покупать не хочеться).
Напишите на мыло (alfredalf@mail.ru) или в форуме.
Заранее благодарен.
ROC
Цитата(_Alfred_ @ Jul 13 2005, 16:00)
Привет ВСЕМ!
Я уже несколько дней наблюдаю за ходом вашего диалога, и он мне все больше напоминает детектив с закрученым сюжетом, который с удовольствием читаешь и спрашиваешь себя, что-же будет дальше?
Это было так, отступление...
Как я понял, вы люди с опытом, и я хотел-бы задать вам такой вопрос:
Раньше я писал под PIC16 (мелочь всякую) и решил перейти на более серьезные PIC18 или Atmel'ы, но мой програматор ничего толком не поддерживает (у меня старый ComPic).
Посоветуйте, какой программатор лучше собрать (хотелось бы поуниверсальнее, а покупать не хочеться).
Напишите на мыло (alfredalf@mail.ru) или в форуме.
Заранее благодарен.
*


Если не боишься LPT-порта, одна из наиболее развиваемых самоделок - Willem
http://evm.wallst.ru/main/willem/ - русский
http://willem.org - оригинальный сайт
А совсем "универсального" не бывает sad.gif У моего приятеля что-то вроде ALL-11 (боюсь соврать, но список поддерживаемых микросхем там страницы на 4) - так вот ему не хватает!!! biggrin.gif biggrin.gif
ReAl
Цитата(Alexey_N @ Jul 13 2005, 11:43)
Цитата(ReAl @ Jul 12 2005, 15:05)
А я - не понимаю разговоров о двунаправленности (универсальности) всех ног. Чтобы ещё и одной колодкой поддержать все возможные цоколёвки шлейфа? Так тогда на каждую ногу ещё и по паре хороших полевиков надо - GND да VCC изображать.
*

у нас ISP - программатор. Поэтому разговор об универсальности ног - от апориорного незнания ВСЕХ протоколов, по которым эта хрень ныне шьется и по которым она БУДЕТ шиться в будущем. Я предполагаю худшее, поэтому и предполагаю заранее не связываться определенными ограничениями, которые, на мой взгляд, не являются необходимыми. Кстати Вы тут же подтвердили мои опасения, приведя пример с I2C
2.Согласен, уже пора (!) составить список интерфейсов.

Две поправочки - не всех, а 1) разумного максимума (согласен, звучит расплывчато) и 2) последовательных.

Берём два ну очень разных последовательных протокола. JTAG и 8-ногих tinyAVR "высоковольтный". И видим, что они практически одинаковые.
И там, и там - два выхода информации (TDO,TMS и datao, cmdo), один выход такта и один вход информации. Только для AVR ещё нужен выход управления сбросом.
Где тут нужны универсальные ноги?

Цитата(Alexey_N @ Jul 13 2005, 11:43)
3. 74HC4053. Ну хорошо, три ноги мы обустроили, а остальные? Бросаем, авось прокатит? Согласен, в обозримом будущем прокатит. Но, некрасивое решение, ещё одна микруха, некие программные довороты по её переключению... мне почему-то не нравится. Более склоняюсь к варианту согласовать питание меги с питанием программируемого контроллера. Тогда все ноги - наши! И аппаратные SPI и I2C и USART, и всё, что мы потом напридумаем.


Как ни крути - MOSI и SCK процессора всегда будут выходами, MISO - входом.
Сигнал сброса процессора - всегда выход. Сигнал тактировки для него (XTAL1) - тоже выход. Ну ещё какой-то выход для дополнительного управления питанием и пара входов на всякий случай.
Я же говорю - аппаратные ноги I2C процессора вывести наружу через согласователи уровней на полевичках. Для I2C-устройств (включая не помню какой процессор, заливающийся по I2C) - этого достаточно. Для перевода того процессора в режим программирования выходов хватит (MOSI,SCK, собственно сброс для AVR). Для SPI/JTAG-программирования - эти две ноги станут универсальными, как запрограммировать, так и будет. Вывести это всё хором на колодку и все вопросы "какие сигналы нужны" и "какая цоколёвка нужна" решать на уровне переходников-шлейфов.
Максимум, что может понадобиться в таком переходнике - это пара резисторов/транзисторов/диодов, ну может что-то типа 74hc125.

Что ещё может вылезти - это UART. Ну может оказаться нужным.
Ну и отлично, два варианта решения:
1) выводим на ту колодку UART процессора - ещё один всегда выход и ещё один всегда вход. Всё равно за 16..20-штыревую колодку мы ещё не вылезли.
Будут в пуле резервных ног.
2) воспользоваться USART-ом mega88/168 - он может как UART, а может как SPI.

4053 - это уже вообще на такой крайний случай...
1/3 4053 может понадобиться для переброса MOSI на вход команды 8-ногой тини - это немного ускорит работу (но надо ли оно для таких мелких кристаллов?). И то это уже для относительной экзотики - использования ножки reset как IO.
ещё 1/3 - ну не знаю... ну на XTAL1 подавать то с какого-то OC0 (частоты от Fosc/2 и ниже), то с CLKO (ну совсем чтобы быстро).
ещё 1/3 - сейчас даже не придумаю.

Что может стоит сделать сразу - это на выход MOSI отдельный буфер с 3-мя состояниями, чтобы его независимо переводить в hi-Z. Тогда путём объединения в шлейфе MOSI и MISO начинаем работать с 93Cxx и pic16.
Но "на шару" это можно сделать резистором в пару килоом между MOSI и MISO
и на двунаправленную ногу программируемой микросхемы подать MISO.
Какая-то DS1302 у меня таким образом на меге103 на SPI висела рядом с именно SPI-устройствами, почти мегагерц на этом SPI был. Так что и это решается примитивным резистором, обтянутым термоусадкой в шлейфе.

Цитата(Alexey_N @ Jul 13 2005, 11:43)
ЕДИНСТВЕННЫЕ грабли при таком подходе - переключение кварцевых разонаторов. И вот, что я подумал - а может надо быть проще, приземленнее, что-ли smile.gif? А давайте просто оставим на плате место для двух (трех) кварцев, и ежели кому-то будет уж сильно невтерпёж прошивать попеременно то 5-вольтовые, то 1,8-вольтовые микрухи, - ну дык перетыкать тогда джамперами (или ВДМ-ками) нужный кварц, и все дела!
*

Ну так эта... точно так же можно джамперами поменять смысл тех пары ног, которые не вписываются в MOSI/MISO/SCK... smile.gif
jack_avenger
Неужели всё так и затихнет? Сделайте хотя бы чтоб АВРы можно было прошывать через USB + поддержку debugWIRE, а то уже надоело шыть через ICProg + FunCard!
Yra
Пора уже обсуждать по существу. Что- то никто не отваживается пока вывесить своё видение принципиальной схемы.
Вот для ускорения процесса моя P-CAD2001 библиотечка элементов
sK0T
Цитата(aal @ Jul 8 2005, 07:37)
2Yra
В ефинде десятки предложений TUSB3210 от кучи поставщиков с ценой от 3,5$ и выше....
В крайнем случае две-три недели подождёш.....

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

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



Как только Вы мне подскажите, как программу на Дельфи запустить под MacOS… :-)

Есть универсальный язык меж-программерского общения: Си и POSIX. :-)

Подход «главное, что бы работало» работает только до тех пор, пока программа пишется для себя.

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

(Не знаю, почему меня унесло в философию.)
jack_avenger
Давайте сначала с железом решать а уже потом с софтом!
ReAl
Цитата(m16 @ Jul 13 2005, 08:54)
Да  вот  он

Извиняюсь  это  протокол mkII
*

Так а где описание dW ?
Не описание протокола между PC и железкой, которая умеет dW, а описание протокола и интерфейса между программатором и программируемым кристаллом.
Или, для начала, хотя бы электрический интерфейс и времянки.
Это мог бы срисовать кто-то, у кого есть atmel-овская железка с dW - срисовать схему выходного каскада и осциллографом глянуть характерные времена. Тогда хоть в схему можно заложить, а уж софтом потом заняться.
hcube
5 копеек по поводу программатора RS232. Мы такой сделали, и успешно им пользуемся. Из деталей - два диода, MAX232, 4 конденсатора и резистор ;-)

Как работает - у ком-порта есть дополнительные служебные линии. Их и надо использовать. Все их можно дергать, как - см. документацию на ком-порт ;-). Питать программатор лучше всего от 5В питания контроллера. Всего используется 3 входящих линии (одна - через ограничитель напряжения на резисторе 10к и диодах) и 2 исходящие - MISO и TXD. RXD обьединен с MOSI.

Основной недостаток - оно довольно медленно шьет ;-) Ну, и, конечно, это внутрисхемный программатор, а не полноценный ;-)

Полноценный в ПРИНЦИПЕ можно было бы сделать на базе ПЛМ с реализацией числа управляемых выходов/входов по числу ножек. А дальше - логическая 1 = +5, логический 0 = земля, и еще надо скоммутировать 3 логических сигнала и ресет. Я так понимаю, в прошивку надо сделать 6 штук шин, и каждой ножке назначить свой номер. А потом просто загрузить в регистры шин адреса ножек - там где адрес шины совпадет с адресом ножки - открывается логика и коммутируется сигнал.
buran
Всех кто любит USB

USB-RS232 converter + USB-8/16bit converter + USB-EEPROM scratch pad
based on cheap AVR microcontroller


http://www.cesko.host.sk/IgorPlugUSB_RS232...f3c4d66a5ff84dd

цена вопроса данного устройства в 4-5 раз ниже нежели применение FT232BM

Парень просто молодец в данном вопросе.
BVU
Цитата(buran @ Jul 29 2005, 10:11)
Всех кто любит USB

USB-RS232 converter + USB-8/16bit converter + USB-EEPROM scratch pad
based on cheap AVR microcontroller


http://www.cesko.host.sk/IgorPlugUSB_RS232...f3c4d66a5ff84dd

цена вопроса данного устройства в 4-5 раз ниже нежели применение FT232BM

Парень просто молодец в данном вопросе.
*


Молодец то - молодец, но полный UART не реализовал, как в CP2101/02, FT8U232. Так что если "приспичит" пользовать сигналы управления, придется брать фирменные преобразователи... wink.gif
buran
Зато это устройство позволяет обмениваться данными с другими приборами в последовательном (сигналы TxD и RxD) и параллельном (сигналы D0-D7) кодах.


Тогда вот это
http://murid0.narod.ru/usb/usb.htm

а точнее вот это
http://murid0.narod.ru/usb/usb_lpt.gif

Все равно лучше чем FT232
ReAl
Цитата(buran @ Jul 29 2005, 10:45)
Зато это устройство позволяет обмениваться данными с другими приборами в последовательном (сигналы TxD и RxD) и параллельном (сигналы D0-D7) кодах.

Тогда вот это
http://murid0.narod.ru/usb/usb.htm

а точнее вот это
http://murid0.narod.ru/usb/usb_lpt.gif

Все равно лучше чем FT232
*

"чем лучше?"
"чем FT232!"

Не вижу у этой схемы ни грамма преимуществ перед FT232+ATmega48 - ни по цене, ни по компактности, ни по возможностям, ни, тем более, по перспективе развития возможностей.

У меня уже пару недель предотпускной аврал, скоро будет отпуск (наконец-то!), потом - послеотпускной аврал :-)
Так что я из серъёзных обсуждений пока выпал... :-(
ReAl
Цитата(buran @ Jul 29 2005, 09:11)
Всех кто любит USB
http://www.cesko.host.sk/IgorPlugUSB_RS232...f3c4d66a5ff84dd

цена вопроса данного устройства в 4-5 раз ниже нежели применение FT232BM

Парень просто молодец в данном вопросе.
*

И скорость ниже на порядок, не так ли?
Парень молодец, бесспорно, но это другое устройство, его нельзя сравнивать с FT232/FT245
AndyBig
Цитата
У меня уже пару недель предотпускной аврал, скоро будет отпуск (наконец-то!), потом - послеотпускной аврал :-)
Так что я из серъёзных обсуждений пока выпал... :-(

Аналогично sad.gif((
Так что прошу у всех прощения за свое выпадение...
Juk1976
Извините, что влезаю.
Была у меня тоже проблема с программатором по LPT (порт сгорел). w00t.gif

за 10 мин собрал на собачнике схемку а ля MAX232 + Mega8. В течении 3-х дней сделал програмку под мегу8 + Досовский вариант (паскаль) оболочку. Ещё день отлаживал. Уже год как работаю на ней. Удобна тем, что в любой момент могу внести любые поправки. До варианта виндоуза не дошли руки. smile3046.gif

В принципе USB может и удобнее - но опять - же нужно под винды писать оболочку (а впадло) + усложнение конструкции. tongue.gif
jack_avenger
Интересный программатор на software USB: http://www.fischl.de/usbasp/
валера
Цитата(Juk1976 @ Aug 3 2005, 14:17)
Извините, что влезаю.
Была у меня тоже проблема с программатором по LPT (порт сгорел). w00t.gif

за 10 мин собрал на собачнике схемку а ля MAX232 + Mega8. В течении 3-х дней сделал програмку под мегу8 + Досовский вариант (паскаль) оболочку. Ещё день отлаживал. Уже год как работаю на ней. Удобна тем, что в любой момент могу внести любые поправки. До варианта виндоуза не дошли руки. smile3046.gif

В принципе USB может и удобнее - но опять - же нужно под винды писать оболочку (а впадло) + усложнение конструкции.  tongue.gif
*


а чего у тебя порт LPT сгорел? я себе сделал STK200/300 на микросхеме 74HC244 и работает вроде нормально
Juk1976
Цитата(валера @ Aug 4 2005, 10:00)
Цитата(Juk1976 @ Aug 3 2005, 14:17)
Извините, что влезаю.
Была у меня тоже проблема с программатором по LPT (порт сгорел). w00t.gif

за 10 мин собрал на собачнике схемку а ля MAX232 + Mega8. В течении 3-х дней сделал програмку под мегу8 + Досовский вариант (паскаль) оболочку. Ещё день отлаживал. Уже год как работаю на ней. Удобна тем, что в любой момент могу внести любые поправки. До варианта виндоуза не дошли руки. smile3046.gif

В принципе USB может и удобнее - но опять - же нужно под винды писать оболочку (а впадло) + усложнение конструкции.  tongue.gif
*


а чего у тебя порт LPT сгорел? я себе сделал STK200/300 на микросхеме 74HC244 и работает вроде нормально
*



Сгорел от другой аппаратуры. А до этого я как раз СТКашкой и пользовался. w00t.gif
Alexey_N
Цитата(AndyBig @ Aug 3 2005, 14:26)
Цитата
У меня уже пару недель предотпускной аврал, скоро будет отпуск (наконец-то!), потом - послеотпускной аврал :-)
Так что я из серъёзных обсуждений пока выпал... :-(

Аналогично sad.gif((
Так что прошу у всех прощения за свое выпадение...
*



Ну что, господа, авралы заканчиваются? wink.gif
Я вот тоже сейчас только начинаю выплывать...
Так что, если есть кто живой - отзовитесь, а то я вот тут, вспоминая о летних деньках схемку нарисовал smile.gif.
Дык можем обсудить, да и в изготовление вкидывать...
Old1
Цитата(Alexey_N @ Sep 21 2005, 17:53)
... я вот тут, вспоминая о летних деньках схемку нарисовал smile.gif.
Дык можем обсудить, да и в изготовление вкидывать...
*

Нельзя ли выложить схему в другом формате, например jpg или gif...
AndyBig
В формате PDF...
Я пока еще не вышел из авралов (рабочих и шабашных) sad.gif
Но постараюсь накидать свой вариант схемы в ближайшую неделю.
ReAl
Цитата(Alexey_N @ Sep 21 2005, 17:53)
Цитата(AndyBig @ Aug 3 2005, 14:26)
Цитата
У меня уже пару недель предотпускной аврал, скоро будет отпуск (наконец-то!), потом - послеотпускной аврал :-)
Так что я из серъёзных обсуждений пока выпал... :-(

Аналогично sad.gif((
Так что прошу у всех прощения за свое выпадение...
*



Ну что, господа, авралы заканчиваются? wink.gif
Я вот тоже сейчас только начинаю выплывать...
Так что, если есть кто живой - отзовитесь, а то я вот тут, вспоминая о летних деньках схемку нарисовал smile.gif.
Дык можем обсудить, да и в изготовление вкидывать...
*


Я эпизодически сюда заглядываю. До где-то 23 октября меня почти нет.

По предлагаемой схеме - соображения, вопросы, предложения:

Против ft232 (а не ft245) я ничего особенно не имею. Тем более, что прикидка с ft245 из состояния неустойчивого равновесия стала скатываться в сторону atmega64+epm240tc100+sram(32..128k)+разъём ЖКИ (от классики HD44780 до графических, которым регенерацию epm240/epm570tc100 делает) и т.п. - это уже скорее evaluation board/лабораторки студентам/базовая плата для разных залипух, чем массовый программатор.

На всякий случай ft232.~reset отцепить от питания (подвязать туда резистором) и вывести весте с ft232.(eecs,eesck,eedata), землёй и питанием на колодочку 6-контактную - вдруг придётся после неосторожных движений перешивать 93c46.

ft232.(txled,rxled) кажется ведь с открытым коллектором, оставить один резистор и один светодиод - на мой взгляд, достаточно.

Зачем mega88.(txd,rxd) выведены на XP2? Dсё равно ведь намертво заняты работой с ft232.

Добавить на процессор светодиод "программирование".

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

Я не смотрел внимательно - в чём сакральный смысл применения MAX883, а не в минимум в 4-5 раз более дешёвого LP2951. И вообще - мы собираемся от программатора и саму программируемую плату питать? Или надо только подстроить питание программатора под питание программируемой платы?
Если первое - то больше половины моих плат всё равно фиг смогут быть запитаны через DC/DC от USB :-) Если второе, то не проще ли сделать делитель 62k/120k => 5В->3.3В, с него повторитель на подходящем операционнике. От повторителя запитать процессор, от колодки к программируемой плате через 1к резистор подать на тот же делитель.
Т.е. если питание платы не 3.3В, то пусть утягивает питание процессора в нужную сторону. Если применим это как программатор отдельно взятой микросхемы, затолканной в колодку - то "умолчательные" 3.3В вроде бы нормально для обозримого будущего.

А вот через ШИМ, irlml2803 и обратную связь через АЦП сразу сделать регулируемый источник 5..15В для подачи питания программирования/включения HI-V программирования.


Ну и по мелочам
- в плату (если её делать более-менне массовой) стоит сразу заложить пару конфигураций выводов DC/DC, их для маломощных есть несколько распространённых вариантов - так чтобы не переделывать плату под региональную/фирменную специфику.
- туда же заложить сразу пару стандарнтых цоколёвок 10-контактных (скажем, stk300 и байт-бластер), чтобы не лепить спецкабеля для самых массовых применений.


И ещё одно. А не заложить ли на свободные ноги ft232 не "контрольные точки", а штыри 2x5, да соответствующие штыри возле процессора (или задействовать стандартную колодку stk или byte-blaster). Цель - достойна великого Мюнгхаузена - обеспечить "самоподнятие" программатора. Не подключаем его никуда, надеваем стандартный шлейф между ft232 и mega88, запускаем спецпрограммку и через RTS/CTS/DTR/TXD стандартными функциями ОС либо через RTS/CTS/DTR/DSR bit-bang-ом заливаем в процессор бут-лоадер.
Будет очень медленно, но один раз можно и потерпеть. Зато вопрос курицы и яйца решён.

Ну, вроде бы, пока всё.
Ах, да, если делать стандартную колодку байт-бластера, то на 8 ногу надо вывести какой-то output compare для генерации XTAL. А на 6 и 7 ноги (задействованы у байт-бластера-II для программирования EPCS, висящих на альтеринах) - SCL и SDA - тогда это будет вариант универсальной малоконтактной колодки для низковольтного программирования.
prottoss
Извините, если вопрос ламерский. Мне интересно, а как можно защитить выводы контроллера от попадпния на них повышенного напряжения. Ведь никогда не исключен вариант, когда в колодку программирования вставляется неисправная микросхема, которую невозможно идентифицировать предварительным чтением. И при подаче программирующего повышенного напряжения программирующий МК, или еще чего нить в программаторе, может выйти из строя. Эту проблему кто нибудь перетирал?

UP!!!
prottoss
Задавал это вопрос в этом топике ранее, но что то какие то глюки - то ли на местном серваке, то ли у меня, что то не то с логином, по этому пробую еще раз:

Извините, если вопрос ламерский. Мне интересно, и сдесь это ни как не обсуждалось, а как можно защитить выводы контроллера от попадания на них повышенного напряжения. Ведь никогда не исключен вариант, когда в колодку программирования вставляется неисправная микросхема, которую невозможно идентифицировать предварительным чтением. И при подаче программирующего повышенного напряжения программирующий МК, или еще чего нить в программаторе, может выйти из строя. Эту проблему кто нибудь перетирал? -
Alexey_N
Цитата
Я эпизодически сюда заглядываю. До где-то 23 октября меня почти нет.
*

Ну что же, ничего страшного. С учетом наших общих темпов/загрузок smile.gif, 23-е это почти что завтра...
Цитата
На всякий случай ft232.~reset отцепить от питания (подвязать туда резистором) и вывести весте с ft232.(eecs,eesck,eedata), землёй и питанием на колодочку 6-контактную - вдруг придётся после неосторожных движений перешивать 93c46.
*

Ммм... Не помню что там этот ресет делает, по-моему сбрасывает микрушку. Так вот стоит ли его всерьез вешать в воздухе? Даже если подвязать резистором, то всё равно, как-то... Да и будет ли нужда у кого переписывать память? Это ведь память - не для всех, а "для ReAl" smile.gif. А мы все верим, что ты с ней справишься wink.gif.
Цитата
ft232.(txled,rxled) кажется ведь с открытым коллектором, оставить один резистор и один светодиод - на мой взгляд, достаточно.
*

Сорри, не понял. Предлагается оставить только одну лампочку? А тогда какую?
Цитата
Зачем mega88.(txd,rxd) выведены на XP2? Dсё равно ведь намертво заняты работой с ft232.
*

А вот тут - суперхитрость. Дело в том, что для ISP программирования филипсовских железочек типа LPC2106 удобно использовать СОМ-порт. Конечно шоколадно было бы применить мегу с двумя УСАРТами, например 162-ю. Но с точки зрения экономии и прогресса (88-я дешевле и быстрее) хотелось бы от этого дела воздержаться. Поэтому я предполагаю вариант юзания одного СОМ-порта - мега становится на всю сессию в 3-е состояние по выходу ТХ и не мешает напрямую с компа шить LPC.
Цитата
Добавить на процессор светодиод "программирование".
*

Согласен! Принято к исправлению.
Цитата
Добавить какие-то перемычки (разместить штыри на противоположной от XP2 стороне платы, чтобы можно было либо перемычки надевать, либо на "дочках", ежели таковые начнут появляться, задавать тип программатора (режим работы). Для этих "перемычек" можно задействовать одну ногу - adc6 и резистивный делитель.
*

Сорри, не согласен, или точнее пока не понимаю. Как вывести ноги с обратной стороны разъёма IDC?? Это либо ставить рядом другой разъём, либо уж совсем махровое радиолюбительство, типа втыкания "длинного" разъёма типа PLDL и юзания его с двух сторон... Не знаю, мне эта картинка, когда я её вообразил, представилась весьма отвратительной... Если это действительно "...кому-нибудь нужно"(с) , ну дык тогда проще воткнуть рядом два одинаковых разъёма, да и развести их параллельно... кому не нужно, лишнее ножницами отрежут.
ADC6 - это вообще-то даже не "нога" wink.gif, а просто вход АЦП... оно тебе для чего-то нужно? - Ну так на разъеме полно других входов АЦП... Прости, вот это место совсем не понял.
Цитата
Я не смотрел внимательно - в чём сакральный смысл применения MAX883, а не в минимум в 4-5 раз более дешёвого LP2951. И вообще - мы собираемся от программатора и саму программируемую плату питать? Или надо только подстроить питание программатора под питание программируемой платы?
Если первое - то больше половины моих плат всё равно фиг смогут быть запитаны через DC/DC от USB :-) Если второе, то не проще ли сделать делитель 62k/120k => 5В->3.3В, с него повторитель на подходящем операционнике. От повторителя запитать процессор, от колодки к программируемой плате через 1к резистор подать на тот же делитель.
Т.е. если питание платы не 3.3В, то пусть утягивает питание процессора в нужную сторону. Если применим это как программатор отдельно взятой микросхемы, затолканной в колодку - то "умолчательные" 3.3В вроде бы нормально для обозримого будущего.

А вот через ШИМ, irlml2803 и обратную связь через АЦП сразу сделать регулируемый источник 5..15В для подачи питания программирования/включения HI-V программирования.
*


Это - серьезный вопрос. (И, сорри, к сожалению пока не отмакетированный). Поэтому ни на чем я пока не могу уверенно настаивать. Скорее - этот узел призван просимволизировать примерный набор деталек для регулировки питалова как Меги, так и (возможно) программируемого девайса. То есть мы собираемся:
1.подстроить питание программатора под питание программируемой платы,
2.от программатора и саму программируемую плату питать, в случае, если это возможно/целесообразно (например зачастую приходится прошивать одну единственную микрушку на макетном поле - удобно при этом запитаться прям от программатора).
Насчет делителя я согласен, это частичное решение проблемы согласования уровней питания, но лишь частичное... МАХ нам должен позволить выставить любое напряжение, что наверное лучше.
Ещё раз прошу прощения, что руки не дошли, вот как только смакетячу это место - будем обсуждать этот узел уверенно.

Насчет HI-V программирования... а оно нужно? Мне пока не приходилось... но может действительно завести такую байду?

Цитата
- в плату (если её делать более-менне массовой) стоит сразу заложить пару конфигураций выводов DC/DC, их для маломощных есть несколько распространённых вариантов - так чтобы не переделывать плату под региональную/фирменную специфику.
- туда же заложить сразу пару стандарнтых цоколёвок 10-контактных (скажем, stk300 и байт-бластер), чтобы не лепить спецкабеля для самых массовых применений.
И ещё одно. А не заложить ли на свободные ноги ft232 не "контрольные точки", а штыри 2x5, да соответствующие штыри возле процессора (или задействовать стандартную колодку stk или byte-blaster). Цель - достойна великого Мюнгхаузена - обеспечить "самоподнятие" программатора. Не подключаем его никуда, надеваем стандартный шлейф между ft232 и mega88, запускаем спецпрограммку и через RTS/CTS/DTR/TXD стандартными функциями ОС либо через RTS/CTS/DTR/DSR bit-bang-ом заливаем в процессор бут-лоадер.
Будет очень медленно, но один раз можно и потерпеть. Зато вопрос курицы и яйца решён.

Ах, да, если делать стандартную колодку байт-бластера, то на 8 ногу надо вывести какой-то output compare для генерации XTAL. А на 6 и 7 ноги (задействованы у байт-бластера-II для программирования EPCS, висящих на альтеринах) - SCL и SDA - тогда это будет вариант универсальной малоконтактной колодки для низковольтного программирования.
*

Согласен. Принято к исполнению.
Буду также признателен, если разблюдовки байт-бластеров, СТК-ов, и пр. хрени кто-нибудь выложит либо здесь в виде картиночек, либо в ВиКи.
Alexey_N
Цитата(prottoss @ Sep 30 2005, 16:11)
Извините, если вопрос ламерский. Мне интересно, а как можно защитить выводы контроллера от попадпния на них повышенного напряжения.
*


Это - не страшно. Сжечь контроллер так дешево (программированием чего-то неисправного) вряд ли вообще возможно. Да и цена вопроса не сильно напрягает, железки сейчас всё дешевеют, люди дорожают wink.gif.
Иное дело, конечно, если лезешь что-то прошивать, когда комп и девайс болтаются под неопределенными потенциалами. Вот тут уже вполне реально навернуть даже не столько процессор, сколько Порт в писюке, что бывает и по деньгам чувствительно, да и вообще обидно. Для того, чтоб этого избежать мы тут и пытаемся замутить гальваническую развязку в программаторе.
prottoss
Цитата(Alexey_N @ Oct 3 2005, 23:28)
Иное дело, конечно, если лезешь что-то прошивать, когда комп и девайс болтаются под неопределенными потенциалами. Вот тут уже вполне реально навернуть даже не столько процессор, сколько Порт в писюке, что бывает и по деньгам чувствительно, да и вообще обидно. Для того, чтоб этого избежать мы тут и пытаемся замутить гальваническую развязку в программаторе.
*


С этим то все понятно и просто. Две быстродейстующие оптопары и вопрос снят
ReAl
Цитата(Alexey_N @ Oct 3 2005, 18:20)
Ммм... Не помню что там этот ресет делает, по-моему сбрасывает микрушку. Так вот стоит ли его всерьез вешать в воздухе? Даже если подвязать резистором, то всё равно, как-то... Да и будет ли нужда у кого переписывать память? Это ведь память - не для всех, а "для  ReAl" smile.gif. А мы все верим, что ты с ней справишься wink.gif.

Подвязать, подвязать... Да ещё и килоомом, не больше. И конденсатор прилепить smile.gif
Насколько я помню, reset как побочный эффект от сброса обеспечивает перевод в 3-е состояние ног работы с EEPROM, в результате его можно перешивать "третьим лицам".
Если при записи EEPROM родными инструментами от FTDI ошибиться с прошивкой, то, опять таки - насколько я помню, эти родные средства вкупе с драйверами перестают видеть кристалл (FT232) на шине USB.

Цитата(Alexey_N @ Oct 3 2005, 18:20)
Цитата
ft232.(txled,rxled) кажется ведь с открытым коллектором, оставить один резистор и один светодиод - на мой взгляд, достаточно.
*

Сорри, не понял. Предлагается оставить только одну лампочку? А тогда какую?

Оба выхода запаралелить на один светодиод. Пусть мигает и на TX, и на RX.
Не вижу нужды в лишней детализации.

Цитата(Alexey_N @ Oct 3 2005, 18:20)
Цитата
Зачем mega88.(txd,rxd) выведены на XP2? Dсё равно ведь намертво заняты работой с ft232.
*

А вот тут - суперхитрость. Дело в том, что для ISP программирования филипсовских железочек типа LPC2106 удобно использовать СОМ-порт.

Понял.

Цитата(Alexey_N @ Oct 3 2005, 18:20)
Цитата
Добавить какие-то перемычки (разместить штыри на противоположной от XP2 стороне платы, чтобы можно было либо перемычки надевать, либо на "дочках", ежели таковые начнут появляться, задавать тип программатора (режим работы). Для этих "перемычек" можно задействовать одну ногу - adc6 и резистивный делитель.
*

Сорри, не согласен, или точнее пока не понимаю. Как вывести ноги с обратной стороны разъёма IDC??

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

Цитата
ADC6 - это вообще-то даже не "нога" wink.gif, а просто вход АЦП... оно тебе для чего-то нужно? - Ну так на разъеме полно других входов АЦП... Прости, вот это место совсем не понял.

Вот именно потому, что "не нога" и для других применений точно не нужна - предлагается "аналоговые перемычки" smile.gif вывести на неё. Иначе обязательно когда-то кому-то одной ноги не хватит.


Цитата
1.подстроить питание программатора под питание программируемой платы,
2.от программатора и саму программируемую плату питать, в случае, если это возможно/целесообразно (например зачастую приходится прошивать одну единственную микрушку на макетном поле - удобно при этом запитаться прям от программатора).
Насчет делителя я согласен, это частичное решение проблемы согласования уровней питания, но лишь частичное... МАХ нам должен позволить выставить любое напряжение, что наверное лучше.
Ещё раз прошу прощения, что руки не дошли, вот как только смакетячу это место - будем обсуждать этот узел уверенно.

"1" делитель позволяет решить легко и просто, гораздо проще макса с шимом.
"2" ну будет возможность отдельную от всего микросхему на макетке запитываться только 3.3В - неужели недостаточно?

Цитата
Насчет HI-V программирования... а оно нужно? Мне пока не приходилось... но может действительно завести такую байду?

Да чтобы сразу была возможность поднимать микросхемы с по ошибке прошитым RSTDSBL. Или не по ошибке - мне у тини15 иногда одной ноги не хватает smile.gif
Хорошо (хм.. хорошенькое "хорошо" - сейчас мега48 дешевле, чем тогда тини26 брались) - в неликвидах завалялось пару сот тини26, их и выставляю в такие места.
ReAl
Цитата(Alexey_N @ Oct 3 2005, 18:20)
Сорри, не согласен, или точнее пока не понимаю. Как вывести ноги с обратной стороны разъёма IDC?? Это либо ставить рядом другой разъём, либо уж совсем махровое радиолюбительство, типа втыкания "длинного" разъёма типа PLDL и юзания его с двух сторон... Не знаю, мне эта картинка, когда я её вообразил, представилась весьма отвратительной... Если это действительно "...кому-нибудь нужно"(с) , ну дык тогда проще воткнуть рядом два одинаковых разъёма, да и развести их параллельно... кому не нужно, лишнее ножницами отрежут.

Вдогонку на всякий случай - имелось ввиду эти разъёмы НЕ с одинаковыми сигналами иметь. Просто наиболее часто употребимое вывести на штыри 2х5 на одной стороне платы, а остальное - на штыри 2х10 на параллельной ей (заодно это будет и как "ключ" для "дочки" - разное число штырей на разных сторонах, не ошибёшься с поворотом "дочки" на 180 градусов.
halfdoom
А насколько критичен выбор Меги88 ? Тактовая 20Мгц врядли будет использована (16 думаю хватит за глаза). Мега8 полностью совместима по ногам, но несколько беднее внутри. А вот с поставками 88й проблем гораздо больше (для моего региона).
ReAl
Цитата(halfdoom @ Oct 5 2005, 10:40)
А насколько критичен выбор Меги88 ?  Тактовая 20Мгц врядли будет использована (16 думаю хватит за глаза). Мега8 полностью совместима по ногам, но несколько беднее внутри.  А вот с поставками 88й проблем гораздо больше (для моего региона).
*

Ну, хотя бы для того, чтобы подчеркнуть - в случае чего ставится мега168 smile.gif
Конечно, софт надо будет писать так, чтобы не сильно разгоняться на расширенные возможности 88 по сравнению с 8. Внимательно раскидать - чтобы какой-то нужный ШИМ или output compare, используемый для генерации XTAL не попал на канал, отсутствующий в меге8.

Вот как самое заинтересованное лицо - проверь предлагаемую схему на эту тему smile.gif
BVU
Рано или поздно образцы ATmega88/168 появятся везде и будут так же доступны как сейчас ATmega8, а ATmega8 - станет редкостью (что мы сейчас наблюдаем по некоторым позициям AVR). Если имеется целесообразность к дальнейшему развитию возможностей программатора с учетом появления новых образцов семейства AVR и т.п. использовать ATmega88/168 просто необходимо.
halfdoom
Цитата(ReAl @ Oct 5 2005, 14:49)
Конечно, софт надо будет писать так, чтобы не сильно разгоняться на расширенные возможности 88 по сравнению с 8. Внимательно раскидать - чтобы какой-то нужный ШИМ или output compare, используемый для генерации XTAL не попал на канал, отсутствующий в меге8.

Решил свести все ноги в таблицу, что-бы было проще рассуждать и документировать:
Код
Port    M8 & M88        M88 only        Prog_02

PB0     ICP1            PCINT0/CLKO     PIN1
PB1     OC1A            PCINT1          OC1A, PWM for MAX833
PB2     ~SS/OC1B        PCINT2          PIN2
PB3     MOSI/OC2        PCINT3/OC2A     MOSI
PB4     MISO            PCINT4          MISO
PB5     SCK             PCINT5          SCK
PB6     XTAL1           PCINT6          XTAL1
PB7     XTAL2           PCINT7          XTAL2

PC0     ADC0            PCINT8          x
PC1     ADC1            PCINT9          x
PC2     ADC2            PCINT10         PIN3
PC3     ADC3            PCINT11         PIN4
PC4     ADC4/SDA        PCINT12         SDA
PC5     ADC5/SCL        PCINT13         SCL
none    ADC6                            x
none    ACD7                            0.5VEE

PD0     RXD             PCINT16         RXDFT
PD1     TXD             PCINT17         TXDFT
PD2     INT0            PCINT18         PIN5
PD3     INT1            PCINT19/OC2B    PIN6
PD4     XCK/T0          PCINT20         PIN7
PD5     T1              PCINT21/OC0B    PIN8
PD6     AIN0            PCINT22/OC0A    PIN9
PD7     AIN1            PCINT23         PIN10

Видно, что целесообразно избегать использования PWM возможностей таймеров 0 и 2, а также ноги CLKO. Вроде, это не существенные ограничения.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.