STM32学习笔记 一、STM32简介

本文介绍了STM32单片机的基础知识,包括STM32F103VET6的主要规格、STM32芯片的系统结构,特别是其丰富的外设功能和Cortex-M3内核的应用。讲解了STM32在嵌入式领域的广泛应用和MCU与单片机的区别。
摘要由CSDN通过智能技术生成

目录

一、STM32简介... 1

1.1简介... 1

1.2 STM32芯片内部的外设... 3

1.3 STM32芯片系统结构... 5

一、STM32简介

1.1简介

本教程使用STM32最小系统板(STM32F103VET6)加底板硬件平台进行学习。使用跳线可以完成任意硬件的连接,相比于成品的开发板方式,使用条线更有利于对点单片机的学习,而且也可以避免开发板的一些问题(如引脚冲突、引脚无法更改等)。优点:方便,缺点:没有明确指出引脚功能,所以连线时要更加细心一些。主要套件如下:

STM32是一款32位单片机(51单片机是8位单片机),其中“ST”是ST公司(得捷电子Digi-Key是其官方授权的分销商),“M”则是“MicroController Unit, MCU”的缩写,即STM32基于ARM Cortex-M内核开发的32位微控制器。

MCU 和单片机的区别:

原理不同:

mcu又称 单片 微型 计算机(Single Chip Microcomputer )或者单片机,重点在于单片。

单片机则是把一个计算机系统集成到一个芯片上,重点在于芯片,相当于微型计算机但缺少I/O设备。

指代对象不同:

MCU是指单片微型计算机或者单片机。单片机则是微型计算机家族中的一个分支而已。

范畴不同:

CPU有三个分支:DSP、MCU(Micro Control Unit,微控制器单元)、MPU(Micro Processor Unit,微处理器单元)。

单片机是MCU中最具有代表性,是MCU的实现。

功能不同。

MCU在不同的场合有不同的应用。例如手机、遥控器甚至汽车电子和机器手臂的控制等都有涉及。

单片机的使用领域比MCU的要更为广泛,从家用电器和通讯设备到智能仪表以及导航系统都有应用。

用途不同:

MCU倾向于不同信息源的多种数据的处理诊断和运算,更侧重于控制。

而单片机就是一块芯片,主要是对数据进行高速化处理。

STM32功能强大、性能优异、片上资源丰富、功耗低,是一款经典的嵌入式微控制器,常应用在嵌入式领域,如智能车、无人机、机器人、无线通信、物联网、工业控制、娱乐电子产品等。

STM32家族MCU产品

1.2 STM32芯片内部的外设

STM32F103VET6主要指标:

系列:主流系列STM32F1

内核:ARM Cortex-M3

主频:72MHz

RAM(运行内存):64K(SRAM)

ROM(程序存储器):512K(Flash)

供电:2.0~3.6V(标准3.3V)。由于USB供电是5V,所以还要加稳压芯片。(注:51单片机为5V供电)

封装:LQFP100

1-1 STM32F1系列的片上资源/外设

英文缩写

名称

补充说明

英文缩写

名称

补充说明

NVIC

嵌套向量中断控制器

内核中用于管理中断的设备,如配置中断优先级。

CAN

CAN通信

常用于汽车领域。

SysTick

系统滴答定时器

内核中的定时器,给操作系统(如FreeRTOS、UCOS等)提供定时服务,以完成任务切换。

USB

USB通信

可以做模拟鼠标、模拟U盘等设备。

RCC

复位和时钟控制

使能各模块时钟,上电默认其他外设模块均无时钟。

RTC

实时时钟

可接备用电池,掉电保持运行。

GPIO

通用IO口

可以用GPIO来点灯、读取按键等。

CRC

CRC校验

AFIO

复用IO口

可以完成复用端口的重定义,中断端口的配置。

PWR

电源控制

可使芯片进入睡眠模式,节能。

EXTI

外部中断

引脚有电平变化会触发中断。

BKP

备份寄存器

接备用电池,掉电保存数据。

TIM

定时器

最常用,功能最多的外设,可以测频率、生成PWM波等。分为高级定时器、通用定时器(最常用)、基本定时器。

IWDG

独立看门狗

当程序死机或死循环时,复位程序。

ADC

模数转换器

芯片内的12位ADC外设,无需外接AD芯片。

WWDG

窗口看门狗

DMA

直接内存访问

帮助CPU搬运大量数据。

DAC

数模转换器

USART

同步/异步串口通信

异步串口UART应用更多。

SDIO

SD卡接口

用于读取SD卡数据。

I2C

I2C通信

FSMC

可变静态存储控制器

用于扩展内存,或配置成其他总线协议。

SPI

SPI通信

USB OTG

USB主机接口

让STM32作为USB主机,读取其他设备。

1.3 STM32芯片系统结构

  1. Cortex-M3:内核。注意1ICode、2DCode、3System是直接从内核引出的三根总线。
  2. Flash:存储编写的程序。ICode总线和DCode总线主要用于连接Flash闪存。
  3. SRAM:用于存储程序运行时的变量数据
  4. ICode:指令总线。加载程序指令。
  5. DCode:数据总线。加载数据,如常量和调试参数。
  6. System:系统总线。连接到Flash以外其他外设上,如SRAM、FSMC(FSMC基本不会用到)。
  7. AHB系统总线:先进高性能总线。用于挂载最基本的(如复位和时钟控制RCC、SDIO)、或者性能比较高的外设。
  8. APB2、APB1:先进外设总线。用于连接一般的外设。通常AHB(72MHz)性能总体高于APB,而APB2(72MHz)性能高于APB1(36MHz)。所以APB2连接外设中稍微重要的部分,如GPIO、各外设的1号接口;剩下的次要外设给APB1。
  9. 桥接2、桥接1:由于AHB和APB的总线协议、 总线速度、数据传输格式上的差异,需要加上2个桥接,来完成数据的转换和缓存。
  10. DMA2、DMA1:拥有和CPU相同的总线控制权,用于帮助CPU完成数据搬运这样简单但重复的活,相当于CPU的小秘书。若外设需要进行数据搬运,那么会直接找DMA(DMA请求),DMA就会获得总线控制权来搬运数据,整个过程无需CPU的参与。

       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值