STM32调试心得

最近在学习STM32F103,刚刚学习不久,很多问题都让自己莫名其妙,通过多次调试,总算是解决了,可能调试的方法很多大神都能熟练运用了,但像我这种菜鸟,有些关键点真的是相见恨晚啊,分享一下,能共同进步。

资金有限,一直是用之前51的开发板板载资源以及一块stm32核心板,对照着网络视频课程进行GPIO控制、流水灯、时钟设置等等操作的学习,学习中断时遇到了问题,程序是用按键作为外部中断来控制LED的亮灭,按照视频一步一步写完程序后,发现按键按下后并不能起到相应的效果,采用Keil 的Debug调试,一步一步能完美运行,百思不得其解啊,后来经历各种查询,总算是找到问题所在了,这里向大家介绍一种方法,即串口打印调试。

STM32调试心得

是修改前的中断服务函数,看起来并没有什么问题,直到用到串口打印printf()时,才算找到问题。

STM32调试心得

通过增加这两句,让中断每次进入时都能进行一次n值的输出,通过电脑上的串口打印助手观察n的变化,总算找到问题:n的输出并不是稳定加1的,而是几乎全都输出为偶数,这就造成了每次按下按键,都会多次进入中断函数,导致LED的变化不稳定,通过修改delay的时间,才算是解决了问题,进而发现这个问题是我的板子有问题导致的,因为我后期又用了自己制作的按键电路板替代原来的按键电路来运行这个程序,毫无问题,可见问题就出在板子的按键上。

个人认为这种问题还是挺难遇到的,但通过这个问题,学到的这个调试的办法真是受益无穷,这个办法可能很多大神都早就熟练使用了,但如果我不是从网络上无意间看到,真的是很难自己领悟到。在这里还要有几个关键点需要注意:

1

printf函数在STM32上使用,要“重新定向”到自己的串口。

STM32调试心得

2

Keil在编译时,要在Keil选项卡中勾选MiscroLIB选项,即使不勾选,在编译时也不会报错,但程序运行会出现问题。

STM32调试心得

3

printf是C语言的标准函数,所以使用printf函数,要在头文件上包含“stdio.h”这个头文件。

展开阅读全文

页面更新:2024-05-26

标签:都会   菜鸟   偶数   板子   相见恨晚   大神   串口   按键   函数   熟练   心得   关键   办法   发现   程序   方法

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top