STM32开发板简介

1.简介

1.stm32是st公司基于armcortex-m没和开发的32位微控制器,常用于嵌入式领域

2.ARM介绍

1.即指ARM公司,也指处理器内核

2.ARM内核由ARM公司设计,ARM公司是全球领先的半导体只是产权

3.ARM内核

注:r系列主要面向实时性很高的场景,a系列用于手机领域,m系列主要应用于单片机领域

3.stm32参考参数(我用于开发的stm32)

1.ram:运行内存,实际存储戒指是sram

2.rom:程序存储器,实际存储介质是flash闪存

4.外设

1.NVIC:用于管理中断的设备,例如配置中断优先级

2.SysTick:系统滴答定时器,主要用于给操作系统提供定时服务,在加入操作系统(FreesRTOS,UCOS等)时,就需要SysTick提供定时来进行任务切换,完成delay函数的功能

3.RCC:对系统的时钟进行配置,使能各模块的时钟

4.GPIO:通用IO口:用于电灯,读取按键等

5.AFIO:复用IO口,可以完成复用功能端口的重定义,还有中断端口的配置

6.EXTI:外部中断,配置好外部中断后,当引脚有点评变化时,就可以出发中断,让CPU来处理任务

7.TIM:定时器(分为高级定时器,通用定时器,基本定时器,其中通用定时器最常用,不仅可以完成定时终端的任务,还可以完成测频率,生成PWM波形,配置成专用编码器接口等功能)

8.ADC:模数转换器(stm32内置了12位的AD转换器可以直接读取IO口的模拟电压值,无需链接外部AD芯片)

9.DMA:直接内存访问,可以帮助CPU完成搬运大量数据的繁杂任务

10.USARRT:同/异步串口

11.I2C/SPI:常用内部通信协议,可以用硬件输出时序波形

12.CAN/USB通信:CAN用于汽车领域

13.RTC:实时时钟:在stm32内部完成年月日,时分秒的计时功能(可接入外部备用电池)

14.CRC:数据校验方式,用于判断数据正确性

15.PWR:电源控制,让芯片进入睡眠模式等状态,来达到省电的目的

16.BKP:备份寄存器,当系统掉电时仍可由备用电池保存数据,可完成特殊功能

17.IWDG/WWDG:独立/窗口看门狗,当单片机因电磁干扰死机或程序出现死循环时,可及时复位芯片,保证系统稳定

18.DAC:数模转换器,可直接在IO口输出模拟电压,是ADC模数转换的逆过程

19.SDIO:SD卡的接口,可以用来读取SD卡

20.FSMC:可变静态存储控制器,可用于扩展内存,或配置成其他总线协议,用于某些硬件操作

21.USB OTG:USB主机接口,可以让stm32作为USB主机去读取其它USB设备

5.芯片命名规则

注:图中6代表工业级温度范围为-40-85℃

6.系统结构

7.引脚定义表

注:标红色为电源相关引脚,蓝色时最小系统相关引脚,绿色是IO口,功能口

1.S代表电源,I代表输入,O代表输出,IO代表输入输出

2.IO口电平代表IO口所能容忍的电压(有FT代表能容忍5伏电压,没有的只能容忍3.3伏电压)

3.主功能"上电后默认的功能,一般和引脚名称相同(若不同,引脚名称为主功能而不是实际功 能)

4.默认复用功能是IO口上同时连接的外设功能和引脚

5.重定义功能:若两个功能在一个IO扣上,可以把其中一个复用功能重映射到其它端口上

6.引脚具体功能:

1.VBAT:备用电池供电的引脚,可接一个3伏电池,系统电源断电时,备用电池可以给内部的RTC时钟和备份寄存器提供电源

2.PC13-TAMPER-RTC:IO口/入侵检测/RIC,IO口可以根据程序输出或读取高低电平,侵入检测可以用来做安全保障的功能,RTC引脚可以用来输出RTC校准时钟,闹钟脉冲或秒脉冲

3.PC14-OSC32_IN/PC15-OSC32_OUT:IO口或32.768Hz的RTC晶振

4.OSC32_OUT/IN:接系统主晶振,一般是8MHz(芯片内有锁相环电路,可以对这个8MHz的频率进行倍频,最后产生72MHz的频率)

5.NRST:系统复位引脚,N代表它是低电平复位

6.VSSA/VDDA:内部模拟部分电源。例如:ADC,RC振荡器等(VSS是负极,接GND,VDD是正极,接3.3伏)

7.PA0-WKUP-PB1:IO口(WKUP可以用于唤醒处于待机模式的STM32)

8.PB2:IO口或BOOT1引脚(BOOT引脚用于配置启动模式)

9.PB10、11:IO口

10.VSS1、2、3/VDD1、2、3:系统主电源口(VSS为负极GND,VDD为正极3.3伏)

11.:PB12-PA12:IO口

12.PA13加上PB14-PB4:IO口或调试端口,用于调试程序和下载程序,stm32支持SWD和JTAG两种调试方式(SWD需要两根线,分别是SWDIO和SWCLK,JITAG需要5根线,分别是JTMS,JTCK,JTFI,JTDO,NJRST,使用SWD是剩余IO口可作为普通IO口使用,但要进行配置)

13.PB5-9均为IO口

14.BOOT0:用来做启动配置

8.启动配置

1.当BOOT1接0,boot0接1时(系统存储器存的是BootLoader程序,会接收串口的数据,然后刷新到主闪存中)

2.BOOT0、1均接1为配置内置SRAM启动,主要进行程序调试

9.最小系统电路

1.在正负极之间,会添加一个滤波电容,保证供电电压稳定

2.晶振连接到图中右方的5,6号引脚,在接啷个20皮法的电容,作为启震电容,另一端接地(若需要RTC功能,还需要再接一个32.768KHz(OSC32)的晶振,接在3,4,号引脚)

3.复位电路:10k电阻和0.1微法电容组成,用于给单片机提供复位信号NRST接在7号引脚(NRST为低电平复位,在上电瞬间,电容是没有电的)

4.启动配置:拨动开关,可以让BOOT引脚选择接3.3伏还是GND了

相关推荐
【 STM32开发 】2 小时前
【STM32 + CubeMX 教程】RTC 实时时钟 之 闹钟 -- F407篇
stm32·单片机·嵌入式硬件
weiyvyy2 小时前
接口开发的完整流程:从需求到验证
驱动开发·嵌入式硬件·硬件架构·硬件工程
MC_J2 小时前
STM32+FMC驱动W9825G6 SDRAM程序以及遇到的问题讲解
stm32·单片机
少年潜行2 小时前
【开源】STM32驱动BH1750(附开源代码)
单片机
0南城逆流02 小时前
【STM32】知识点介绍八:UART/USART串口功能
stm32·单片机·嵌入式硬件
国家一级保护废物...2 小时前
51单片机day1
单片机·嵌入式硬件·51单片机
小白学电子_2 小时前
STM32常用HAL常见库函数快速运用和讲解
stm32·单片机·嵌入式硬件
woshihonghonga2 小时前
解决Eclipse的Copilot终端依赖问题
stm32·mcu·eclipse·copilot·ai编程
busideyang3 小时前
STM32中__weak(弱定义)函数核心总结
c语言·stm32·单片机·嵌入式硬件·嵌入式