你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【NUCLEO-L476RG开发】+ STM32L476编译环境的搭建及串口调试 精华  

[复制链接]
落潇 提问时间:2015-10-27 18:20 /
STM32L476编译环境的搭建及串口调试
2015-10-10
micharl83

一如既往,收到了来自苏州EEF发来的开发板(STM32L476-NUCLEO),同样的,内载了demo程序,上电如图所示。
   01.jpg 02.jpg
首先,说一下环境的搭建。
万事开头难,这句话也应验在STM32L476的调试中。因为我使用的编译环境是keil5.11,这里怎么都找不到stm32L476的影子。于是乎,尝试安装keil5.15,记得之前我在一台机子上,调试GD103的时候,也遇到如此问题。所以,这个问题对于我来说,可能比较容易,但是对于没有使用高版本keil的TX来说,有点小难。
其次,说一下串口模块的调试。
随着点击蓝色按钮的次数不同,绿色闪烁灯的闪烁频率也不同(三种轮训进行)。
有了指示灯的显示,无疑减少了开发的难度。
一般上,玩一个开发板,都是从指示灯和信号数据开始的。既然有了指示灯,那就继续开始通信接口的调试吧。先从串口开始。
在通信接口中,串口是比较简单,而且常用的接口。
由原理图文档《MB1136.pdf》的截图,我们选择PA9/PA10作为调试串口管脚。
03.png
我做了三个实验:
第一个实验:串口对发。利用软件包中提供的串口例程,有中断方式,有polling方式,但前提都是需要两块板子。借助于之前调试过的stm32f072开发板。https://v.youku.com/v_show/id_XMTM3MDk5MDU4MA==.html
第二个实验:串口发数据到PC。从第一个实验的难度想到的,借助于PC无意更简单。https://v.youku.com/v_show/id_XMTM3MDk5ODMzNg==.html
第三个实验:串口加定时器,按照预先设定的时间间隔,经串口发送数据到PC。https://v.youku.com/v_show/id_XMTM3MTAwNDEwNA==.html

实验完成之后,对串口代码调试中遇到的问题,进行总结。
第一,  习惯于STM32F407的代码调试之后,突然发现,nucleo版本的代码库,突然让我找不到方向。着急之下,我强行把代码移植过来,然后边编译,边改写宏等代码定义。IO口的修改完成之后,突然发现串口代码完全不同,而且中断都没有找到。放下板子,冷静了两天,重新拾起L476的代码之后,心里在想,既然工程师把这样的代码整理成包,就说明必有高明之处。于是乎,开始静下心来,研究代码。
第二,  研究串口代码N天之后,感觉到代码的高明之处,内心非常钦佩如此的代码逻辑安排。其实,对于底层驱动代码熟悉的工程师或者兴趣爱好者来说,可能这不算的什么,但能写出一套驱动代码,也并非一蹴而就。明白之后,顿觉收获匪浅。
第三,  实验简单,但耗费我几天的功夫,希望后续更多模块调试成功。比如12864的调试,激光测距调试,频率合成器调试等等,都是我最擅长的调试。

【经验】
  
1、 小结
  
(1)  main开始,进行模块初始化;初始化过程中,包含管脚的功能定义,并会调用stm32l4xx_hal_tim.c或者stm32l4xx_hal_spi.c (驱动文件);
  
(2)  驱动文件中,会调用HAL_TIM_Base_MspInit(htim)或者HAL_SPI_MspInit(htim);
  
(3)  HAL_TIM_Base_MspInit(htim)或者HAL_SPI_MspInit(htim)函数中,包含有中断的初始化;同时,在stm32l4xx_it.c内,定义中断函数;
  
中断函数会再次调用驱动文件stm32l4xx_hal_tim.c或者stm32l4xx_hal_spi.c内的xxxxHandle函数(比如:HAL_TIM_IRQHandler函数),该函数内有相应的回调函数,回调函数内,用户可以自由发挥,比如定时器中断时要干啥,或者接收到数据等等。
  
摘自我的学习笔记(michael83
  

希望简单的视频,可以激发你的调试兴趣。
STM32L476实例一:串口通信.pdf (414.89 KB, 下载次数: 575)
收藏 4 评论28 发布时间:2015-10-27 18:20

举报

28个回答
chunny370 回答时间:2016-9-12 15:04:54
不知道为什么,用flash loader demonstration 下不了程序。boot0直接接到VDD,boot1板子直接接的地应该不用管,按了重启键不再从flash启动应该是从bootloader启动了。大神有没有用串口下过程序?
落潇 回答时间:2015-11-30 15:18:07
zkkkkkkkk 发表于 2015-11-30 11:08
楼主,我之前用的STM32f都是通过JTAG接口用jlink下载程序的,请问这个板子是怎么下载的,学生求指导,谢谢 ...

我还得上电试试,试好之后,回复你啊。
落潇 回答时间:2015-11-5 09:08:12
星辰一方 发表于 2015-11-3 14:29
楼主你的cubeMX支持包怎么下载的?能不能通过网盘共享一下?不知道为什么去官网下载只有V111版本,而cubemx ...

12楼能否满足你的条件?
samsamhoo 回答时间:2015-10-27 18:50:14
看看这周能不能抢到一个。
你好我好大家好! 回答时间:2015-10-27 18:57:19
后天必须抢
肽宰1 回答时间:2015-10-27 19:54:50
为何第二波的还不发货。我等不及了哈哈
wang540 回答时间:2015-10-27 20:01:05
可惜抢不到
disheng4688 回答时间:2015-10-27 20:24:29
学习              
埃斯提爱慕 回答时间:2015-10-27 21:27:24
提示: 作者被禁止或删除 内容自动屏蔽
落潇 回答时间:2015-10-28 08:28:16
大家积极抢货啦。。。。。。。。。。。这块板子较之之前的板子,更有挑战,玩起来更好玩,源于代码比较多。
星辰一方 回答时间:2015-10-28 09:37:56
楼主可以把下载到的官方库cubemx和MDK的分享个网盘链接给大家么?
落潇 回答时间:2015-10-28 14:26:44
星辰一方 发表于 2015-10-28 09:37
楼主可以把下载到的官方库cubemx和MDK的分享个网盘链接给大家么?

好主意,可以。我弄一下啊。
wuweijie 回答时间:2015-10-28 20:01:10
好厉害,可以把网盘的链接发一下吗,大神
落潇 回答时间:2015-10-29 11:37:50
链接:https://pan.baidu.com/s/1o66EqOM 密码:d6jr
落潇 回答时间:2015-10-29 11:39:47
wuweijie 发表于 2015-10-28 20:01
好厉害,可以把网盘的链接发一下吗,大神

已发。,,,,,,,,,,,,,
wuweijie 回答时间:2015-10-29 13:54:43
michael83 发表于 2015-10-29 11:39
已发。,,,,,,,,,,,,,

谢谢谢谢
damiaa 回答时间:2015-10-29 14:04:13
谢谢分享
12下一页
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版