创建了两个任务,两个队列,串口的中断优先级为15,初始化在main函数里。两个任务中一个是开串口接收中断,开启串口接收中断后挂起,另外一个任务接收两个队列的数据,并循环发送固定格式数据。串口接收中断里,接收到数据后解析数据并通过两个消息队列发送数据。但是只要串口进入接收中断立即跳入HardFault异常。
热门产品 :
CH32X035: 32位USB+USB PD单片机
创建了两个任务,两个队列,串口的中断优先级为15,初始化在main函数里。两个任务中一个是开串口接收中断,开启串口接收中断后挂起,另外一个任务接收两个队列的数据,并循环发送固定格式数据。串口接收中断里,接收到数据后解析数据并通过两个消息队列发送数据。但是只要串口进入接收中断立即跳入HardFault异常。
您好,当使用RTOS时,使用软件压栈,中断函数采用__attribute__((interrupt()))声明,而不是__attribute__((interrupt("WCH-Interrupt-fast")))。附件手册为RISC-V平台移植RTOS手册,可以参考一下。
按照您的方法已经解决了,非常感谢
调到吐血,把FreeRTOS中断看了一遍,咋也没想到会是这个原因