定义了消息队列,串口dma空闲中断收到数据后,把数据发送到队列里。
初始化后没有问题,串口发送消息也没有问题
另外一个事情是:从机I2C收到数据后,发送一个邮件,另一个线程等到邮件后处理。当发邮件和收邮件线程运行一段时间后,就会改变上面的消息队列控制块。这两件事并无关联,不知道怎么就影响了控制块,然后我再往串口发数据,就会死机
当收发邮件这件事运行一段时间后,串口队列控制块就被破坏了,如下图,再用串口发数据就会死机
查看更多
pc_data_pack 结构体怎么定义的?pc_cmd_to_queue 函数中你确定size小于你的缓存容量?
找到原因了
在I2C中断里面定义了一个数组,目的是为了解是怎么中断的,数组每次ind++,越界了。查了一天,还好找到问题了
欢迎发表与嵌入式相关的技术分享、开发技巧、工具介绍、技术设想、职业心得、行业评论等对他人有启发,排版优雅的文章
回到 顶部
发布 问题
分享 好友
手机 浏览
投诉 建议
回到 底部