第4章 初识STM32—零死角玩转STM32-F429系列

第4章     初识STM32

全套200集视频教程和1000PDF教程请到秉火论坛下载:www.firebbs.cn

野火视频教程优酷观看网址:http://i.youku.com/firege

 

本章参考资料:1、《STM8和STM32产品选型手册》2、SetupSTM32CubeMX-4.11.0.exe

4.1 什么是STM32

STM32,从字面上来理解,ST是意法半导体,MMicroelectronics的缩写,32表示32位,合起来理解,STM32就是指ST公司开发的32位微控制器。在如今的32位控制器当中,STM32可以说是最璀璨的新星,它受宠若娇,大受工程师和市场的青睐,无芯能出其右。

4.1.1 STM32诞生的背景

51 是嵌入式学习中一款入门级的精典 MCU,因其结构简单,易于教学,且可以通过串口编程而不需要额外的仿真器,所以在教学时被大量采用,至今很多大学在嵌入式教学中用的还是 5151 诞生于 70 年代,属于传统的 8 位单片机,如今,久经岁月的洗礼,既有其辉煌又有其不足。现在的市场产品竞争越来越激烈,对成本极其敏感,相应地对 MCU 性能要求也更苛刻:更多功能,更低功耗,易用界面和多任务。面对这些要求,51 现有的资源就显得得抓襟见肘。所以无论是高校教学还是市场需求,都急需一款新的 MCU 为这个领域注入新的活力。

基于这样的市场需求, ARM 公司推出了其全新的基于 ARMv7 架构的 32 Cortex-M3 微控制器内核。紧随其后,ST(意法半导体)公司就推出了基于 Cortex-M3 内核的 MCU—STM32STM32 凭借其产品线的多样化、极高的性价比、简单易用的库开发方式,迅速在众多 Cortex-M3 MCU 中脱颖而出,成为最闪亮的一颗新星。STM32 一上市就迅速占领了中低端 MCU 市场,受到了市场和工程师的无比青睐,颇有星火燎原之势。

作为一名合格的嵌入式工程师,面对新出现的技术,我们不是充耳不闻,而是要尽快吻合市场的需要,跟上技术的潮流。如今 STM32 的出现就是一种趋势,一种潮流,我们要做的就是搭上这趟快车,让自己的技术更有竞争力。

4.2 STM32能做什么

STM32属于一个微控制器,自带了各种常用通信接口,比如USARTI2CSPI等,可接非常多的传感器,可以控制很多的设备。现实生活中,我们接触到的很多电器产品都有STM32的身影,比如智能手环,微型四轴飞行器,平衡车、移动POST机,智能电饭锅,3D打印机等等。下面我们以最近最为火爆的两个产品来讲解下,一个是手环,一个是飞行器。

4.2.1 智能手环

41 三星 GearFit 智能手环

红圈:STM32F439ZIY6S处理器,2048KB FLASH 256KB RAM ,WLCSP143封装。

橙圈:Macronix MX69V28F64 16 MB闪存,基于MCP封装的存储器,是一种包含了NORSRAM的闪存,这在手环手机这种移动设备中经常使用,优点是体积小,可以减小PCB的尺寸。这个闪存用的439FSMC接口驱动。

黄圈:InvenSense MPU-6500陀螺仪/加速度计,用439I2C接口驱动。

绿圈:博通BCM4334WKUBG芯片,支持802.11n,蓝牙4.0+HS以及FM接收芯片,用439SDIO或者SPI接口驱动。

显示:1.84"可弯曲屏幕(Super AMOLED)432 x 128像素。触摸部分用439I2C接口驱动,OLED显示部分用LTDC接口驱动。

表格 41 三星Gear Fit 和秉火STM32F429至尊版资源对比

资源

三星Gear Fit

秉火STM32F429至尊版

CPU

STM32F439ZIY6SWLCSP143封装

STM32F429IGT6LQPF144 封装

存储

NOR+SRAM 16MBFSMC接口

SDRAM 8MBFMC接口

