ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
25 ноября
251835 Топик полностью
feo_kos (04.05.2011 23:30, просмотров: 101) ответил feo_kos на 1)битом I в CPSR управляют здесь?:
Согласен что рано,не понимаю пока, но, без этого ведь работать не будет? Этот ход с IRQ_HANDLER из какого-то примера содрал. Вот как в книге Редькина:
"В регистр AIC_SVRn загружается адрес соотвествующей программы обработки. Команда, разрешённая по адресу исключения вектора прерываний ARM работает с векторизацией: LDR PC, [PC,#-&F20]. Линия nIRQ переходит в активный режим, если бит I регистра CPSR сброшен и автоматически выполняется последовательность действий: 1.Содержимое CPSR загружается в регистр SPSR_irq, текущее значение программного счётчика загружается в регистр связи прерываний R14_irq, а в программный счётчик R15 загружается значение 0x18. В следующем цикле в ходе выборки по адресу 0x1C ядро ARM корректирует значение R14_irq путём декрементирования его на четыре. 2.Ядро ARM переходит в режим обработки обычных прерываний IRQ. 3.Когда команда, загруженная по адресу 0x18 выполняется, программный счётчик загружается значением, прочитанным из регистра AIC_IVR."
Что по адресу 0x18 находится он не написал или я не понял. Так вот я подумал, что нужно задать: 1)условие прерывания на таймере; 2)разрешить прерывание от системной переферии; 3)векторизацию источника; 4)условие прерывания(по высокому уровню сигнала); 5)остаётся разрешить на ядре в регистре CPSR битом I. как это сделать тоже непонятно.