sinat_35690503 2017-07-07 05:46 采纳率: 0%
浏览 1156

串口接受中断中能否发信号量OSSemPost(task1_Sem); LPC1768串口接受中断。

想在LPC1768串口接受中断中给任务1发一个信号量,让程序跑转到任务1执行。
以下是接受完一帧数据,crc校验以后发的信号量

    if(SRBuf0[RcvCounter-1] == LOW(TempCrc))
                    {        
                            UartStatus=0;
                            RcvCounter=0;
                            Uart2ReceiveFinish=1;
                            Uart2ReceiveFinish2=1;
    _            ****            OSSemPost(task1_Sem);      ****   _
                    }

发现在串口接受中断中发信号量,程序就会死在发信号量的地方,进而进入一个死循环中
;---------------------------------------------------------------------------------------------------------
;--- 不可屏蔽异常处理程序,进入死循环----------------------------------------------------------
;--- NMI Exception Handlers (infinite loops which can be modified) ------------------------------
;---------------------------------------------------------------------------------------------------------
BusFault_Handler\
PROC
EXPORT BusFault_Handler [WEAK]
****_ B ._****
ENDP

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 DIFY API Endpoint 问题。
    • ¥20 sub地址DHCP问题
    • ¥15 delta降尺度计算的一些细节,有偿
    • ¥15 Arduino红外遥控代码有问题
    • ¥15 数值计算离散正交多项式
    • ¥30 数值计算均差系数编程
    • ¥15 redis-full-check比较 两个集群的数据出错
    • ¥15 Matlab编程问题
    • ¥15 训练的多模态特征融合模型准确度很低怎么办
    • ¥15 kylin启动报错log4j类冲突