реклама на сайте
подробности

 
 
> Снова Bootloаder, "Подводные камни" AVR109
Stas633
сообщение Apr 21 2007, 20:49
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 105
Регистрация: 6-01-06
Пользователь №: 12 901



Не нашел форуме описания подобной ситуации, поэтому "выкладываю", может кому пригодится..

Повторил bootloader по AVR109.
Попробовал программировать Мегу при помощи AVRProg.
Cтолкнулся с проблемой верификации памяти после программирования.

При "детальном рассмотрении" обнаружил, что в ASM-программе в AVR109 отсутствует ре-инициализация памяти (RWW) после операций записи страницы. И это не смотря на то, что
в тексте AVR109 эта "проблема" упоминается:
Код
...Note that if the RWW section accessed without re-enabling it after an erase or write
operation, all addresses in the RRW section read 0xFFFF....


После "подправки" программы проблемы "не стало":
Код
; void write_page (unsigned int adr, unsigned char function);
_write_page::

        MOV R31,R17        
        MOV R30,R16        ;move adress to z pointer (R31=ZH R30=ZL)
        OUT SPMCR,R18      ;argument 2 decides function
        SPM                ;perform pagewrite

; "поправка" программы
; ------------------------------------
    Wait_spm1:
        in R16, SPMCR
        sbrc R16,0
        rjmp Wait_spm1

        LDI R16,  $11     ; enable RWW
        OUT SPMCR, R16     ;
        SPM
; ------------------------------------

        RET


" dw $FFFF" и "nop" удалил как ненужные (а для чего используется dw $FFFF.. до сих пор не пойму smile.gif )

Вопрос... Почему же Atmel не "ерратил" ошибку? Или я чего-то не увидел, и напрасно предъявляю прететзии?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
sensor_ua
сообщение Apr 23 2007, 13:02
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 266
Регистрация: 22-04-05
Из: Киев
Пользователь №: 4 387



Бит RWW есть не у всех мег. Я писал ещё для 163-й - у неё нетwink.gif
Оно в примере нафиг не нужно, потому как никто выше границы RWW-секции писать не даёт - потому вопросов не возникало. Если очень нужно заэкономить место под аппликейшн, ну тогда флаг в руки.


--------------------
aka Vit
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 21:04
Рейтинг@Mail.ru


Страница сгенерированна за 0.01367 секунд с 7
ELECTRONIX ©2004-2016