打印
[应用相关]

【我与ST MCU的故事】+ 我的STM32入门历程

[复制链接]
2803|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hu9jj|  楼主 | 2019-3-13 13:14 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
几年前刚开始自学单片机时,购买了一套C51的开发板,跟着套件的例程逐渐入门,并用万能板焊接线路,用89C51成功地做出了超声波测距和点焊机控制等小项目。随着学习和应用的深入,C51系列的单片机性能已经远远不能满足需要,STM32系列以其丰富的引脚资源和高速的运算能力,自然而然就成了我的学习目标。这一次是买了一块STM32F103C8T6最小系统板,自己在万用板上扩展了LCD显示屏、LED灯、按键、拨码开关和AT24C02 EEPROM,就此踏进了STM32的世界。



这是自己焊接的扩展板正、反面


  
这是STM32F103C8T6最小系统板及LCD显示效果



众所周知,STM32与C51在编程上有着很大的区别,我刚开始看示例代码时,被一大堆的“GPIO”代码弄得晕头转向,对先打开端口时钟、再配置引脚、最后调用库函数操作引脚等这些基本步骤却茫茫然不知所措,从C51转到STM32确实不容易。
        经过反复观看教学视频,同时上各论坛搜索相关的帖子,实在不懂就发帖求助,通过刻苦学习和反复调试后,先是能够按照自己的意愿点亮LED,其后LCD也顺利地显示出字符来,模拟I2C对EEPROM的读写也尝试成功,PB4引脚的复用功能也被打开,系统滴答(systick)也顺利启用,按键的轮询和中断使用等,总算进入了STM32的大门。在学习STM32的过程中,我还学会了使用逻辑分析仪去观察和分析时序,排查程序的BUG。


这是使用Keil5开发平台



这是使用逻辑分析仪分析LCD的驱动时序


        去年末,我幸运地从EEworld论坛获得了一个评测STM32G071RB开发板的机会,尝试了从标准库到HAL库的转换过程。开始我以为都是STM32系列,程序移植应该很简单,可谁知在F103正常运行的代码移植到G071下面来却通不过,多次发帖求教之后,好不容易才让LCD显示出字符,接着调试flash也颇费周折,I2C也不能如愿启用。在此期间也多次在ST_STM32社区、21ic和EEworld等知名论坛上请教各位老师和搜索查找相关的资料。正当评测按计划执行时,天有不测风云,一桩意外事件中断了我的评测过程,持续近一个月没时间打开电脑。由于没能按时完成评测计划,开发板也就与我失之交臂,我恋恋不舍地退回了开发板,失去了继续了解G071的机会。



  
这是STM32G071RB开发板



这是利用自制的扩展板调试G071开发板驱动LCD



        这次评测任务虽然没有完成,对G0系列的了解也仅仅停留在皮毛,但通过这次的评测过程,让我接触到STM32CubeMX这个优秀的配置工具,从而对引脚的功能分配和配置有了更深刻的了解。通过使用这个配置工具,可以更合理地分配各引脚的功能,防止产生冲突。通过这个配置工具生成完整的工程项目代码,可以大幅度地减少引脚配置等基础代码的编写工作,杜绝这些基础代码的书写错误或配置错误,减少程序调试时间。也就是说,我们可以不用去考虑如何在程序中配置引脚,只要在STM32CubeMX中安排好各引脚的功能以及设置好相应的参数之后,其余的时钟开启、引脚及参数配置等代码乃至整个工程项目,包括固件库等全由程序自动产生或下载,我们只要在这个项目的基础上添加用户代码就可以完成项目的建立,极大地提高了开发效率。

这是利用STM32CubeMX软件配置引脚