显示

1.84寸的 AMOLEDRGB接口,LTDC驱动

5寸电容屏,RGB接口,LTDC驱动

陀螺仪

MPU6050I2C接口

MPU6050I2C接口

无线通信

蓝牙:博通BCM4334SDIO或者SPI接口

WIFI:美满W8782SDIO接口

除了这几个重要资源的对比,我们的429开发板上还集成了以太网,音频,CAN485232USB转串口,蜂鸣器,LED,电容按键等外设资源,可以充分的学习429这个芯片。在板子上面,还可以跑系统ucosiii,学习图形界面emwin。如果功夫所至,学完之后,自己都可以做一个类似Gear Fit这样的手环。可很多人又会说,Gear Fit 涉及硬件和软件,整个系统这么复杂,并不是一个人可以完成的。说的没错,我们可以做不了,但是我们的能力可以无限接近,多学点,技多不压身嘛。

42 ucosiii+emwin 做的系统界面(429开发板的开机界面)

4.2.2 微型四轴飞行器

现在无人机非常火热,高端的无人机用STM32做不来,但是小型的四轴飞行器用STM32还是绰绰有余的。如图 43所示飞行器的基本都可以用STM32搞定。

43 微型四轴飞行器

上面的是属于产品,如果想自己DIY,可以在入门STM32之后,买一本飞行器DIY的书,边做边学。入门级的书籍推荐《四轴飞行器DIY—基于STM32微控制器》,见图 44

44 四轴飞行器DIY —基于STM32微控制器

4.2.3 淘宝众筹

学会了STM32,想自己做产品,如何实现自己的梦想,淘宝众筹吧。做出产品原型,用别人的钱为自己的梦想买单。

淘宝众筹科技类网址:这里面有很多小玩意都可以用STM32实现,只要你的创意到了,就会有人买单,前提是我们要先学会STM32

https://hi.taobao.com/market/hi/list.php?spm=a215p.1596646.1.8.LbVyJk#type=121288001

45 淘宝众筹科技类

4.3 STM32怎么选型

4.3.1 STM32分类

STM32有很多系列,可以满足市场的各种需求,从内核上分有Cortex-M0M3M4M7这几种,每个内核又大概分为主流、高性能和低功耗。具体的见表格 42

单纯从学习的角度出发,可以选择F1F4F1代表了基础型,基于Cortex-M3内核,主频为72MHZF4代表了高性能,基于Cortex-M4内核,主频180M

之于F1F4429系列以上)除了内核不同和主频的提升外,升级的明显特色就是带了LCD控制器和摄像头接口,支持SDRAM,这个区别在项目选型上会被优先考虑。

表格 42 STM8STM32分类

CPU位数

内核

系列

描述

32

Cortex-M0

STM32-F0

入门级

STM32-L0

低功耗

Cortex-M3

STM32-F1

基础型,主频72M

STM32-F2

高性能

STM32-L1

低功耗

Cortex-M4

STM32-F3

混和信号

STM32-F4

高性能,主频180M

STM32-L4

低功耗

Cortex-M7

STM32-F7

高性能

8

超级版6502

STM8S

标准系列

STM8AF

标准系列的汽车应用

STM8AL

低功耗的汽车应用

STM8L

低功耗

4.3.2 STM32 命名方法

这里我们以秉火F429至尊版用的型号STM32F429IGT6来讲解下STM32的命名方法。

表格 43 STM32F429IGT6命名解释

STM32

F

429

I

G

T

6

家族

STM32 表示32bitMCU

产品类型

F表示基础型

具体特性

429表示高性能且带DSPFPU

引脚数目

I表示176pin,其他常用的为C表示48R表示64V表示100Z表示144B表示208N表示216

FLASH大小

G表示1024KB,其他常用的为C表示256E表示512I表示2048

封装

T表示QFP封装,这个是最常用的封装

温度

6表示温度等级为A -40~85°

有关更详细的命名方法见图 46。

46 STM8STM32命名方法,摘自《STM8STM32选型手册》

