This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

z_stack2007协议栈中串口0 的中断怎么写啊,那位大神能够帮我指点下

//P0中断函数 

  //P0_5

#pragma vector = P0INT_VECTOR

__interrupt void P0_ISR(void)

 {   EA = 0;   if(P0IFG>0)   

  {          P0IFG = 0; //清标志位     }

  P0IF = 0;   set_powermode(4); //唤醒   EA = 1;

 }

这样报错了,报错是没有申明P0_ISR,这该怎么做呢?

  • 类似 HAL_ISR_FUNCTION( halUSART0Isr, URX0_VECTOR )  这样的,这是串口0的接收中断函数,在ioCC2530.h中有全部的Interupt Vector

  • 先谢谢您的回答,请问下,我这样写,在外界向串口1输入数据时候,这中断函数怎么没有反应呢?协议栈中是用DMA方式读取数据的,这没有反应是不是和DMA方式有关呢?如果有关,我怎么修改呢?

    HAL_ISR_FUNCTION( halUSART1Isr, URX1_VECTOR )

    {

    HAL_ENTER_ISR();

      HalUARTWrite(1,"ok!",3); 

    CLEAR_SLEEP_MODE(); HAL_EXIT_ISR();

    }