А теперь правильный код резервирования и восстановления контента при прерывании...
(«Телесистемы»: Конференция 'Микроконтроллеры и их применение')

миниатюрный аудио-видеорекордер mAVR

Отправлено Builder++ 16 апреля 2004 г. 01:57
В ответ на: Кусок кода обработчика прерываний отправлено prcoder 15 апреля 2004 г. 21:30


ISR
clrb GIE
;------ ;резервировать W и STATUS
movwf TempW ;может быть любой банк
swapf STATUS,w ;swap-ируем STATUS в W
banko 0 ;банк0
movwf TempSTATUS ;сохраняем в банке0 (регистр TempSTATUS) ;--------------------------------------------------------------------------
;--------------------------------------------------------------------------
swapf TempSTATUS,w ;sawp-ируем TempSTATUS в W
;(одновременно восстанавливаем нужный банк)
movwf STATUS ;Толкаем в STATUS
swapf TempW,f ;переворот-- не трогая "Zero"!
swapf TempW,w ;переворот/
retfie ;GIE устанавливается при использовании retfie! ;------------------------------------------------------------------------------

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru