STM32F030 Nucleo-开发前要做的事

2024-02-06 06:48
文章标签 开发 stm32f030 前要 nucleo

本文主要是介绍STM32F030 Nucleo-开发前要做的事,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

拿到申请的开发板也有几天了!还是得学习学习!我个人认为,拿到一款新的MCU或者不熟悉的板卡等等,很有必要按照顺序去做几件事,这样在后面的学习和开发中会更加的得心应手。

1.找到MCU的几个手册,《Datasheet芯片手册》、《用户手册/编程手册》、《库手册》,当然也就是ST整理出了这样一个库手册,据我所知,有些公司是不整理的,当然,各有各的风格。

2.找到对应芯片的标准外设库或者 STM32Cube库进行开发

3.找到板卡的硬件原理图

4.按照Nucleo板卡的ST-Link V2驱动

这些资料,对于一款自己从未接触过的芯片或者是刚刚出来的一款新的芯片而言,找到有用的资料没有渠道的话,还是挺难找的。我在交流群里和一些论坛里看到很多的提问都是关于这样的,“请问哪位大神有木有XXXX芯片的资料?”这类话太多了,然而,我们很多知道怎么找的人通常只会来一句“官网有”,这就让跟多的初学者忘却止步了。因为,就拿ST官网来说,不清楚它的布局的话,找到资料真的不是一般的难。在这里提供一些方法:

1.找到芯片的DataSheet

(1)首先我们先输入一个网址www.st.com ,这就是ST的官网了,然后会看到一个很漂亮有复杂的页面

(2) 当进入上面的页面,这就是ST官网首页了(我觉得没必要切换成中文页面,原因是有用的资料还是英文的页面,没有中文的,网页反应较慢,节约时间吧)。

注:我们要明确目标,其实我们要找的是这款芯片

按照以上1,2步骤选择进入ST MCU系列选型,如下图:

上图就是STM32 MCU的系列表了,我们分别看到了8位和32位MCU,我用蓝色框区分出来了。还有很重要的一点就是,不熟悉这个网站的初学者,记住下图路径:

这很重要,方便以后找资料。

现在我所需要的是找F030芯片的资料,肯定选择STM32 F0系列了,所以直接在前面的系列表图中用鼠标点击即可(点读机哪里不会点哪里!!哈哈!),也就是点击红色框进入下图:

这是F0的基本信息。

 

哈哈哈!到这里基本上是流浪的汉子回到村里了,都是亲人;上图页面中看样看到两个表,并且看到的全部都是STM32F0XXXXXX,对的,你猜的没错,这里就是整个F0家族,包含了所有STM32F0系列MCU的基本资料。

对于这两个表,就当它是选型表吧,在表1选择需要的资源,表2自然会列出满足要求的所以F0系列的MCU(对于其他系列也一样,只是不再这个页面)。再一次记住路径:

在这里我需要找的应该是STM32F032R8T6这款MCU的资料,已经用红框框出来了,点击蓝色字体进入这款芯片界面如下图。

这就算是到底目的地了!界面比较友好。

第一件事:既然已经看到了Download Datasheet了,那咱就不客气了,把Datasheet下载下来吧(点击图标即可)。

第二件事:选择All,出现如下界面:

我们会看到,我靠,这么长的下拉条,眼花缭乱。但是,淡定,咱的英语水平很菜,但是认识几个专业术语即可!

其实上面包括了这么几方面的资料:

(1)用户笔记,ST这点感觉很帅,有一些比较专业的应用笔记为用户的解决方案提供参考。并且说明了一些用户应该注意的地方,就在Application Notes栏和Technical Notes & Articles栏。这两栏的资料非常重要,可以选择必要的下载下来看。

(2)参考手册,通常在这里也能直接找到相应系列MCU的参考手册了,这是很爽的,因为开发的时候要操作寄存器就得参看《参考手册》,在Reference Manual栏,这个手册也非常重要,必须下载下来看。

(3)编程手册,这个其实也比较重要,看一看还是好的,Programming Manual这一栏交代了Cortex-M0的编程各种。。。。。。。

(4)勘误表,这个对于学习来说,可能用处比较少,个人认为知道有这么个东西存在就好,当时间项目开发的时候,可以参看。在Errata Sheet栏

(5)然后Presentations & Training Material栏就是ST的宣传资料了,其实就是课件什么的,我认为咱学习就不用管了!

(6)重要的来了,这是资源啊!对的!ST把很多相关资源列在了Related Tools and Software栏,它包括了,开发所必要的工具和软件(程序),也有一些例程,移植好的程序软件操作系统等等。这个很重要的!!学习的重要资源啊!