目前我仍在F103C8T6最小系统板上继续做实验,还准备去购置一块F103RCT6最小系统板,利用更多的引脚来同时实验TFT触摸屏、AD转换、无线传输等功能,为下一步的实际应用作好准备。总之,我现在已经是离不开STM32了,以后若还有STM32的评测机会时,还会尽量去争取,尤其是对新推出的MP系列和WB系列,还会努力去了解、去熟悉、去应用。最后借用李白的两句诗作为本文的结束:长风破浪会有时,直挂云帆济沧海。





沙发
mmuuss586| | 2019-3-13 14:03 | 只看该作者
感谢分享

使用特权

评论回复
板凳
ahai0306| | 2019-3-14 14:58 | 只看该作者
好久没有过来了,改版了很多,多学习学习啊

使用特权

评论回复
地板
一叶倾城wwq| | 2019-3-15 08:34 | 只看该作者
同款的逻辑分析仪

使用特权

评论回复
5
hu9jj|  楼主 | 2019-3-15 09:47 | 只看该作者

网上28元淘的,能满足时序分析的需要。

使用特权

评论回复
6
hu9jj|  楼主 | 2019-3-20 09:44 | 只看该作者
自己顶一下

使用特权

评论回复
7
guanjiaer| | 2019-4-2 11:40 | 只看该作者
写的非常的棒!

使用特权

评论回复
8
heimaojingzhang| | 2019-4-2 11:50 | 只看该作者
飞线很漂亮

使用特权

评论回复
9
paotangsan| | 2019-4-2 12:04 | 只看该作者
波形很漂亮啊

使用特权

评论回复
10
hu9jj|  楼主 | 2019-4-2 20:21 | 只看该作者

用了一段硬盘数据线,所以显示更整齐些,其他的飞线就不美观了。

使用特权

评论回复
11
hu9jj|  楼主 | 2019-4-2 20:22 | 只看该作者

这是反复调整后的时序图,比较接近数据手册的标准。

使用特权

评论回复
12
heimaojingzhang| | 2019-4-3 12:44 | 只看该作者
hu9jj 发表于 2019-4-2 20:22
这是反复调整后的时序图,比较接近数据手册的标准。

呵呵呵 说明楼主焊接功夫了得啊

使用特权

评论回复
13
paotangsan| | 2019-4-3 12:56 | 只看该作者
hu9jj 发表于 2019-4-2 20:22
这是反复调整后的时序图,比较接近数据手册的标准。

需要微调什么参数呢

使用特权

评论回复
14
hu9jj|  楼主 | 2019-4-3 15:16 | 只看该作者
paotangsan 发表于 2019-4-3 12:56
需要微调什么参数呢

主要就是调延时,当然是时序正确的前提下。

使用特权

评论回复
15
hu9jj|  楼主 | 2019-4-3 15:17 | 只看该作者
heimaojingzhang 发表于 2019-4-3 12:44
呵呵呵 说明楼主焊接功夫了得啊

关键还是要有好工具——恒温电烙铁。

使用特权

评论回复
16
features| | 2019-4-3 15:24 | 只看该作者
感谢楼主分享!很厉害啊!

使用特权

评论回复
17
heimaojingzhang| | 2019-4-4 12:51 | 只看该作者
hu9jj 发表于 2019-4-3 15:17
关键还是要有好工具——恒温电烙铁。

我也想弄一套呢

使用特权

评论回复
18
paotangsan| | 2019-4-4 13:40 | 只看该作者
hu9jj 发表于 2019-4-3 15:16
主要就是调延时,当然是时序正确的前提下。

好的 非常感谢楼主热心回复

使用特权

评论回复
19
hu9jj|  楼主 | 2019-4-5 17:55 | 只看该作者
features 发表于 2019-4-3 15:24
感谢楼主分享!很厉害啊!

离厉害还差远呢,顶多只能算刚入门。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:Microchip
简介:让我们来为您提供帮助。我们可提供各种资源来帮助您解决一切问题。是否需要与我们的客户支持团队联系?您可以通过电话、在线聊天功能或电子邮件与他们联系。

151

主题

1059

帖子

11

粉丝