Должны ли программы AVR всегда начинаться с инструкции относительного перехода? - PullRequest
4 голосов
/ 05 июня 2009

Все примеры программ AVR, которые я когда-либо видел, начинаются с кода, такого как:

.org $0000
    rjmp Reset
    ; ...
Reset:
    ; Start of program

Если я не использую какие-либо прерывания, могу ли я обойтись без rjmp и запустить программу с $0000?

1 Ответ

7 голосов
/ 05 июня 2009

В ячейках памяти программ сразу после $ 0000 расположены векторы прерываний. Я полагаю, что если вы не используете прерывания, вы можете запустить свою программу без rjmp. Из спецификации ATmega 128:

If the program never enables an interrupt source, the interrupt vectors are 
not used, and regular program code can be placed at these locations. This is
also the case if the Reset Vector is in the Application section while the 
interrupt vectors are in the Boot section or vice versa.
...