хм, а таблица векторов прерываний начинается с адреса 0? По адресу 0x00 RAM/FLASH? Т.е. шьешь/грузишь??
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
Отправлено
иа
04 января 2004 г. 15:17
В ответ на:
Не могу запустить внешние прерывания у XC161
отправлено AV 04 января 2004 г. 02:03
Составить ответ
|||
Конференция
|||
Архив
Ответы
Ответ:
—
AV
(04.01.2004 16:14, 326 байт)
Режим смены банков памяти cs0<->cs1 включен? т.е. что в регистрах BUSCONx / ADDRCONx -не понял ram с какого адреса? Просмотри содержимое памяти, где обработчик - все ок?
—
иа
(04.01.2004 17:29,
пустое
)
Ответ: Кажется нашёл в чём дело
—
AV
(04.01.2004 19:16, 131 байт)
Ответ: Точно всё заработало. EINIT -страшная команда. убрал её в кейловском мониторе и всё заработало
—
AV
(04.01.2004 19:26,
пустое
)
к выходу ,кажется einit так и называется,чо- нить подключено?? Команда кажется, ничего не делает, только выводит на соотв pin 1. В модулях произв Kessler на этот pin был подключен GAL, меняющий банки памяти местами и светодиод свидетельствующий ready... Т.е. все зависит от схемотехники...
—
иа
(04.01.2004 20:33,
пустое
)
Ответ:
—
AV
(04.01.2004 19:02, 95 байт)
Прерывание сработает, под монитором все пишется только в ram, если по адресу 0 flash, то таблица обработчиков векторов не запишется при загрузке программы, соотв jmp __far на irq_handler() не будет... + прога должна виснуть...
—
иа
(04.01.2004 20:36,
пустое
)
Ответ:
—
AV
(04.01.2004 18:58, 1112 байт)
т.е. если все побробнее...
—
иа
(04.01.2004 15:18,
пустое
)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru