Умные вопросы
Войти
Регистрация
Помогите разобраться с прерываниями PIC микроконтроллеров !
Короче, немного научился программировать в машинных кодах контроллер PIC12F629, так как в ассемблере чуть что не так и программа не компилируется в код. Вот до чего дошел! Пока для изучения пишу програмки, занимающие не боле 20 ячек памяти. Но застрял на прерываниях. Как пишут в литературе, когда включается бит прерывания, например при переполнении счётчика, основная программа контроллера приостанавливается и происходит переход на подпрограмму обработки прерываний. Но какой командой из этого списка команд (всего в таблице 35 команд) установить адрес расположения подпрограммы прерывания и где его записать, в какой ячейке памяти ?
5 года
назад
от
Лось
2 Ответа
▲
▼
0
голосов
обычно, это делается не инструкцией ЦП, а директивой ORG (или что там у PIC) обявляется адрес обработчика прерывания (вектор) , откуда идет jump на саму подпрограмму. Завершается подпрограмма обработки прерывания инструкцией возврата (RETFIE/RETLW)
Но я так предполагаю, т. к ни разу не занимался PIC ассемблером, но так сделано почти везде.
5 года
назад
от
RosariaSeabo
▲
▼
0
голосов
у любого МК есть так называемые векторы прерывания, куда переходит МК при возникновении конкретного прерывания, всё это прописано в даташите. и примеров в сети куча.
обработка прерывания это функция, выход из этой функции команда RETFIE.
RETLW это выход из обычной функции.
5 года
назад
от
Ринат
Связанные вопросы
2
ответа
Почему летать может каждый, а водить машину не каждому дано?
5 года
назад
от
Lobbertikax
2
ответа
Дозиметры какие лучше?
4 года
назад
от
лялюня
1
ответ
Как правили молодые короли, принцы? Или во всем опирались на советников?
5 года
назад
от
Люсьена Копытова