上图列出了几个对应基础开发很必要的!其他的可自行参考。通过红框1我们即可找到我们这款牛客板卡的原理图Layout等硬件资料。红框2就是STM32CubeF0库了,这个不是基本外设库,这个程序比标准外设库封装的更多一些,可以叫中间件了,即HAL。哈!!框3就是STM32F0系列的标准外设库了,这是大家最常用的吧!好像!嘻嘻!框4和框5都是ST-Link的驱动,至于为毛有两个,哈哈!自己看说明吧。

提一点就是,可能很多人用的是标准外设库,所以可能根本就不知道STM32Cube的存在,至于它俩有啥区别!咱水平低下也说不清楚,总之就是各有所长,咱呢就各有所好,不过貌似使用ST的解决方案的话STM32Cube库开发就快多了。但是咱学习还是喜欢标准外设库stm32f0_stdperiph_lib,哈!

其实前面提到的资料现在基本上都已经找到了!Datasheet下载了,参考手册下载了,库下载了,ST-Link驱动下载了,牛卡板卡硬件资料也找到了,那就就差个库函数的手册了吧!哈哈!其实它已经在库里面了,解压就可以看到了。

那么进去牛客板卡的界面看看吧!!如下图:

牛客板卡页面到了!我们看到了板卡的简单的数据手册 Data Brief,不过这不是很重要,看下图:

1就是规格了,对于学习可以不管,不过喜欢Layout的骚友们可以看看哦。2就是这块牛客板卡的用户手册了。3板卡的设计规范,我觉得这也时候Layout的骚友参考。4 BOM表,这款牛客板卡的所有元器件的型号和精度等等参数都在这里了。5才到了这款牛客板卡的Layout源文件,里面包括了牛客板卡的Altium Designer的Layout源文件和一份PDF牛客板卡原理图文件。再下面又是资源了。6就是Mbed网络开发平台了。7呢是ST-Link驱动,为毛我又在这里提一次呢》?因为建议按照这个驱动!

OK了!其实废话很多!希望能帮到入门的骚友们。在ST官网找资料就是这么个思路,但是呢,值得提醒的是,不是每一款芯片下面都有这么多资源,那么,就得从Home开始找了,按照这种思路应该没错的!希望对这个不了解的童鞋多多去浏览几遍就熟了,然后它就帮你大忙了!

还有一个资源网站,中文的,好像是ST中国区代理商弄的,也很不错(看到中文是不是很开深哈哈),那就是与非网里面的STM32社区了。http://www.stmcu.org/找资料更直接。

由于前面官网是英文的,很多初学者会感觉很吃力!在这里说一下,没事的,看多了就习惯了,再说很多东西是没有中文的,有中文的也是一些爱好者翻译的,这倒是可以参考,但是不能完全依赖的,比较翻译这种东西和翻译这自身的对这款MCU的理解深度、开发水平经验和英语水平等等相关的(倒不是说这个不值得一看,好多骚友翻译的还是非常好的,并且帮助了所以的初学者,但是我们学习不能依赖),所以咱还是习惯英文吧!

这篇关于STM32F030 Nucleo-开发前要做的事的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/683469

相关文章

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

基于Java开发一个极简版敏感词检测工具

《基于Java开发一个极简版敏感词检测工具》这篇文章主要为大家详细介绍了如何基于Java开发一个极简版敏感词检测工具,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录你是否还在为敏感词检测头疼一、极简版Java敏感词检测工具的3大核心优势1.1 优势1:DFA算法驱动,效率提升10

Python开发简易网络服务器的示例详解(新手入门)

《Python开发简易网络服务器的示例详解(新手入门)》网络服务器是互联网基础设施的核心组件,它本质上是一个持续运行的程序,负责监听特定端口,本文将使用Python开发一个简单的网络服务器,感兴趣的小... 目录网络服务器基础概念python内置服务器模块1. HTTP服务器模块2. Socket服务器模块

Java 与 LibreOffice 集成开发指南(环境搭建及代码示例)

《Java与LibreOffice集成开发指南(环境搭建及代码示例)》本文介绍Java与LibreOffice的集成方法,涵盖环境配置、API调用、文档转换、UNO桥接及REST接口等技术,提供... 目录1. 引言2. 环境搭建2.1 安装 LibreOffice2.2 配置 Java 开发环境2.3 配

Python38个游戏开发库整理汇总

《Python38个游戏开发库整理汇总》文章介绍了多种Python游戏开发库,涵盖2D/3D游戏开发、多人游戏框架及视觉小说引擎,适合不同需求的开发者入门,强调跨平台支持与易用性,并鼓励读者交流反馈以... 目录PyGameCocos2dPySoyPyOgrepygletPanda3DBlenderFife

使用Python开发一个Ditto剪贴板数据导出工具

《使用Python开发一个Ditto剪贴板数据导出工具》在日常工作中,我们经常需要处理大量的剪贴板数据,下面将介绍如何使用Python的wxPython库开发一个图形化工具,实现从Ditto数据库中读... 目录前言运行结果项目需求分析技术选型核心功能实现1. Ditto数据库结构分析2. 数据库自动定位3

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