UCOS_II 系统有中断就会死机,不知道是什么问题?
STM32+UCOS2.91UCOS_II 系统有中断就会死机,不知道是什么问题。下面是串口的中断函数,只要有一个串口中断系统就“OVER”了,
不知道中断函数这样写是不是正确的,还是别的地方有问题,哪位知道的帮忙指导 下,谢谢。
void USART2_IRQHandler(void)
{
static u8 rx_count = 0;
OS_CPU_SRcpu_sr;
OSIntEnter();
OS_ENTER_CRITICAL();
OSIntNesting++;
OS_EXIT_CRITICAL();
if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET)
{
USART_ClearITPendingBit(USART2,USART_IT_RXNE);
// if(!Uart2Rx)//数据已经被读取
// rx_count = 0;
//
// Uart2Rx = USART_ReceiveData(USART2);
// if(rx_count >2)
// rx_count = 0;
}
OSIntExit(); /* Tell uC/OS-II that we are leaving the ISR */
} 中断死在哪个地方了?
我是这样写中断的,可用.
{
OSIntEnter();
//自己的代码
OSIntExit();
}
OS_ENTER_CRITICAL();
OSIntNesting++;
OS_EXIT_CRITICAL();
这一部分应该重复了OSIntEnter(); 的工作. akwkevin2011 发表于 2012-12-9 12:32 static/image/common/back.gif
中断死在哪个地方了?
我是这样写中断的,可用.
{
多谢提醒,我再试试看。 这个真的不错 可以在线调试,看看PC指向哪里了?
页:
[1]