结束了C51和Arduino单片机的入门学习,接下来的几篇文章是关于STM32单片机的学习总结。对于stm32我也只是个初学者,因此在文中出现理解不到位的地方敬请各位指出,与大家一起共同学习。


1、Keil uVision 5


经过对51单片机的学习,就可以了解到Keil提供了一套包含C编译器、宏汇编、连接器、库管理和功能强大的仿真调试器在内的完整开发方案,通过集成开发环境(uVision)将这些东西组合在了一起。在Keil公司被ARM收购后,其就为Arm系列的推出了MDK-ARM软件,一个集代码编辑器,编译器,链接和下载为一体的集成开发环境,它也是STM32单片机软件开发的一大利器。要在软件中实现对STM32系列单片机的开发,还需要安装相关芯片的Pack包,在STM32的官网就可以找到,如STM32F1XX_DFP.2.2.0.pack等。Keil 5软件打开一个项目后的主界面如下图中所示:
在这里插入图片描述



有关于keil uVision 5以及stm32 Pack包的安装可以参考csdn中相关的文章,如果有需要安装包的同学可以私信联系我。


2、辅助开发利器—STM32CubeMX


一讲到stm32单片机,就不得不提到ST意法半导体集团,它是由意大利SGS微电子公司和法国Thomson半导体公司合并而成的,它推出了是stm32基本型系列、增强型系列、USB基本型系列,互补型系列等等单片机,是全球第五大半导体厂商。在瞻仰了半导体巨头公司后,就要了解了解这款ST公司近几年来大力推荐的STM32芯片图形化配置工具—STM32CubeMX。它采用图形化的配置导引生成初始化C代码,可以直接应用到单片机中,大大减轻了研发人员的开发复杂度。作为一款ST公司的主推软件,它搭配了STM32全系列的芯片,并且可以根据用户的绣球选择是否安装对应的芯片包。STM32CubeMX软件安装完成后打开的主界面如下图所示,其具有以下的一些基本特性:
1、直接选择芯片MCU的型号,通过图形化的界面进行配置;
2、自动处理引脚冲突;
3、在图形界面配置时钟,可自动生成时钟配置代码;
4、动态设置外围和中间件的模式及初始化。
在这里插入图片描述对于这个软件,我自己最直观的感受就是它的便捷性,能够替我们节省很多stm32单片机开发的配置步骤。特别是在学习过寄存器开发以及标准库函数开发两种方式后,在接触这个软件就能够感觉到它的好处了。


3、J-Link仿真器


J-Link是SEGGER公司为了支持仿真ARM内核芯片推出的JTAG仿真器。它可以配合多种集成开发环境进行ARM内核芯片的仿真,在这一系列文章中主要将之应用于Keil中。以淘宝中的某款JLink-OB仿真器为例(实物如下图中所示),它包含了编程和仿真的功能。
在这里插入图片描述
这一款JLink仿真器可以烧写Flash ROM、EEPROM以及AFR,可以支持全速运行、单步调试以及断电调试等方法,可以查看单片机的、IO口的状态信息,变量的数据信息等。由于它采用了4线SWD的方式进行下载,因此使用起来方便快捷,下载速度快。它与单片机的连接如下图中所示:


在这里插入图片描述


4、串口助手


在电脑端的串口助手就是一款可以接收并显示电脑串口数据的软件,它具备数据的十六进制显示与发送、端口号选择、波特率设置等等一系列基础的功能。串口助手软件也是stm32单片机软件开发的一个工具,它可以直观的将单片机采集或处理过的数据显示在界面中,也可以通过图形化的方式显示出来。笔者所使用的一款串口工具软件的主界面如下图中所示,在后续的stm32单片机实验中也会应用到这款软件。


在这里插入图片描述