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文档资料:

http://www.st.com/content/st_com/zh/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f4-series/stm32f407-417/stm32f407zg.html

笔者360云盘:

https://yunpan.cn/cR2pxqF5x2d9c  访问密码 53e7

3.标准外设库

关于STM32的开发大致分:寄存器开发、标准外设库、STM32CubeMX配置等。由于STM32的寄存器太多了(不像51、430等寄存器很少),所以不建议初学者使用寄存器开发。STM32CubeMX配置代码的工具功能确实很强大了,但对于想要理解底层驱动开发的人来说也是不适合的。因此,笔者建议初学者使用标准外设库开发STM32,原因很简单就是兼顾了以上说的两点。

ST官网今年更新了网站,将很多资源分类整理在一个网页,方便用户下载。ST所有的标准外设库整理在一个下载网页,可以前往官网下载最新的标准外设库。

标准外设库官网下载地址(需注册用户):

http://www.st.com/content/st_com/en/products/embedded-software/mcus-embedded-software/stm32-embedded-software.html?querycriteria=productId=SC961

笔者360网盘下载地址(定期更新):

https://yunpan.cn/cReDTUbI7ZYwc  访问密码 4e0a

4.其他

STM32 ST-LINK Utility:这个工具是ST官方的,主要用于量产下载使用,这里对于初学者也是需要了解的。在没有读保护的情况下可以查看内部FLASH数据。

官网下载(需注册用户):

http://www.st.com/content/st_com/en/products/embedded-software/development-tool-software/stsw-link004.html

笔者360网盘下载地址(定期更新):

https://yunpan.cn/cRezHui3RVRdd  访问密码 1abc

Ⅲ、新建工程

我们把上一节的准备工作做好之后就可以进入开发了。首先是提取标准外设库的有用源代码文件(主要是解压后的Libraries里面的文件),这个可根据自己的理解和思路来整理和分类,笔者将会提供整理好的文件供大家下载参考。

关于如何新建软件工程,笔者也在前面整理过一篇文章,供大家参考。

http://www.cnblogs.com/strongerHuang/p/5532880.html

笔者提供一个新建好了的软件工程实例,比较简单也是比较实用的供大家下载参考:

https://yunpan.cn/cRepWDShSK4yc  访问密码 65b1

、说明

关于STM32的开发,软件兼容性是很好的,不要觉得你的芯片和我总结的实例有差异就不看了,其实是错误的认识,特别是同一个系列的芯片基本上程序都兼容,也就是可以互相使用。

以上总结仅供参考,若有不对之处,敬请谅解。

Ⅴ、最后

关注微信,回复“更多内容”,将获得更多内容(如:UCOS实例等,不断更新中......)。

如果你喜欢我分享的内容,你又想了解更多相关内容,请关注文章开头的微信公众号,新内容持续更新中,后期将会有更多精彩内容出现。

时间: 2024-10-27 16:31:00

STM32F4_引领入门的相关文章

推荐20个非常有帮助的web前端开发教程

1. CSS Vocabulary 一个伟大的指向和点击的小应用程序,让你加高速度掌握 CSS 语法的各个不同部分,学习各个属性的正确的名称. 2. Liquidapsive 一个简单的信息化布局.通过选择框的方式,能够让你在响应式,自适应.流动和静态布局中选择,所以你能够看到四大布局类型之间的差别. 3. Superhero.js 最好的文章,视频和演示文稿,以帮助前端开发者保持较大的 JavaScript 代码库的集合. 包含有一些普遍原则型的东西.对測试工具,性能.安全性和很多其它的资源.

推荐20个很有帮助的web前端开发教程

1. CSS Vocabulary 一个伟大的指向和点击的小应用程序,让你加快速度掌握 CSS 语法的各个不同部分,学习各个属性的正确的名称. 2. Liquidapsive 一个简单的信息化布局,通过选择框的方式,可以让你在响应式,自适应,流动和静态布局中选择,所以你可以看到四大布局类型之间的区别. 3. Superhero.js 最好的文章,视频和演示文稿,以帮助前端开发人员保持较大的 JavaScript 代码库的集合.包括有一些普遍原则型的东西,对测试工具,性能,安全性和更多的资源. 4

推荐20个很有帮助的 Web 前端开发教程

