|
Проблема с переходом от AS2 на AVRISP mkII |
|
|
|
May 6 2009, 08:18
|
Группа: Новичок
Сообщений: 7
Регистрация: 6-05-09
Пользователь №: 48 715

|
Здравствуйте! Не могли бы вы помочь со следующей проблемкой. В серийном производстве плат, на которых установлена AtMega128, мы долгое время использовали as2 (обычный, старый, не m) из-за того, что разработчики предоставили нам именно его. Сейчас мы закупили для другой цели несколько AVRISP mkII, в связи с чем я решил попробовать использовать один из них для прошивки тех плат. Нужно мне это из-за давней мечты о программировании из командной строки, раздражает меня программа as2isp. Так вот, проблема в следующем. Перепробовал несколько плат, стабильно avrisp работает только на одной, на остальных даже сигнатура не читается, Entering programming mode.. FAILED и все, причем выдает сообщение о том, что на SCK возможно КЗ. Хотя бывали моменты правильного чтения сигнатуры на этих платах, но это единичные случаи. С as2 те же самые платы работают без проблем, сигнатура сходу читается на частотах SPI вплоть до 115 кГц. С avrisp пробовал понижать частоту вплоть до 6 кГц, пробовал вроде и ниже на отдельных платах - не хотят и все. Возможно, проблема может быть в следующем: 1) На плате по SPI подключен еще и сигнальный процессор TMS, они с АтМегой иногда конфликтуют в случае неправильной прошивки, но в данном случае дело явно не в этом - на as2 все нормально. Может быть, линии слишком нагружены? 2) На линии RESET стоит микросхемина TPS3801L30, которая генерит низкий уровень ресета или из внешнего сигнала сброса (с разъема SPI), или из-за недостаточного напряжения питания (начальная инициализация). Я так понимаю, это стандартно, но вдруг именно она вносит какие-то искажения? 3) Может быть, влияет длина проводников? Плата подключается к программатору через контактные площадки (ложе гвоздей), потом идет на программатор, общая длина проводников для avrisp сантиметров 30-40, не больше, у as2 явно длиннее, там чуть ли не метр, так что это вряд ли. Думаю, понятно, что с первыми двумя пунктами я ничего поделать не могу, если только для интереса что-то выпаять, так как плата уже разведена так, а не иначе. Но если кто сможет помочь (например, поменять что-то в самом avrisp), буду очень признателен.
|
|
|
|
|
 |
Ответов
|
May 8 2009, 09:23
|
Группа: Новичок
Сообщений: 7
Регистрация: 6-05-09
Пользователь №: 48 715

|
Цитата(Александр Куличок @ May 7 2009, 22:12)  для уменьшения емкостной нагрузки поставьте на SCK последовательно резистор (100+ Ом) последовательно между мегой и TMS.
P.S. TMS случаем SCK'ем не пытается управлять? Проблема в том, что я не знаю точно, что делает в этот момент TMS, но тем не менее с as2 все работает. Повозился еще с осциллографом, у меня получилось следующее. RESET и на плохих, и на хороших платах одинаковый (под плохими платами понимаю здесь те, на которых не получается считать сигнатуры атмеги с помощью avrisp, но c as2 сигнатура читается). Повесил на SCK подтяжку 5кОм. При этом на хороших платах на SCK после включения питания 2.8 В, а на плохих какое-то страное напряжение, порядка 1.5 В. Так вот, на плохих платах при попытке считать сигнатуру эти 1.5 В поднимаются на долю секунды до 2.8 В, а потом возвращаются к 1.5. Никаких синхроимпульсов там нет. На хороших же идут синхроимпульсы. Если же подключить as2, то там после 1.5 В идут синхроимпульсы с амплитудой 2.8 В, а потом, после чтения сигнатуры, напряжение возвращается к 1.5 В. То есть несмотря на эту подсадку, as2 нормально управляет этим выводом. Пробовал еще по советам повесить резистор 2кОм на RESET между разъемом ISP и супервизором, ничего не изменилось... Прилагаю к сообщению упрощенную схемку системы, может быть, посоветуете, что еще попробовать... К сожалению, допаивать что-то я могу только в разрыв между программатором и разъемом ISP, как, например, упомянутые подтяжка на SCK и 2к на RESET.
Сообщение отредактировал vul - May 8 2009, 09:24
|
|
|
|
|
May 8 2009, 15:31
|
Местный
  
Группа: Свой
Сообщений: 408
Регистрация: 21-10-06
Из: Санкт-Петербург
Пользователь №: 21 527

|
Цитата(vul @ May 8 2009, 12:23)  К сожалению, допаивать что-то я могу только в разрыв между программатором и разъемом ISP, как, например, упомянутые подтяжка на SCK и 2к на RESET. Ну и впаяйте туда буфер типа нс125. Или вообще одногейтовый только на SCK.
|
|
|
|
|
May 12 2009, 06:59
|
Группа: Новичок
Сообщений: 7
Регистрация: 6-05-09
Пользователь №: 48 715

|
Цитата(Qwertty @ May 8 2009, 19:31)  Ну и впаяйте туда буфер типа нс125. Или вообще одногейтовый только на SCK. Тут подсказали идею, которая выглядит очень верно, только неясно что с этим делать. Дело в том, что этот супервизор TPS3801 задерживает низкое напряжение на выходе RESET относительно входа MR на 200 мс. Это означает, что avrisp уже давно снял ресет и продолжает формировать последующую временную диаграмму, а атмега еще в ресете. as2, по видимому, дольше выжидает после снятия ресета, поэтому с ним и меньше проблем. Возникает вопрос, нельзя ли найти прошивку, в которой это время увеличено. Все больше подозреваю, что дело все же в этом. Видел информацию о какой-то прошивке клона avrisp mkII, к родному программатору она подходит, никто не знает? И есть ли в этом смысл? А по поводу буфера - может ли это помочь? И как его впаивать? Просто z-буфер, который пропускает информацию в направлении от ISP к атмеге на линии SCK? а открывать его каким сигналом?
|
|
|
|
Сообщений в этой теме
vul Проблема с переходом от AS2 на AVRISP mkII May 6 2009, 08:18 SysRq Осциллоскопом посмотрите что на PDO\PDI... May 6 2009, 11:11 vul Цитата(SysRq @ May 6 2009, 15:11) Осцилло... May 6 2009, 11:17 MDD На счет обычных АВРов не скажу, я их другим програ... May 6 2009, 11:46 vul Цитата(MDD @ May 6 2009, 15:46) На счет о... May 6 2009, 12:08 vul Пробежался по ножкам, reset идеальный, на хорошей ... May 6 2009, 13:26 defunct Цитата(vul @ May 6 2009, 16:26) Может быт... May 6 2009, 23:33  vul Цитата(defunct @ May 7 2009, 03:33) Может... May 7 2009, 05:32    Qwertty Цитата(vul @ May 12 2009, 09:59) Все боль... May 12 2009, 07:12  Corvus Так проблема совершенно не решается, посколько про... May 21 2009, 06:13 vesago Попробовать на период прошивки меги глушить TMS. Д... May 8 2009, 09:28 VVM Проблема решается весьма просто !
Подключите в... May 21 2009, 05:59
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|