а, ну да, понятно![]()
а, ну да, понятно![]()
Всё дело в низком быстродействии МК (семейство MSC51) , который используется в Скорпионовском контроллере.Сообщение от jerri
Вот фрагмент кода, завершающего обработку прерывания по запросу от Спектрума:
Тоесть после снятия WAIT контроллер еще 8 мксек занят, прежде чем будет выполнять остальные задачи.Код:movx @DPTR, A ;Снять /WAIT ;---- Восстановление регистров и выход из прерывания mov DPH, R0 ;1 mov R0, temp_R0 ;1 pop PSW ;2 pop ACC ;2 reti ;2 ;8 мксек при 12 Мгц ;----------------------------------
За это время Спектрум при тактовой частоте 3.5 Мгц выполнит несколько команд (можете сами прикинуть сколько).
PS. То же самое выполняется на ATTiny2313 на порядок быстрее, что исключает указанную проблему.
Последний раз редактировалось caro; 25.09.2010 в 13:47.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)