前言:以下内容基于 百问网 黄老师的 7天实战训练的个人总结
第2节主要学习了从芯片选型到开发平台搭建:
1、本次使用的是ST公司的STM32F103C8T6,当初次接触不太了解时有几种方法了解相关信息。
通过ST(意法半导体)官网查询所用芯片相关资料,中文网页链接如下:
可以在搜索栏内输入所需型号STM32F103C8T6,即可转到相应界面
在此位置可以下载数据手册,里面有非常详细的芯片规格及功能介绍
在这里可以找到和 STM32F103C8T6相关的用户手册,开发工具,和一些开发笔记供开发参考。
2.单片机的开发方式:
早期的单片机开发使用汇编语言,虽然代码执行效率高,但所需要的汇编基础知识很多很复杂,初学者编写开发难度大,而且移植性比较差。
C语言开发执行效率适中,但编写效率较低,移植性也比较差。
采用标准库开发,是对STM32芯片的一个完整的封装,包括所有标准器件外设的器件驱动器。编写效率较高,但代码移植性稍低。
新推出的HAL库与标准库比较,优势在于可以用cubeMX进行可视化配置,很大程度节省开发时间。
3、STM32 CubeMX的使用方法:
软件下载地址:STM32CubeMX - STM32Cube初始化代码生成器 - STMicroelectronics
在这里可以下载不同平台的CubeMX软件,填写相关信息后即可下载,然后安装。
软件安装完成后,打开以下界面先选择芯片
软件会按输入内容显示芯片的相应规格参数,以及相关的资料均可在此下载,不需要到官网再找
参考原理图,先配置LED(11PIN)为GPIO_Output
时钟的配置调整页面
创建工程(注意:路径一定不能包含中文,会出错),然后TOOCHAIN选择MDK-ARM
把这项点上,把.c 和.h文件分开。其它不变然后生成CODE
当用CubeMX创建项目时,用户的代码一定要按规则在CODE BEGIN和USER CODE END 之间,不然如果在CubeMX增加功能再重新加载时,之前所创建的内容会消失。
利用HAL库做一个LED闪烁的功能(注意:如要跳转到定义的位置,需要先进行一次编译)
连接开发板,开关到OFF,打开烧录工具加载文件“开始下载 ”后将程序下载到开发板里,观察LED的变化。
本篇总结完成,内容学习及部分配图源于百问网相关教程