STM32F4_引领入门
Ⅰ、概述
该文写给那些想学ST芯片开发(或初级学习)的朋友,文章着重细节,或许有点简单。
笔者想告诉那些刚开始学习ST的朋友,不管你使用哪一个系列(F0、F1、F2),哪一种型号芯片,其实学习的方法和原理都是差不多的。或许不同系列,不同型号的芯片,它们之间确实存在一定的差异,但万变不离其宗,设计芯片的厂家都是按照常理(而且是人们习惯性的思维)来设计芯片,及其开发原理。
笔者在这里告诉大家吧,ST的芯片不管是硬件(引脚),还是软件(寄存器、库等)它们的兼容性都是很好的,有可能不同系列,不同型号的芯片,硬件换了,软件不换,可以达到同样的效果(笔者已经尝试过的,如:STM32F205VC和STM32F417VE,除了明显一点的速度有区别外,软硬件可以兼容,不行的朋友可以试试,看看手册引脚,寄存器地址等基本上一样)。有很多芯片都是类似的,不信的朋友可以验证一下。
好了,回归到今天的主题,关于STM32F4系列芯片开发,更多详情内容,请往下看。
本着免费分享的原则,方便大家手机学习知识,定期在微信平台分享技术知识。如果你觉得分享的内容对你有用,又想了解更多相关的文章,请用微信搜索“EmbeddDeveloper” 或者扫描下面二维码、关注,将有更多精彩内容等着你。
Ⅱ、准备开发资源
1.开发工具Keil
开发ST芯片的工具有很多,官方也提供有(STVP),笔者这里不评论哪一个工具好,哪一个工具不好,只想说,各有各的好,你使用哪一个看你自己选择。笔者习惯性使用Keil(MDK-ARM),因此,推荐的也是Keil。
关于Keil(MDK-ARM)包含支持包的下载与安装,我已经在之前文章中讲解过,不同的可以前往我博客查看如何下载与安装。
MDK-ARM下载与安装:
http://www.cnblogs.com/strongerHuang/p/5528602.html
前一段时间我还总结了关于Keil相关的使用方法,里面基本上把关于MDK-ARM的大部分功能都总结了。
Keil使用方法(汇总):
http://blog.csdn.net/ybhuangfugui/article/details/51647893
2.F4文档资料
在上一篇文章中我已经描述过“如何查找STM32开发资料”,我的建议是进入ST官网,我这里也是提倡进入官网查找资料。
对于初学者,有两个文档资料是必备的:数据手册和参考手册。数据手册用于查看你所使用的芯片有哪些资源,引脚对应的功能等。参考手册用于开发、调试时查看相关的一些寄存器配置,如何使用相关功能等。
当然,上面说的两个是关于整个芯片所有信息,开发的时候也有部分相关资料,如:应用手册、勘误手册、编程手册等,讲解了一些细节的东西,不嫌弃麻烦的朋友,建议参考这些文档。
ST官网F4文档资料:
笔者360云盘:
https://yunpan.cn/cR2pxqF5x2d9c 访问密码 53e7
3.标准外设库
关于STM32的开发大致分:寄存器开发、标准外设库、STM32CubeMX配置等。由于STM32的寄存器太多了(不像51、430等寄存器很少),所以不建议初学者使用寄存器开发。STM32CubeMX配置代码的工具功能确实很强大了,但对于想要理解底层驱动开发的人来说也是不适合的。因此,笔者建议初学者使用标准外设库开发STM32,原因很简单就是兼顾了以上说的两点。
ST官网今年更新了网站,将很多资源分类整理在一个网页,方便用户下载。ST所有的标准外设库整理在一个下载网页,可以前往官网下载最新的标准外设库。
标准外设库官网下载地址(需注册用户):
笔者360网盘下载地址(定期更新):
https://yunpan.cn/cReDTUbI7ZYwc 访问密码 4e0a
4.其他
STM32 ST-LINK Utility:这个工具是ST官方的,主要用于量产下载使用,这里对于初学者也是需要了解的。在没有读保护的情况下可以查看内部FLASH数据。
官网下载(需注册用户):
笔者360网盘下载地址(定期更新):
https://yunpan.cn/cRezHui3RVRdd 访问密码 1abc
Ⅲ、新建工程
我们把上一节的准备工作做好之后就可以进入开发了。首先是提取标准外设库的有用源代码文件(主要是解压后的Libraries里面的文件),这个可根据自己的理解和思路来整理和分类,笔者将会提供整理好的文件供大家下载参考。
关于如何新建软件工程,笔者也在前面整理过一篇文章,供大家参考。
http://www.cnblogs.com/strongerHuang/p/5532880.html
笔者提供一个新建好了的软件工程实例,比较简单也是比较实用的供大家下载参考:
https://yunpan.cn/cRepWDShSK4yc 访问密码 65b1
Ⅳ、说明
关于STM32的开发,软件兼容性是很好的,不要觉得你的芯片和我总结的实例有差异就不看了,其实是错误的认识,特别是同一个系列的芯片基本上程序都兼容,也就是可以互相使用。
以上总结仅供参考,若有不对之处,敬请谅解。
Ⅴ、最后
关注微信,回复“更多内容”,将获得更多内容(如:UCOS实例等,不断更新中......)。
如果你喜欢我分享的内容,你又想了解更多相关内容,请关注文章开头的微信公众号,新内容持续更新中,后期将会有更多精彩内容出现。
STM32F4_引领入门的更多相关文章
- 推荐20个很有帮助的 Web 前端开发教程
在平常的搜索中,我碰到过很多有趣的信息,应用程序和文档,我把它们整理在下面这个列表.这是收藏的遇到的有用内容的一个伟大的方式,可以在你需要的时候方便查阅.相信你会在这个列表中发现对你很有用的资料. 您 ...
- 设计: ListView 接口,and the missing read-only interfaces in java collection framework
Java的集合框架以其成功易用的设计征服了很多人(包括我),并且教科书式的诠释了泛型的应用方式. 我也是被 Joshua Bloch 的书引领入门,从中得益良多.我当然不会认为自己在设计上比他懂得更多 ...
- 推荐20个很有帮助的web前端开发教程
1. CSS Vocabulary 一个伟大的指向和点击的小应用程序,让你加快速度掌握 CSS 语法的各个不同部分,学习各个属性的正确的名称. 2. Liquidapsive 一个简单的信息化布局,通 ...
- 推荐20个非常有帮助的web前端开发教程
1. CSS Vocabulary 一个伟大的指向和点击的小应用程序,让你加高速度掌握 CSS 语法的各个不同部分,学习各个属性的正确的名称. 2. Liquidapsive 一个简单的信息化布局.通 ...
- 一个故事看懂HTTPS
我是一个浏览器,每到夜深人静的时候,主人就打开我开始学习. 为了不让别人看到浏览记录,主人选择了"无痕模式". 但网络中总是有很多坏人,他们通过抓包截获我和服务器的通信,主人干了什 ...
- Elasticsearch 教程--入门
1.1 初识 Elasticsearch 是一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引擎,可以说 Lucene 是当今最先进,最高效的全功能开源搜索引擎框架. 但是 L ...
- Web前端小白入门指迷
前注:这篇文章首发于我自己创办的服务于校园的技术分享 [西邮 Upper -- 004]Web前端小白入门指迷,写得很用心也就发在这里. 大前端之旅 大前端有很多种,Shell 前端,客户端前端,Ap ...
- 01.Hibernate入门
前言:本文用一个简单的Hibernate应用程序例子来引领初学者入门,让初学者对Hibernate的使用有一个大致的认识.本文例子使用了MySQL数据库.Maven管理工具.Eclipse开发工具,创 ...
- Qt入门之基础篇(1):Qt4及Qt5的下载与安装
转载请注明出处:CN_Simo. 导语: Qt是一个跨平台的C++图形界面应用程序框架.它提供给开发者建立图形用户界面所需的功能,广泛用于开发GUI程序,也可用于开发非GUI程序.Qt很容易扩展,并且 ...
随机推荐
- HDU 4770 Lights Against Dudely
Lights Against Dudely Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- 深度解析国内O2O模式
今日在网上发现这篇文章很棒,详细的分析了当前BAT矩阵下的o2o 的模式.所以转载过来与大家一起分享. 文章来自于:http://www.siilu.com/20151214/158917.shtml ...
- Testing and Checking Refined
还是James大叔的文章:http://www.satisfice.com/blog/archives/856 本文提出了Testing和checking的定义和他们之间的区别. ========== ...
- mysql中data_format用法
date_format(date,format)可以把日期转换为制定的格式: mysql> select date_format('2008-08-08 22:23:00', '%W %M %Y ...
- .net Url重写
详细说明及下载dll源码路径: http://msdn.microsoft.com/zh-cn/library/ms972974.aspx 顺带上本人写的一个小例子:http://files.cnbl ...
- 怎么用一行代码解决CSS各种IE各种兼容问题
用一行代码来解决CSS在,IE6,IE7,IE8,IE9,IE10 中的各种兼容性问题. 在网站前端写代码的过程中,很多时间IE各个版本的兼容问题很难整.现在百度与谷歌都有了一行解决这种兼容性的代码了 ...
- 【HTML/XML 10】XML文档中的Schema文件
导读:DTD是对XML文档进行有效性验证的方法之一,事实上,继DTD之后,出现了用来规范和描述XML文档的第二代标准:Schema.Schema是DTD的继承,但是也有其不同的地方,它是真正的以独立的 ...
- CAPI HTTP服务搭建(文件在本机)
南康HTTP服务器搭建步骤如下: 1.环境准备 2.添加应用程序 3.访问测试 4.添加虚拟目录 5.下载测试 6.上传测试 7.最终效果 8.权限设置 有问题请留言.
- Android IOS WebRTC 音视频开发总结(二三)-- hurtc使用说明
本文主要介绍如何测试基于浏览器和手机的视频通话程序,转载请说明出处,文章来自博客园RTC.Blacker,更多详见www.blackerteam.com 很多人想测试浏览器(包括浏览器版本和桌面e ...
- linq to xml 基本操作
使用XDocument类来进行简单的xml操作,用于软件参数的设置保存. using System; using System.Collections.Generic; using System.Li ...