小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。
在调试代码的时候,如果要监控一个变量值的变化情况,一般方法就是将这个变量添加到观察窗口中,或者将这个变量的变化情况通过串口打印出来,又或者将变量添加到数组中,通过断点来观察变量变化情况。但是这些方法都比较麻烦,而且看起来不直观。 IAR中自带了变量值打印功能,同时还能将变量值的变化情况以曲线的形式输出。 下面就来演示一下如何使用变量观察功能。代码进入在线调试界面后,选择ST_LINK选项中的Data Sample Setup选项。
选择界面中就会出现一个添加数据的框。
在这个框里面单击鼠标左键,将要添加的变量直接填入这个框中。
这里将AD采样的值添加进去。通道3和通道4读取到的ADC采样值。
在外部通过信号发生器给AD的通道3和通道4发送一个正弦波信号。
接下来继续选择ST_LINK中的Sampled Graphs 选项。
这时候界面中就会新出现一个窗口,这个窗口的下方显示OFF,说明功能还未启用。
在OFF上单击数据右键,选择Enable选项,打开数据观察的使用功能。
这时候刚才添加的那两个变量就会自动被添加到这个窗口中,数据默认的显示方式是16进制。
如果想要以10进制的方式显示,就在这个变量上单击鼠标右键,取消Hexadecimal这个选项前面的对勾。
将两个变量的默认显示为16进制都取消掉,这时候变量就会以10进制的方式显示。
接下来全速运行代码,这时候两个变量值的变化情况就会以曲线的方式显示出来。
按键盘上的 + 号 或者 - 号,可以放大或者缩小波形。
通过波形可以看到,两个数据的变化情况都是正弦波的形式,和输入数据的波形一致。
如果想要看这两个变量的似实时变化情况,可以在ST_link选项中继续选择Data Sample 选项。
这时在界面中就会新出现一个窗口
当程序运行的时候,这个窗口就会实时打印出变量的变化情况。
如果想要详细分析变量,可以在这个变量窗口上单击鼠标右键,选择将变量的数据保存到文件中。
通过这个方方法再调试程序观察变量时就方便快捷很多了。