Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Проблема с STK-500
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
SpiritCoat
Доброго времени суток. Сразу предупрежу, что я полный нуб и начал изучать микроконтролллеры буквально с неделю.
Проблема следующая: деод 6 на корпусе программатора не мигает, хотя должен (на отладочной плате все работает). При попытке опознать микрококонтроллер в AVR studio ругается ошибкой (ISP mode Error). Т.е. вообще запрограммировать микроконтролер стало невозможно. Дело в том, что отошел какой-то контакт, отвечающий за PB6 и надо обращаться к производителю? Или в чем может быть дело?
Использую мк Atmega16, программатор STK-500.
SpiritCoat
Никто не подскажет, в чем траблы (кроме головного мозга)? Вроде никаких конфигураций не менял, просто AVR-studio ни с того ни с сего перестал видеть микроконтроллер…
И вообще легко ли повреждается плата программатора? Может, я недостаточно нежно извлекал атмегу из него)
InvisibleFed
Насколько я Вас понял, контроллер установлено что рабочий (хотя не известно из Вашего поста, как именно вы его и где проверили, чем тактировали и пр.). Допустим. Соединяете шлейфиком линии порта МК со светодиодами, заливаете ту же прошивку, все светодиоды мигают, а один - нет? Так? Гм... странно.
Раз Вы сами сказали, что пока не сильно шарите, то вот Вам список глупых (читай - неопытных) ошибок при которых борда не видит чип (сам многое из этого делал):
1. Забыли подключить шлейф ISP или воткнули его неверно.
2. Вставили МК не в ту кроватку или (о боже!!! а я такое видел!!! =)) не той стороной (это они на первый взгляд одинаковые - читать инструкцию).
3. Слишком большая частота SPI при программировании (настраивается в одной из закладок окна для заливки AVRStudio).
Прошу колег дополнить...

Шьется но не работает?
1. Неверный код.

Если все линии порта раотают, а одна нет:
1. Неверно сконфигурирован регистр DDR.
2. Линия просто мертвая, паленая (проверяется переназначением порта - если на другом порту тот же код исполняется и не допущена ошибка 1 - наверняка мертвая).

Чаще всего ошибка в нашей невнимательности. Но может оно и впрямь умерло...
Вообще, вся наука - это разрешение неопределенностей. Чем их меньше, тем ближе результат, но тем скучнее процесс. В Вашем случае необходимо:

1. Проверит прямоту своих рук. Для этого можно взять где-нить другую такуюже борду, с другим контроллером и проверить, что там все работает, если вы делаете все точно также. Опыт не полностью достоверный.
2. Взять другой контроллер (такой же по фамилии, но другой экземпляр) и проверить, что с ним рабоает.
3. Тогда методом исключения можно сделать вывод, что борда фурычит не совсем верно.
SpiritCoat
Спасибо за отзыв.

Цитата(InvisibleFed @ Apr 15 2008, 17:04) *
Насколько я Вас понял, контроллер установлено что рабочий (хотя не известно из Вашего поста, как именно вы его и где проверили, чем тактировали и пр.).


На схеме, собранной на макетной плате, к которой подключен данный МК все работает. Прога самая простая - "змейка", т.е. зажигающиеся один за другим деоды. Соответственно данная прога была залита на МК через этот же самой stk-500 и все прекрасно работало.
Со вчерашнего же дня после очередного включения МК в порт SCKT3100A3 заметил, что тот самый пресловутый LED6 не подает сигнала, а AVR studio при попытке обращения к МК выдает ошибку и оставляет следующее в логах:

Reading FLASH input file.. OK
Entering programming mode.. FAILED!
Leaving programming mode.. OK!


Цитата(InvisibleFed @ Apr 15 2008, 17:04) *
1. Забыли подключить шлейф ISP или воткнули его неверно.
2. Вставили МК не в ту кроватку или (о боже!!! а я такое видел!!! =)) не той стороной (это они на первый взгляд одинаковые - читать инструкцию).


