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

Вот в очередном отпуске сваял новый программатор. Не знаю, насколько он будет популярен по сравнению AVR910, но тем не менее он собран на макетной плате и успешно работает. На своем сайте еще его не выложил, так как хочется избежать будущих ошибок в том, что еще в нем не реализовано. Так как хочется опубликовать схему единожды и потом ничего не перекраивать. Это, как понимаете не для себя, а для тех, кто решится повторять. А реализовать собираюсь, кроме собственно программатора для AVR еще и JTAG и не только для AVR. Так вот, пока печатная плата не создана физически, хочу посоветоваться по поводу схемотехники, возможно, что то упустил или не допонял.
По схеме:
Старался использовать доступные компоненты. Так как на борту АРМ на блокировочных конденсаторах решил не экономить. Возможно, для кого то трудно будет достать фильтр USB STF202-22. Я посчитал это лучшим вариантом, чем несколько резисторов и две диодных сборки. В конце коноцов есть альтернатива - соединить перемычками выводы 2-5 и 3-4 оного.
Назначение линий выходного разъема:
1.TGT_TD - MOSI(ISP_AVR) - TDI(JTAG)
2.TGT_B2 - REFCLK(ISP_AVR) - TMS(JTAG) - PDI_D(XMEGA) - возможно отладочный порт
3.TGT_RST - RESET
4.TGT_CLK - SCK(ISP_AVR) - TCK(JTAG) - PDI_CLK(XMEGA)
5.TGT_RD - MISO(ISP_AVR) - TDO(JTAG)

Так как AT91SAM7S64 имеет встроенный стартовый загрузчик, то внешнего программатора не надо. Все прошивается консольной утилитой в любой Windows, при этом не надо после прошивки даже подменять драйвер... покаsmile.gif
Схема и вариант ПП ниже. Размеры платы - 75х32мм

Что реализовано в данный момент:
1. Протокол-программирование как STK500v2
2. Протокол-программирование как JTAGICEmkII в режиме ISP
3. Протокол JTAGICEmkII в режиме JTAG.

Да, забыл добавить, плату затачивал под лазерный утюг.

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


Ссылка на сообщение
Поделиться на другие сайты
Это здорово!
Есть ли возможность добавить в Ваш программатор режим debug консоли (обсуждалось в соседнем топике)?


Цитата(Зайцев Иван @ Feb 26 2010, 06:57) <{POST_SNAPBACK}>
Поддержка ATXMega есть?
Судя по обозначения на схеме есть.


Цитата(Зайцев Иван @ Feb 26 2010, 06:57) <{POST_SNAPBACK}>
Какие чипы он поддерживает?
Думается все те, что и JTAG ICE MK2 (все существующие AVR8 + XMega).

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


Ссылка на сообщение
Поделиться на другие сайты
Может тогда и поддержку j-link(мт-линк) туда вставить? Раз уж там АРМ стоит.

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


Ссылка на сообщение
Поделиться на другие сайты
SAM7, используемый в вашем программаторе, имеет питание 3.3В. AVR может иметь питание от 1.8В до 5В. Не хватает согласования уровней.

В микросхеме DD2 сигнал RST надо перенести на вторую половину DD2 ( туда, где CLK).

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата(demiurg_spb @ Feb 26 2010, 12:46) <{POST_SNAPBACK}>
Это здорово!
Есть ли возможность добавить в Ваш программатор режим debug консоли (обсуждалось в соседнем топике)?


Судя по обозначения на схеме есть.


Думается все те, что и JTAG ICE MK2 (все существующие AVR8 + XMega).

Тогда должен и AVR32 поддерживать

В аттачах только пэдэфки, а где бинарь?
Изменено пользователем Зайцев Иван

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


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

Цитата(dimka76 @ Feb 26 2010, 12:11) <{POST_SNAPBACK}>
SAM7, используемый в вашем программаторе, имеет питание 3.3В. AVR может иметь питание от 1.8В до 5В. Не хватает согласования уровней.

а чем нст244 не согласователь, питаются от таргета же...

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата(GDI @ Feb 26 2010, 10:51) <{POST_SNAPBACK}>
Может тогда и поддержку j-link(мт-линк) туда вставить? Раз уж там АРМ стоит.

+1000
Тогда соберу. Чтобы было... А так уже на кортексы от НХП переползаю постепенно. Минуя Хмегу...

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата(Склихасовский @ Feb 26 2010, 19:33) <{POST_SNAPBACK}>
а чем нст244 не согласователь, питаются от таргета же...
HCT244 только на 5В, HC244, как на схеме, при питании таргета выше 4.5В по уровням не бьется. А ниже 3.3В ей на вход с SAM7 будет идти больше рекомендованного, да и единичка у SAM7 2В. В TBDML ставили панельку чтобы можно было менять HC/HCT в зависимости от питания таргета smile.gif

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата(SergeiCh @ Feb 26 2010, 21:28) <{POST_SNAPBACK}>
HCT244 только на 5В, HC244, как на схеме, при питании таргета выше 4.5В по уровням не бьется. А ниже 3.3В ей на вход с SAM7 будет идти больше рекомендованного, да и единичка у SAM7 2В. В TBDML ставили панельку чтобы можно было менять HC/HCT в зависимости от питания таргета smile.gif
По моим рассуждениям - все бьет.
У САМа выходы - открытый коллектор. На входе 244НС стоят подтяжки R10-R15 которые как раз и подтягивают уровни к питанию 244НС.