4.3.3 选择合适的MCU

了解了STM32的分类和命名方法之后,就可以根据项目的具体需求先大概选择哪类内核的MCU,普通应用,不需要接大屏幕的一般选择Cortex-M3内核的F1系列,如果要追求高性能,需要大量的数据运算,且需要外接RGB大屏幕的则选择Cortex-M4内核的F429系列。

明确了大方向之后,接下来就是细分选型,先确定引脚,引脚多的功能就多,价格也贵,具体得根据实际项目中需要使用到什么功能,够用就好。确定好了引脚数目之后再选择FLASH大小,相同引脚数的MCU会有不同的FLASH大小可供选择,这个也是根据实际需要选择,程序大的就选择大点的FLASH,要是产品一量产,这些省下来的都是钱啊。有些月出货量以KK(百万数量级)为单位的产品,不仅是MCU,连电阻电容能少用就少用,更甚者连PCB的过孔的多少都有讲究。项目中的元器件的选型的水深着啊,很多学问。

1.    如何分配原理图IO

在画原理图之前,一般的做法是先把引脚分类好,然后才开始画原理图,引脚分类具体见表格 44

表格 44 画原理图时的引脚分类

引脚分类

引脚说明说明

电源

(VBAT)(VDD VSS)(VDDA VSSA)(VREF+ VREF-)

晶振IO

主晶振IORTC晶振IO

下载IO

用于JTAG下载的IOJTMSJTCKJTDIJTDONJTRST

BOOT IO

BOOT0BOOT1,用于设置系统的启动方式

复位IO

NRST,用于外部复位

上面5部分IO组成的系统我们也叫做最小系统

GPIO

专用器件接到专用的总线,比如I2CSPISDIOFSMCDCMI这些总线的器件需要接到专用的IO

普通的元器件接到GPIO,比如蜂鸣器,LED,按键等元器件用普通的GPIO

如果还有剩下的IO,可根据项目需要引出或者不引出

2.    如何寻找IO的功能说明

要想根据功能来分配IO,那就得先知道每个IO的功能说明,这个我们可以从官方的数据手册里面找到。在学习的时候,有两个官方资料我们会经常用到,一个是参考手册(英文叫Reference manual),另外一个是数据手册(英文叫Data Sheet)。两者的具体区别见表格 45

表格 45 参考手册和数据手册的内容区别

手册

主要内容

说明

参考手册

片上外设的功能说明和寄存器描述

对片上每一个外设的功能和使用做了详细的说明,包含寄存器的详细描述。编程的时候需要反复查询这个手册。

数据手册

功能概览

主要讲这个芯片有哪些功能,属于概括性的介绍。芯片选型的时候首先看这个部分。

引脚说明

详细描述每一个引脚的功能,设计原理图的时候和写程序的时候需要参考这部分。

内存映射

讲解该芯片的内存映射,列举每个总线的地址和包含有哪些外设。

封装特性

讲解芯片的封装,包含每个引脚的长度宽度等,我们画PCB封装的时候需要参考这部分的参数。

一句话概括:数据手册主要用于芯片选型和设计原理图时参考,参考手册主要用于在编程的时候查阅。官方的这两个文档可以从官方网址里面下载:http://www.stmcu.org/document/list/index/category-150,也可以从我们配置的光盘资料里面找到。

在数据手册中,有关引脚定义的部分在Pinouts and pin description这个小节中,具体定义见表格 46

表格 46 数据手册中对引脚定义

表格 47 对引脚定义的解读

①    

名称

缩写

说明

①    引脚序号

阿拉伯数字表示LQFP封装,英文字母开头的表示BGA封装。引脚序号这里列出了有8种封装型号,具体使用哪一种要根据实际情况来选择。

②    引脚名称

指复位状态下的引脚名称

③    引脚类型

S

电源引脚

I

输入引脚

I/O

输入/输出引脚

④    I/O结构

FT

兼容5V

 

TTa

只支持3V3,且直接到ADC

①    

B

