Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: ATMega
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
bav
привет всем!

пишу программатор для меги. что-то как-то плохо получается:

-делаю ресет

-разрешаю последовательное программирование, получаю эхо (последовательное включилось)

-стираю кристалл

-устанавливаю сектор

-пишу в него данные

-устанавливаю следующий

.....

-читаю все данные



в итоге:

1. нулевой сектор пустой (записано 0xff)

2. в каждом первые два слова пустые.

делал задержку после выбора сектора - не помогло.

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

вопрос: как заставить писать в нулевой сектор? что делаю не так? crying.gif
bodja74
Сначала загружаете страницу данными ,а потом команда "запись страницы"
Второй глюк нужно подождать ,пока не запишется страница.

ЗЫ я через бутлоадер писал ЕЕПРОМ 512байт ,у меня по флагам (тоесть максимальная скорость)
уходило около 2сек на запись.
bav
страницу я пишу целиком. пишутся все, кроме нулевой.
задержки делал до секунды на блок - не помогало.
уточнусь, программирование делаю по SPI с помощью USB-byteblaster для Altera.
CD_Eater
Проверьте длительность ожидания выполнения ChipErase. Увеличьте на всякий случай раза в 2.
bav
увеличение длительности до 10 секунд не помогло sad.gif
посмотрел внимательней что и как шьется. оказолось, что прога шьется со смещением на один сектор. т.е. что должно быть по адресу 0x0000 шьется по адресу 0x0100
сделал программное смещение, т. е. начинаю шить с адреса 0xff00 ( -256) и все работает хорошо.
кто что может сказать по этому поводу?

нашел проблему:
сначало пишим блок данных в сектор, а затем даем команду, в какой сектор записываем. поэтому и получалось что устанавливал номер следующего сектора.
правда, в доке об этом ничего не нашел.
defunct
Цитата(bav @ May 15 2007, 05:56) *
т.е. что должно быть по адресу 0x0000 шьется по адресу 0x0100
сделал программное смещение, т. е. начинаю шить с адреса 0xff00 ( -256) и все работает хорошо.
кто что может сказать по этому поводу?

Ищите ошибку в вашей программе.
Чип работает как по даташиту.

Цитата
правда, в доке об этом ничего не нашел.

А что там находить то?
После загрузки данных в буфер страницы,
командой записи страницы - указывается куда записать данные буфера.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.