С этим все в порядке, 200 раз перепроверял.

Цитата(InvisibleFed @ Apr 15 2008, 17:04) *
3. Слишком большая частота SPI при программировании (настраивается в одной из закладок окна для заливки AVRStudio).


Если имеется ввиду вкладка Board, то у меня уставновлены следующие значения и я их не трогал:





Цитата(InvisibleFed @ Apr 15 2008, 17:04) *
Если все линии порта раотают, а одна нет:
1. Неверно сконфигурирован регистр DDR.
2. Линия просто мертвая, паленая (проверяется переназначением порта - если на другом порту тот же код исполняется и не допущена ошибка 1 - наверняка мертвая).


1. Как это уточнить?
2. А могла она так внезапно без видимых причин "умереть"? Использовал STK меньше недели, все работало.

Насчет переназначения портов хорошая идея, думал об этом. Только где это можно осуществить?
vovanse
Если при программировании пишет

Цитата
Reading FLASH input file.. OK
Entering programming mode.. FAILED!
Leaving programming mode.. OK!


значит не может запрограммировать, т.е. программа не записалась еще в контроллер и до конфигурации DDR регистра дело не дошло. Если все установленно правильно, то не работает контроллер или STK. Шлейф для ISP исправен? Если имеется осциллограф, то можно посмотреть доходят ли сигналы программирования до контроллера, отвечает ли он что-то (SCK, MOSI, RESET - это сигналы от STK, MISO - от контроллера). Джамперы на плате правильно установленны? Fuses трогали? Могли там что-то поменять? Попробуйте запрограммировать в паралельном режиме (Programming mode - PP/HVSP). Если ничего не помогает попробуйте поменять контроллер.
SpiritCoat
При попытке программирования в паралельном режиме пишет:

Reading FLASH input file.. OK
Entering programming mode.. OK!
Erasing device.. OK!
Programming FLASH .. OK!
Reading FLASH .. OK!
WARNING: FLASH byte address 0x0000 is 0x5F (should be 0x0F).. FAILED!
Leaving programming mode.. OK!

Fuses трогал, снял галочку с JTAG interface Enabled.
Осциллографом не обладаю)

Пробовал с двумя МК Atmega8515 (пустой) и Atmega16 (с залитой на него "змейкой")
vovanse
А Read Signature если нажать что пишет? Нули? Или то, что совпадает с установленным устройством?
SpiritCoat
Цитата(vovanse @ Apr 15 2008, 19:05) *
А Read Signature если нажать что пишет? Нули? Или то, что совпадает с установленным устройством?


При ISP mode нули и ошибку :

Setting mode and device parameters.. OK!
Entering programming mode.. FAILED!
Leaving programming mode.. OK!

При PP/HVSP все проходит нормально и 0x5F 0x5F 0x5F.
SpiritCoat
Видмо, проблема все-таки была в контроллерах - поставил новый, СТК воспринимает его более адекватно. Сигнатуры читает, память очищает, даже записывает программы, правда выдает ошибку:

Reading FLASH input file.. OK
Entering programming mode.. OK!
Erasing device.. OK!
Programming FLASH .. OK!
Reading FLASH .. FAILED!
Leaving programming mode.. FAILED!

Но простенькая программа вроде не смотря на это работает как надо. В чем может быть несостыковка?
kolobok0
Цитата(SpiritCoat @ May 21 2008, 19:31) *
...Но простенькая программа вроде не смотря на это работает как надо. В чем может быть несостыковка?


бывает скоростями поиграть нужно.

удачи Вам
(круглый)
SpiritCoat
Цитата(kolobok0 @ May 21 2008, 19:38) *
бывает скоростями поиграть нужно.


Что имеется в виду?
vovanse
Имеется ввиду скорость ISP - ISP Frequency. Какая там стоит? Попробуйте 57.60 кНz если больше установленна.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.