BOOT引脚

①    

RST

复位引脚,内部带弱上拉

⑤    注意事项

对某些IO要注意的事项的特别说明

⑥    复用功能

IO的复用功能,过GPIOx_AFR寄存器来配置选择。一个IO口可以复用为多个功能,即一脚多用,这个在设计原理图和编程的时候要灵活选择。

⑦    额外功能

IO的额外功能,通过直连的外设寄存器配置来选择。个人觉得在使用上跟复用功能差不多。

3.    开始分配原理图IO

比如我们的F429至尊版使用的MCU型号是STM32F429IGT6,封装为LQFP176,我们在数据手册中找到这个封装的引脚定义,然后根据引脚序号,一个一个复制出来,整理成excel表。具体整理方法按照表格 44 画原理图时的引脚分类即可。分配好之后就开始画原理图。

4.3.4 PCB哪里打样

设计好原理图,画好PCB之后,需要把板子做出来,进行软硬件联调。首先得PCB打样,这里我推荐一家我经常打样的厂家,深圳嘉立创(JLC),行业标杆,良心价格,网址:http://www.sz-jlc.com。一块10CM*10CM以内的板子,三天做好,50块就可以搞定,还包邮,简直便宜到掉渣。如果你足够懒,不想自己焊接电阻电容二三极管什么的,嘉立创还可以帮你把PCB样板上的阻容贴好给你,打样贴片一条龙。

样品做好了,软硬件什么都OK,要小批量怎么办?还是找JLC

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/35865.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

玩转大数据之——通过java操作office/wps的 EXCEL

操作Office文档,要用到apache公司的一个工具包: poi-3.7-20101029.jar poi插件的使用方式类似dom技术 不同版本: 接下来进行演示功能: 1.用纯Java技术实现创建一个名为a.xls的文件(工作薄), 在其中新建一个"表1"的sheet,往B9单元…

Pandas —— resample()重采样和asfreq()频度转换

