Привет. Помогите разобратся что оно от меня хочет. Суть проблемы в следующем , собрал я в кучу 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". Так как я в асемблере полный ноль и не знаю что с этим делать. Помогите подскажите почему отладчик останавливается в этом месте.
Покажите свой main()
А настройках необходимо включить start from main. Галочку в одном месте поставить. И попробуйте не включать прерывания и посмотрите что будет.
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)