在平常的搜索中,我碰到过很多有趣的信息,应用程序和文档,我把它们整理在下面这个列表.这是收藏的遇到的有用内容的一个伟大的方式,可以在你需要的时候方便查阅.相信你会在这个列表中发现对你很有用的资料. 您可能感兴趣的相关文章 Web 前端开发人员和设计师必读文章集锦 十个拥有丰富 UI 组件的 JavaScript 框架 十款精心挑选的在线 CSS3 代码生成工具 开发者必备的八个最佳云端集成开发环境 2012年度最佳 Web 前端开发工具和框架 1. CSS Vocabulary 一个伟大的指向和

Qt入门之基础篇 ( 一 ) :Qt4及Qt5的下载与安装

转载请注明出处:CN_Simo. 导语: Qt是一个跨平台的C++图形界面应用程序框架.它提供给开发者建立图形用户界面所需的功能,广泛用于开发GUI程序,也可用于开发非GUI程序.Qt很容易扩展,并且允许真正地组件编程.基本上,Qt同X Window上的Motif,Openwin,GTK等图形界面库以及Windows平台上的MFC.OWL.VCL.ATL是同类型的东西. 本系列教程以Qt5.6为基础展开精讲. 参考书目: [1]霍亚飞.Qt Creator快速入门(第3版).2017年 [2]蔡

模拟电路学习入门的建议(综合整理)

转载自:http://bbs.eetop.cn/viewthread.php?tid=170164 ”模拟电路学习入门“ "如何才算学好模电,数电"一帖引来大家的关注.这里把各位DX的意见整理了一下,便于大家参考.真正掌握一门技术不容易,大家从不同的侧面和经验谈谈自己的体会,对从事这行业的工程师会有点启迪. 找些實用線路集錦或電子製作書看看,有感興趣的就找找理論資料,然後動手練練,很快就是門內漢(or女)了! 先看基本书,再动手练习练习 Razav 如果有耐心看大头英文最好,翻译也很不

《Android开发从入门到精通》扶松柏.扫描版.pdf

下载地址:网盘下载 内容简介 编辑 <Android开发从入门到精通>系统讲解了Android软件开发的基础知识,图文并茂地帮助读者学习和掌握SDK.开发流程以及常用的API等.书中以讲述实战实例为导向,用一个个典型应用生动地引领读者进行项目开发实践.<Android开发从入门到精通>是一本内容翔实,理论实践紧密结合的教程. [1] 目录 编辑 第1章 走进Android世界 1.1 智能手机飞速发展 1.1.1 主流手机系统介绍 1.1.2 Android横空出世 1.2 And

玩乐购横空出世 引领电商潮流

电商购物越来越火爆,购物模式更加多元化.立体化,加之随着国内经济的持续发展,新一代年轻人群购物需求达到了新的高度. 同时,在新的文化和市场环境下成长起来的他们,对生活方式有着超越传统认知的新诉求,产生了更高的物质消费需求,他们不再满足于生活的必需品,对一些提升生活品质的轻奢商品表现了更高的热情,而与此同时,因为年轻,他们或许是初入职场的上班族,又或者是一些学生群体,受限于钱包的厚度和资本的积累不够,购物需求无法得到满足. 玩乐购(www.17wlg.com)就是在这样一个大环境中成立的,一方面满

全新Linux学习路线图及入门教程

马哥Linux运维 2016全新Linux学习路线图,姿势最标准最正确的学习路线图,引领业界最高最全标准! 站在巨人的肩上,跟随大师的脚步,让你快速成为新时代的运维达人: 全尺寸点击: http://7pn5ov.com1.z0.glb.clouddn.com/%E5%85%A8%E6%96%B0%E5%AD%A6%E4%B9%A0%E8%B7%AF%E7%BA%BF%E5%9B%BEv2.jpg 附送入门教程,让你轻松走进Linux世界的大门: 1.Linux基础入门和架构了解: http:/

刚刚学习完了Java入门,不知下一步

刚刚学习完了Java入门,学习了进阶,下一步不知道该往哪个方面继续学习了! 当初自学Java的时候就想着有一天可以编制出自己的软件,最好是可以引领生活,世界进步的(话有点大,没关系,还没有实现,谁知道呢)!刚才上网又自己查了一下,不知道<Java思想>怎么样,能不能看懂,是不是都是英文的??? 大神求助啊:迷茫中...