一、resample resample()进行重采样。 重采样(Resampling)指的是把时间序列的频度变为另一个频度的过程。把高频度的数据变为低频度叫做降采样(downsampling),把低频度变为高频度叫做升采样(upsampling&am…

玩转MySQL(4)---多表关联

一、首先,我们可以查看数据库的各种变量: 1.SHOW VARIABLES 查看数据库的变量 2.查看当前数据库的编码 SHOW VARIABLES WHERE variable_name LIKE character%; 3.解决中文乱码,如下三个编码保持一致就可以。 character_set_client、charac…

adb连接木木模拟器

木木模拟器调试到开发模式,在一般在\Nemu\vmonitor\bin中,运行命令行adb connect 127.0.0.1:7555

玩转MySQL -----处理大数据对象

一、大数据对象简介 1.LOB(Large Object,大型对象)类型的字段现在用得越来越多了。因为这种类型的字段,容量大(最多能容纳4GB的数据),且一个表中可以有多个这种类型的字段,很灵活&am…

http 转 https 操作步骤

http 转https 花了很多的时间,走了很多的网弯路,最后还是弄好了 步骤: 第一步: 进入阿里云账号,进入 控制台 -》 安全(云盾) -》 CA证书服务 -》 购买证书 -》 注意:这里选项的时候…

python数据类型转换

Python数据类型转换 Python数据类型之间的转换 函数描述 int(x [,base]) 将x转换为一个整数 long(x [,base] ) 将x转换为一个长整数 float(x) 将x转换到一个浮点数 complex(real [,imag]) 创建一个复数 str(x) 将对象 x 转换为字符串 repr(x) 将对象 x 转换为表达式…

搭建frida+木木模拟器运行环境

目录 pip安装frida安装木木模拟器开启模拟器的root权限打开模拟器USB调试安装RE文件管理器 下载frida服务端-Android下载frida-server文件移动文件到tmp下 使用adb连接mumu模拟器设置frida-server权限并启动查看是否启动成功 使用python调用 pip安装frida 本机环境win10 (AMD6…

利用ChatGPT 5分钟制作一份思维导图

一、利用ChatGPT列出思维导图大纲 二、利用ChatGPT继续将大纲转化为markdown语法 三、将上面内容复制到txt文档中保存 四、修改文件名后缀为md 五、将生成的md文件导入到xmind中 打开xmind软件,通过「文件→导入→markdown」,选择我们刚刚创建的文件导入…

音视频技术开发周刊 | 302

每周一期,纵览音视频技术领域的干货。 新闻投稿:contributelivevideostack.com。 ChatGPT神器Code Interpreter终于开放,到底怎么用?这里有一份保姆级教程 Code Interpreter 已经正式开放。 上海世界AI大会:MidJourney…

Window之系统开机Administrator账户被停用

在我们的Win7系统开机时如果没有设置其他账户,并且我们的Administrator账户被停用怎么进入Win7系统呢? 解决方法: 重启电脑后按F8进入安全模式, 右键点击“我的电脑” -- “管理” -- “本地用户和组” -- “用户” -- 右键“Ad…

Spug“账户已被系统禁用”的解决办法

前置文章: Spug发布前端项目实战全过程https://blog.csdn.net/wdy_2099/article/details/120215392 Spug设置报警提醒功能(钉钉、微信、邮箱)落地详细https://blog.csdn.net/wdy_2099/article/details/120224867 问题:未知原因导…

桌面计算机安全禁用账户,Win10电脑提示“你的账户已被停用,请向系统管理员咨询”的解决教程...

有用户在安装 解决方法一: 1、此情况可以长按电源键强制关机再开机看到WIN10登陆界面时再次长按电源键强制关机,如此三次后再开机会看到“查看高级修复选项”的按钮,点此按钮会进入WINRE环境,选择“疑难解答”; 2、选择“高级选项”; 3、选择…

【转】您的账户已被停用,请向系统管理员咨询解决办法

升级win10后发现开机时进入安全模式长按F8已经没用了,其实win10中把安全模式放入了系统修复模块,下面就来介绍下win10如何进入安全模式。 进入下边这个界面可通过按住 SHIFT 点击重启即可 工具/原料 win10 方法/步骤 打开“开始”菜单,找到里…

您的账户已被停用,请向系统管理员咨询 解决方案(亲测有效)

当你的电脑误操作了以下步骤,或者被篡改了设置了这里 那恭喜你,重启后就登不上Administrator账户了 首先看一下网上的三种无效方式 无效方式一:安全模式进入用户和组 一般两种方式进入安全模式: 方式一:F8进入 方式二:按住shift 重启 (1)选中其中的安全模式,在安全…

国庆节文字摘抄好词好句好段怎么写?用便签记录就可以

一般来说,在国庆节有不少学生都有一项这样的作业,这就是写国庆节文字摘抄,例如一些关于国庆节的好词好句好段,这不仅可以帮助我们积累一些知识,也可以让我们在以后的日常生活、写作文中使用到。那么国庆节文字照抄怎么…

我一直都以为摘录好词好句是一个好…

我一直都以为摘录好词好句是一个好习惯,以前我看到一些好词好句我就会把它们抄写到笔记本上,把它们背熟,然后到了写文章时就滴字不漏地照搬进去。直到现在我才明白,原来这是一个坏习惯,说是摘录,其实是抄袭…

关注CSDN社区微信,更多精彩等你来

CSDN社区微信公众号“程序人生”(微信ID:coder_life)来了,每天我们会将CSDN社区中大量的优质内容浓缩成1~3篇文章,推送到您的手机中,让您无论何时何地都能感受到知识的精彩、技术的力量。 扫描二维码关注&a…

常用值得收藏的网站/软件 持续更新中

学识决定眼界,眼界决定格局,格局决定人生。 文章目录 一、查询与资源类二、教育与学习类三、代码与资源类四、办工类五、技术与知识面类六、交流与分享类七、其他 这些年经常用的网站,觉得非常实用。与大家分享分享,独乐乐不如众乐…