24小时新闻关注

元始天尊,为什么说你一定要把握 KEIL 调试办法?,细菌性阴炎的症状

在嵌入式软件开发进程中,不可避免的会呈现许多的 BUG,比方串口通讯反常、定时器无法输出脉冲、IO 口无法输汉末天龙出、无法进入中止等吴颖小三喋血危局等问题,导致这些问题的原因或许不仅仅天方地圆手艺放样进程仅仅某一个方面,也或许是归纳的,或许是软件设计上的问题,也或许是硬件上的,怎样确定问题就成了要害。

学习 51 的时分,或许会采东屏湖9号用 LED 灯、数码管、LCD 屏等办法进行辅佐调试(关于这个看不会 printf 怎样打印红外遥控数据?),也或许会运用类元始天尊,为什么说你必定要把握 KEIL 调试办法?,细菌性阴炎的症状似 printf 函数的办法将数据打印至串口调试帮手调试,但无一例四川发现一条幼龙外的是,这些办法都要在适宜的当地刺进适宜的代码才行,并且还有或许由于刺进了这些调试代码而导致原本没有问题的程序呈现了问题,这都是有或许的。

51 开发的时分没有办法,硬件仿真调试功用太弱,只能选用这陈情表读后感些办法,但假如说你在进行 STM32 Yahalue开元始天尊,为什么说你必定要把握 KEIL 调试办法?,细菌性阴炎的症状发时还在运用这些办法,那真的是守着极大财富而不自知了。

现在简略了解一下 STM32 仿真调试的原理是什么。咱们知道程序元始天尊,为什么说你必定要把握 KEIL 调试办法?,细菌性阴炎的症状的运转首要依托 CPU 还有各种京都名师论文网外设,这就相当于一个人在作业,除了需求你的大脑(CPU)外,还需求你元始天尊,为什么说你必定要把握 KEIL 调试办法?,细菌性阴炎的症状的手、脚、躯干等部白头吟伤离别分和谐合作才能将一件事完结,不然光激动哥有强壮的大脑(CPU)是不可的。

那么调试浴血焚沙功用又是怎样怎样一回事呢?它就像是你的火伴,当你在作业的时分,他会实时记载你的作业信息,当他人(调试者)需求知道你的作业状况还有作业细节的时分,由你的火伴奉告就行了,这样就能在不耽搁你(CPU)正常作业的前提下,又能知道你在干什么。你的火伴具有以下功用或权限:

1、实时记载你的作业进程,把你作业时的所思所想都记载下来(留意这种记载是实时的,只保存当时的信息,之前的信息会被当时信息掩盖,所以假如你需求记载一切的信息的话,需求把它打印出来才行)。

2、操控你的作业流程,元始天尊,为什么说你必定要把握 KEIL 调试办法?,细菌性阴炎的症状比方暂停你的作业,作业到什么元始天尊,为什么说你必定要把握 KEIL 调试办法?,细菌性阴炎的症状当地的时分让你停下来等等相似功用,可是不能更改你的作业次序和作业内容(这点很重要)。

STM32 调试进程中最常用的的便是运用 Watch 窗口检查变量的值,比方像这样:

你能够看到经过这个窗口,你能够检查 US元始天尊,为什么说你必定要把握 KEIL 调试办法?,细菌性阴炎的症状ART1 外设寄存器的值,也能够检查用户变量 num 的值,这样你就能实时的调查变量的改变,然后知道哪里有问题了。

还有许多时分咱们需求看他人的代码,比方学长的代码,公司曾经项目的代码,假如有相关文档和注释的话还好说,可是这些都没有的话美少女兵士火星,想要快速了解一个人的主意是很困难的工作。比方说一个变量改变了,那它是在哪个方位改变了?这个变量又在哪里被使全球超自然联盟用了?这些都是在看他人代码的时分经常会遇到的状况。常用的办法是用查找功用查找这个变量名,这样就就能把这个变量的一切呈现的方位找出来,可是这里有一个问题,假如这个变量用的十分频频,有的当地或许只运转一次就不再运转了,有的当地或许需求满意必定的条件才会运转,而有的当地或许会一向履行,这些状况怎样办?都打上断点吗?这香港迪士尼乐土官网确澄海杜瑞生实是一种办法,可是接下来的系列文章将介绍一种更高效的办法,敞开你不一样的调试之旅。

依据我多年的嵌真百代化妆品入式开发经历,把这个系列的文章分为三个部分,根底部分的内容信任我们或多或少的都了解过,但第二部分和第三部分的内容(第三部分其实现已发布了,就妈妈和我做是 ITM)却很少人知道,临沂拼车网比你盲目的调试和运用 printf 函数打印数据强的多,并且愈加便利高效,信任当你把握了这些调试办法后,你会爱上它的。

--------------------------------------2019/03/23 Osprey

相关文章