[an error occurred while processing this directive]
|
Как у меня было раньше...
Был контроллер и памяти у него всегда было меньше 64k(12k...20k).
С давних времен я пользовался своим загрузчиком для отладки.
Прошиваю его во флэшку контроллера ~1.5k и через UART могу много чего делать: читать-писать XRAM, IRAM, регистры...
Пишу свою программу и транслирую ее на адрес 8000h, который всегда лежит за пределами Flash-памяти контроллера. Загружаю программу, она выполняется из XRAM (начиная с адреса 8000h), а я наслаждаюсь отладкой:)
Вот начало загрузчика:
org 0000h
jmp pr_rst ; точка входа по сбросу
org 0003h
jmp 8003h
org 000bh
jmp 800bh
org 0013h
jmp 8013h
org 001bh
jmp 801bh
org 0023h
jmp 8023h
Сейчас памяти 64k, и такое не проходит. Прошиваю свой загрузчик через ISP.
Все читается пишется как и раньше, но на выполнение программу не запустить, поэтому: загружаю программу, проверяю - все загружено, подключаю EA к "0", делаю RST (и как мне это видится программа должна выполняться из XRAM, где она и находится), начинают шуршать ALE и PSEN, но RD молчит.
Я где-то вычитал что есть два регистра защиты: SSB - можно устанавливать через ISP, HSB - управляется только через параллельный режим.
Может быть в HSB дело? И если это так, то как его можно записать через ISP?
PS. orl AUXR,#00000010b пробовал в загрузчике, но ничего не изменилось.
E-mail: info@telesys.ru