Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: нужно ли разрешать прерывания?
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
777777
Нужно ли после инициализации как-то разрешать прерывания? Другие контроллеры при сбросе запрещают прерывания и после инициализации преиферии его нужно разрешать, а как в АРМ? Вообще-то сейчас в программе все прерывания работают, может они разрешаются в стартапе? Но там вроде ничего нет, просто переход на main. Но тогда кто ему устанавливает указатель стека, вызывает конструкторы классов, инициализирует статические переменные?
Lotor
Цитата(777777 @ Dec 21 2011, 09:15) *
Но тогда кто ему устанавливает указатель стека, вызывает конструкторы классов, инициализирует статические переменные?

В стартапе это и делается.
scifi
Цитата(777777 @ Dec 21 2011, 09:15) *
Но там вроде ничего нет, просто переход на main.

Это не тот main. Там переход на код инициализации, а уже из этого кода - на main. Пошагали бы отладчиком вместо того, чтобы по каждому пустяку в форуме отмечаться.
777777
Цитата(Lotor @ Dec 21 2011, 09:20) *
В стартапе это и делается.

И прерывания разрешаются? Но у меня в файле startup_stm32f10x_hd.s написано только:

Код
Reset_Handler   PROC
                EXPORT  Reset_Handler             [WEAK]
                IMPORT  __main
;                IMPORT  SystemInit
;                LDR     R0, =SystemInit
;                BLX     R0              
                LDR     R0, =__main
                BX      R0
                ENDP



Цитата(scifi @ Dec 21 2011, 09:29) *
Это не тот main. Там переход на код инициализации, а уже из этого кода - на main. Пошагали бы отладчиком вместо того, чтобы по каждому пустяку в форуме отмечаться.

Действительно, а мне почему-то казалось, что я попадал в мой main прямо из стартапа.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.