嵌入式硬件平台有哪些_支持linux系统的主板解决

嵌入式硬件平台有哪些_支持linux系统的主板解决,第1张

嵌入式硬件平台有哪些_支持linux系统的主板解决 对于嵌入式系统来说,软件细节较多,任何一条语句都可能引入问题,因此软件问题定位的技巧尤其的重要。

前面讲了如何定位嵌入式系统的硬件问题,本次我聊一下,使用什么技巧来定位碰到的软件问题。

软件问题,具有一定复杂性,表现也千奇百怪,很难一概而论有哪些具体的分类。

因此,我以调试手段,来切入讨论怎么解决软件问题。

硬件仿真调试工具对于嵌入式平台,最好的调试手段,是在线仿真器。

“在线”即连接到目标板,“仿真器”是最早的仿真硬件的延续叫法,现在多是调试器,不仅可以配MCU来完成运行、停止、断点、烧写,还能完成变量读写、寄存器访问等功能。

因为调试工具的强大功能,所以我们通常强烈建议使用调试工具,这样可以高效率地排查问题。

最重要的是,实时参与,效率很高。

ARM芯片常用的调试器串口打印消息如果没有仿真器,那该如何定位问题呢。

可供后备选择的是串口,即UART。

通过串口,我们可以将感兴趣的数据,从串口打印出来,然后在PC机上使用软件接收数据,来分析是否正确。

例如,程序进了哪个函数、哪个分支、参数是什么值等,都可以从串口发送出去。

这样就可以间接替代仿真器,实现内部关键信息的掌握。

需要注意的是,打印的数据最好和代码模块及位置可以一一对应,方便准确提供定位问题的信息。

利用串口打印变量和分支信息屏幕、按键、LED等对于极简的单片机系统,如何调试软件呢?那我们只能就地取材,系统有什么资源,那就用什么。

比如,我们可以先调通硬件的屏幕或LED显示。

然后,可以在屏幕上显示感兴趣的信息,或者用LED的闪烁与组合,来表示不同的含义。

利用按键来模拟断点,触发停止或运行。

这种方法,是不得已而为之,效率较低,是没有其他手段的最后选择。

总结尽管软件问题各式各样,但大部分的错误,都发生在逻辑判断、数值计算这两个方面。

我们可以利用有效的资源,尽量掌握程序实际执行到的分支,来推断逻辑和计算是否有问题。

各种手段基本都是围绕这个目的来开展问题定位。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/646482.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-17
下一篇 2022-04-17

发表评论

登录后才能评论

评论列表(0条)

保存