Полная версия этой страницы:
Atmega128+Avreal
Раньше все шилось на ура. Сейчас прога выдает сообщение:Can't resync. Пробовал использовать ключ -о0 не помогает. Поглядел осциллом пины RX и TX. Вижу, что проц не отвечает на посылки по RX. Есть подозрения, что скончался пин RX(TX работает, т.к. прога уже прошитая в контроллер после рестарта выдает начальное сообщение на ПК). Или может быть защитные биты стали определенным образом, что он не шьется? Посоветуйте, как оживить его? JTAG поможет?
Возможно, fuse-биты запрограммированы на работу от внешнего генератора.
Попробуйте подать тактовую на XTAL1, можно с помощью того же AVReal (см. хелп)
Цитата(vet @ Nov 17 2005, 13:14)

Возможно, fuse-биты запрограммированы на работу от внешнего генератора.
Попробуйте подать тактовую на XTAL1, можно с помощью того же AVReal (см. хелп)
Я пробовал(ключ -о0), не помогает.
MichaZ
Nov 17 2005, 11:54
До этого контроллер программировался нормально или это первая его прошивка?
если первая то посмотрите внимательно какие значения фузов зашивают на заводе.
У меня такая же проблема с ATTiny2313 - программировалась-программировалась а потом перестала.В чем причина-не знаю.Возможно потому что она была Slave по I2C,а в 2313 SPI(использую при программировании) и I2C на тех же ножках.Оба процессора соединяются только линией тактов(SCL).На данные ставлю перемычки.не должно бы это быть причиной..
Да, контроллер некоторое время шился нормально. Попытался использовать PonyProg, тоже не может его прошить, даже кристалл не распознается. Видимо, отработал свое контроллер

С вашим случаем тоже сталкивался. Я ставил перемычки на SPI, чтобы отключать контроллер на время программирования от остальной схемы. И еще делал простую вещь: в начале программы делал небольшую задержку, а уже после нее конфигурировал SPI. Тоже были мысли, что при работающем SPI и входе в режим программирования(т.е. подаче сброса и т.п.) выводы для программирования не переключались в нужное состояние(ввод, вывод).
andrvisht
Nov 17 2005, 15:48
Цитата(KSN @ Nov 17 2005, 16:27)

Да, контроллер некоторое время шился нормально. Попытался использовать PonyProg, тоже не может его прошить, даже кристалл не распознается. Видимо, отработал свое контроллер

Попробуйте воспользоваться для программирования PDO PDI. Встречался контроллер который только так работал. може поможет...
Что такое PDO PDI?
andrvisht
Nov 18 2005, 07:30
Цитата(KSN @ Nov 18 2005, 07:40)

Что такое PDO PDI?

Ну это у mega128 есть альтернативные выводы для программирования
В доке в разделе программирования это описано
я делал так:
MOSI (PDI) PE0 выв. 2
MISO (PDO) PE1 выв. 3
SCK PB1 выв. 11
RST выв. 20
PEN выв. 1 к VCC через резистор или просто висячим.
Что значит альтернативные? Атмега128 по доке(используем только последовательное программирование) может прошиваться через JTAG или через SPI.
"Even though the SPI Programming interface re-uses the SPI I/O module, there is one
important difference: The MOSI/MISO pins that are mapped to PB2 and PB3 in the SPI
I/O module are not used in the Programming interface. Instead, PE0 and PE1 are used
for data in SPI Programming mode as shown in Table 128."
Т.е. при программировании через SPI используются выводы PE0, PE1. Они же RX, TX соответственно. У меня все так и сделано.
Или Вы имели в виду, что надо подключится к PB1, PB2?
andrvisht
Nov 18 2005, 07:56
Все понял, я имел ввиду именно к PE0 и PE1.
Значит все верно.
У меня было как-то что при обрыве программирования фузы менялись, благо JTAG есть.
IgorKossak
Nov 18 2005, 09:04
Цитата(KSN @ Nov 18 2005, 10:53)

Т.е. JTAG должен помочь?
Если он не запрещён как по умолчанию.
Цитата(IgorKossak @ Nov 18 2005, 15:04)

Цитата(KSN @ Nov 18 2005, 10:53)

Т.е. JTAG должен помочь?
Если он не запрещён как по умолчанию.
По умолчанию он как раз разрешен(если верить datasheet). Но я прошивал бит JTAGEN=1, т.е запрещал. Теперь к кристаллу никаким способом не достучаться?
andrvisht
Nov 18 2005, 10:39
Цитата(KSN @ Nov 18 2005, 13:39)

Цитата(IgorKossak @ Nov 18 2005, 15:04)

Цитата(KSN @ Nov 18 2005, 10:53)

Т.е. JTAG должен помочь?
Если он не запрещён как по умолчанию.
По умолчанию он как раз разрешен(если верить datasheet). Но я прошивал бит JTAGEN=1, т.е запрещал. Теперь к кристаллу никаким способом не достучаться?
Теперь наверное придется попробовать все варианты

((
А для чего Вы его запрещали ???
Просто если это ради ног, то можно использовать бит JTD
установка его 2 раза в 1 поможет решить проблему.
Дело в том, что раньше использовалась 103 атмега. Таких чудес еще не было. Ессно, что при переходе на 128 программа была минимально изменена. Про использование JTAG и мыслей не было...
muravei
Nov 19 2005, 05:10
Может помочь -!
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.