使用TC387芯片配置Autosar OS发现主核跑飞了,其他核正常运行OS任务切换,PC指针指向_IF_CONST区域,D[4]寄存器为1,D[15]寄存器为4,根据这两个寄存器用计算规则计算出的TCN和tiN好像有问题,在Trap中跑飞,请问一下,大家有什么思路推荐吗
共2条
1/1 1 跳转至页

2楼
1. 软件错误:检查程序代码中是否存在错误,比如访问无效的内存地址、未初始化的变量等。检查是否有其他任务或中断处理程序修改了主核的寄存器值,导致主核跑飞。
2. 中断嵌套问题:主核可能在处理中断的过程中发生了嵌套中断,导致任务切换出问题。可以检查中断服务程序的优先级设置是否正确,并确保中断服务程序不会嵌套调用自身。
3. 资源竞争问题:可能存在多个任务或中断对某个共享资源并发访问的情况,导致了资源竞争和不确定的行为。可以检查代码中是否存在共享资源的竞争,通过使用互斥锁或者其他同步机制来解决。
4. 硬件错误:检查硬件是否工作正常,比如检查电源供应稳定性、外设是否正确连接等。可以尝试重启芯片或以调试模式重新启动系统看是否问题得到解决。
5. Autosar OS配置问题:检查Autosar OS的配置是否正确,确保配置文件中的任务和中断设置与实际应用需求一致。检查堆栈和任务栈大小是否足够。
6. 调试和跟踪:使用调试工具来跟踪主核跑飞的原因。可以通过跟踪程序计数器(PC)的变化,查看程序执行路径,确定引起主核跑飞的具体位置。可以通过查看寄存器的值来进一步分析问题的原因。
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持示波器】树莓派PICOW网页烟花被打赏18分 | |
【换取手持示波器】树莓派PICO逻辑分析仪被打赏16分 | |
【分享评测,赢取加热台】教你五分钟本地部署蒸馏版本的DeepSeekR1-7B被打赏12分 | |
【换取手持示波器】蓝牙音箱更换电池被打赏8分 | |
【换取手持示波器】鼠标更换微动开关被打赏10分 | |
【我要开发板】4.传感器移植被打赏50分 | |
【换取手持数字示波器】RISC-VGCC使用-fno-omit-frame-pointer编译选项实现栈回溯被打赏29分 | |
【分享评测,赢取加热台】+开关电源简述被打赏7分 | |
STM32WBA55ADC采集电池电压任务2被打赏1分 |