打印
[STM32F7]

stm32 swdio 电路设计_讲讲基于STM32的硬件资源

[复制链接]
235|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
慢醇|  楼主 | 2022-11-22 23:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
今天来说说高端处理器的基本知识,开发32位单片机首先要了解基本芯片的硬件基础,所以今天就讲讲基于STM32的硬件资源。

STM32基础硬件知识

STM32与单片机的硬件接口基本一致,都是调用硬件接口控制I/O,完成相应的功能。另外,STM32在软件方面具有ST官方的源代码开放的库文件,开发速度相对轻松方便,而且BUG较少。

本文以STM32F103为例对STM32的硬件资源进行介绍。

使用特权

评论回复
沙发
慢醇|  楼主 | 2022-11-22 23:44 | 只看该作者
STM32最小系统

72 MHz  -40~105°C ,有内置的ARM核心,因此它与所有的ARM工具和软件兼容, 128k 闪存 。

NVIC 嵌套的向量式中断控制器---可处理43个可屏蔽中断通道(不含16个中断线)和16个优先级。

EXTI 外部中断/事件控制器,含19个边沿检测器,用于产生中断/事件请求 。

时钟和启动    复位时内部8MHz的RC振荡器被选为默认的CPU时钟,有多个预分频器用于配置AHB的频率、高速APB(APB2)和低速APB(APB1)区域。AHB和高速APB 的最高频率是72MHz,低速APB的最高频率为36MHz。

使用特权

评论回复
板凳
慢醇|  楼主 | 2022-11-22 23:47 | 只看该作者
低功耗模式:睡眠,停机,待机

DMA可以用于主要的外设:SPI、I2C、USART、通用和高级定时器TIMx和ADC。

通用同步/异步接受发送器(USART)

ADC(模拟/数字转换器)::内嵌2个12位的模拟/数字转换器(ADC),每个ADC有多达16个外部通道。

VDD:器件内部的工作电压,芯片的工作电压(Vcc>Vdd)

VCC:电路的供电电压。

VSS:电路公共接地端电压——接地端——接地点

使用特权

评论回复
地板
慢醇|  楼主 | 2022-11-22 23:48 | 只看该作者
图1-STM32F103最小系统

2、启动选择

图1中上部的BOOT0和BOOT1用于设置STM32的启动方式,其对应启动模式如下表所示:

表1- BOOT0、BOOT1启动模式表

BOOT0

BOOT1

启动模式

说明

0

X

用户闪存存储器

用户闪存存储器,也就是FLASH启动

1

0

系统存储器

系统存储器启动,用于串口下载

1

1

SRAM启动

SRAM启动,用于在SRAM中调试代码

用串口下载代码时,则配置BOOT0为1,BOOT1为0即可,如果想让STM32一按复位键就开始跑代码,则需要配置BOOT0为0,BOOT1随便设置都可以。

使用特权

评论回复
5
慢醇|  楼主 | 2022-11-22 23:49 | 只看该作者
复位

图2-按键复位电路

STM32支持三种复位方式,分别是系统复位、上电复位和备份区域复位

系统复位:除了时钟控制器的RCC_CSR寄存器中的复位标志和备份区域中的寄存器以外,系统复位将复位所有寄存器的至它们的复位状态。当发生以下任一事件是产生系统复位:

(1)NRST引脚上的低电平(外部复位);

(2)窗口看门狗计数终止(WWDG复位);

(3)独立看门狗计数终止(IWDG复位);

(4)软件复位(SW复位);

(5)低功耗管理复位。

可以通过查看RC_CSR控制状态寄存器中的复位状态标志位识别复位时间来源。

使用特权

评论回复
6
慢醇|  楼主 | 2022-11-22 23:52 | 只看该作者
电源复位

当以下事件中之一发生时,产生电源复位:

(1)上电/掉电复位(POR/PDR复位);

(2)从待机模式中返回。

备份域复位:

当以下事件中之一发生时,产生备份区域复位:

(1)软件复位,备份区域复位可由设置备份域控制寄存器(RCC_BDCR)中的BDRST位产生;

(2)在VDD和VBAT两者掉电的前提下,VDD或VBAT上电将引发备份区域复位。
————————————————

使用特权

评论回复
7
慢醇|  楼主 | 2022-11-22 23:59 | 只看该作者
IO口

图1中STM32的PORTA、PORTB以及PORTC的IO口全部引出,以便于与外部设备连接。

STM32每个GPIO 端口有两个32 位配置寄存器(GPIOx_CRL,GPIOx_CRH),两个32位数据寄存器(GPIOx_IDR,GPIOx_ODR),一个32 位置位/复位寄存器(GPIOx_BSRR),一个16 位复位寄存器(GPIOx_BRR)和一个32 位锁定寄存器(GPIOx_LCKR)。

GPIO 端口的每个位可以由软件分别配置成多种模式,如下所述。每个I/O 端口位可以自由编程,然而I/O端口寄存器必须按32 位字被访问(不允许半字或字节访问)。GPIOx_BSRR 和GPIOx_BRR 寄存器允许对任何GPIO 寄存器的读/更改的独立访问;这样,在读和更改访问之间产生IRQ 时不会发生危险。端口位配置 CNFx[1:0]=xxb,MODEx[1:0]=xxb

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

115

主题

1183

帖子

4

粉丝