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

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

Отправлено potor 27 октября 2003 г. 10:08
В ответ на: знакомые с прерываниями в пике помогите разобраться отправлено pauk 27 октября 2003 г. 09:21

далее
tasks dw offset task1
dw offset task2
...
dw offset task10
в каждом преыванмии по таймеру,сохраняем состояние старого процесса(берем адрес возврата из стека, состояния регистров, и сохраняем это все в буфере для этого процесса, возвращаем стек в предыдущее состояние) и изменяем PID например
inc PID
inc PID
в зависимости от полученного PID висстанавливаем состояние для него
ну ессно проверяем PID на переполнение и делаем jmp
jmp tasks+PID
извини, что не для пика, но один из вариантов


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

Ответы



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

E-mail: info@telesys.ru