Цитата(Зайцев Иван @ Feb 26 2010, 10:57) <{POST_SNAPBACK}>
Какие чипы он поддерживает?
Пока что все AVR
Цитата
Поддержка ATXMega есть?
Вообще планируется добавить

Цитата(dimka76 @ Feb 26 2010, 16:11) <{POST_SNAPBACK}>
SAM7, используемый в вашем программаторе, имеет питание 3.3В. AVR может иметь питание от 1.8В до 5В. Не хватает согласования уровней.
Про это уже объяснил
Цитата
В микросхеме DD2 сигнал RST надо перенести на вторую половину DD2 ( туда, где CLK).
А это еще зачем?

Цитата(GDI @ Feb 26 2010, 15:51) <{POST_SNAPBACK}>
Может тогда и поддержку j-link(мт-линк) туда вставить? Раз уж там АРМ стоит.
Вообще идея такая есть.

Цитата(Зайцев Иван @ Feb 26 2010, 16:19) <{POST_SNAPBACK}>
Тогда должен и AVR32 поддерживать. В аттачах только пэдэфки, а где бинарь?
Я пока только хотел обсудить схему.
На следующей неделе, после "генеральных" испытанийsmile.gif выложу ехе-шник, который заливает прошивку. Там все будет автоматом. Собираешь, запускаешь утилиту, она прошивает, перетыкаешь шнур USB, пользуешься...

Цитата(demiurg_spb @ Feb 26 2010, 14:46) <{POST_SNAPBACK}>
Есть ли возможность добавить в Ваш программатор режим debug консоли (обсуждалось в соседнем топике)?
Планирую для этого использовать линию TGT_B2 - порт РА21 МК - вход USART1

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата(prottoss @ Feb 27 2010, 04:09) <{POST_SNAPBACK}>
По моим рассуждениям - все бьет.
У САМа выходы - открытый коллектор. На входе 244НС стоят подтяжки R10-R15 которые как раз и подтягивают уровни к питанию 244НС.


DD3 питается от таргета, если питание оного будет составлять 1.8В, распознает ли SAM такую единичку? Это же чуть больше половины его питания, а гарантированный уровень единички это 0.7*Uпитания = 2.31В.

С другиой стороны при VTGT<CPU_3V3 на вход EN_R будет подаваться напряжение больше питания DD3.

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата(dimka76 @ Feb 27 2010, 12:03) <{POST_SNAPBACK}>
DD3 питается от таргета, если питание оного будет составлять 1.8В, распознает ли SAM такую единичку? Это же чуть больше половины его питания, а гарантированный уровень единички это 0.7*Uпитания = 2.31В.
Здесь уже будет работать внутренний пуллап САМа, который будет потягивать выхода DD3 к напряжению питания САМа
Цитата
С другиой стороны при VTGT<CPU_3V3 на вход EN_R будет подаваться напряжение больше питания DD3.
За подсказку спасибо. Пропустил эту подтяжку. Добавлю еще один резистор на подтяжку EN_R.

По поводу толерантности. Лучшим вариантом, конечно будет ставить серию AHC - она толерантна к 5 вольтам при напряжении питания 2..5 вольт.

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата(prottoss @ Feb 27 2010, 16:15) <{POST_SNAPBACK}>
Здесь уже будет работать внутренний пуллап САМа, который будет потягивать выхода DD3 к напряжению питания САМа


не будет, т.к. выход DD3 не с открытым коллектором (стоком)


Цитата(prottoss @ Feb 27 2010, 16:15) <{POST_SNAPBACK}>
По поводу толерантности. Лучшим вариантом, конечно будет ставить серию AHC - она толерантна к 5 вольтам при напряжении питания 2..5 вольт.


А может глянуть в сторону LVC ?

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата(dimka76 @ Feb 28 2010, 00:54) <{POST_SNAPBACK}>
не будет, т.к. выход DD3 не с открытым коллектором (стоком)
Мда, тут не совсем хорошо вяжется.
Цитата
А может глянуть в сторону LVC?
Вообще изначально гляделось в сторону SN74LVC16T245. Или хотя бы 2Х SN74LVC8T245. Но дорогие, блин, да и не совсем хорошо доставабельные. А хотелось бы чтоб минимум трудностей с приобретением комплектующих (опять же не о себе). Вот и ломаю голову с согласованием до сих пор.

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата
Вот и ломаю голову с согласованием до сих пор.

Может стоит поставить полевик в качестве преобразователя получится дешево.

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


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация