Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум разработчиков электроники ELECTRONIX.ru _ uC/OS-II _ Помогите разобратся что оно от меня хочет.

Автор: drapoz May 6 2013, 13:30

Привет. Помогите разобратся что оно от меня хочет. Суть проблемы в следующем , собрал я в кучу uCOS-II с uC/GUI в IAR v6.3 под контролер STM32F103VE , все компилируется без ошибок . Заливаю все в контролер, а на экране 3.2inc пусто , смотрю через отладчик и вижу что меня закидывает в файл os_cpu_a.asm в эту процедеру :
OSStartHighRdy
LDR R0, =NVIC_SYSPRI14 ; Set the PendSV exception priority
LDR R1, =NVIC_PENDSV_PRI
STRB R1, [R0]

MOVS R0, #0 ; Set the PSP to 0 for initial context switch call
MSR PSP, R0

LDR R0, =OSRunning ; OSRunning = TRUE
MOVS R1, #1
STRB R1, [R0]

LDR R0, =NVIC_INT_CTRL ; Trigger the PendSV exception (causes context switch)
LDR R1, =NVIC_PENDSVSET
STR R1, [R0]

CPSIE I ; Enable interrupts at processor level

OSStartHang
B OSStartHang ; Should never get here

и весит на последней строке " B OSStartHang ; Should never get here". Так как я в асемблере полный ноль и не знаю что с этим делать. Помогите подскажите почему отладчик останавливается в этом месте.

Автор: jcxz May 9 2013, 16:48

Покажите свой main()

Автор: UDmitry Jun 12 2015, 18:57

А настройках необходимо включить start from main. Галочку в одном месте поставить. И попробуйте не включать прерывания и посмотрите что будет.

Автор: _basile Aug 25 2015, 12:03


OSStartHang
B OSStartHang ; Should never get here

Так, она тебе и пишет, что ты должен теперь оставаться здесь и ждать прерывания от системного таймера, на выходе из обработчика
которого тебя перебросят в задачу с наивысшим приоритетом..
OSStartHang - метка, а B OSStartHang - перейти на метку OSStartHang.


Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)