STM32F103最小系统原理图
本人初学stm32,若有误解之处,还望大佬们指正改进,感谢!
STM32F103各引脚定义
可前往《STM32F103xCDE_数据手册-英文》的第三章 Pinouts and pin descriptions -》 Table 5. High-density STM32F103xx pin definitions
其中有对各个引脚的定义复用说明
1.VBAT(备用电源)
中文参考手册4.1.2
我看淘宝的最小系统板有的直接悬空有的直连连接VDD。
2.PC13/TAMPER-RTC(IO口/RTC的外接接口)
掉电后还继续运行的定时器,为了RTC外设掉电可以继续运行,必须给STM32芯片通过VBAT引脚接上锂电池。当主电源VDD有效时,由VDD给RTC外设供电。当VDD掉电后,由VBAT给RTC外设供电。
当TAMPER引脚上的信号从’bai0’变成’1’或者从’1’变成’0’(取决于备份控制寄存du器BKP_CR的TPAL位),会产生一个侵入检测事件。侵入检测事件将所有数据备份寄存器内容清除。 然而为了避免丢失侵入事件,侵入检测信号是边沿检测的信号与侵入检测允许位的逻辑与,从而在侵入检测引脚被允许前发生的侵入事件也可以被检测到。
● 当TPAL=0时:如果在启动侵入检测TAMPER引脚前(通过设置TPE位)该引脚已经为高电平,一旦启动侵入检测功能,则会产生一个额外的侵入事件(尽管在TPE位置’1’后并没有出现上升沿)。
● 当TPAL=1时:如果在启动侵入检测引脚TAMPER前(通过设置TPE位)该引脚已经为低电平,一旦启动侵入检测功能,则会产生一个额外的侵入事件(尽管在TPE位置’1’后并没有出现下降沿)。 设置BKP_CSR寄存器的TPIE位为’1’,当检测到侵入事件时就会产生一个中断。 在一个侵入事件被检测到并被清除后,侵入检测引脚TAMPER应该被禁止。然后,在再次写入备份数据寄存器前重新用TPE位启动侵入检测功能。这样,可以阻止软件在侵入检测引脚上仍然有侵入事件时对备份数据寄存器进行写操作。这相当于对侵入引脚TAMPER进行电平检测。 注: 当VDD电源断开时,侵入检测功能仍然有效。为了避免不必要的复位数据备份寄存器,TAMPER引脚应该在片外连接到正确的电平
看其他博客,发现RTC有很多深入之处(挖个坑先,啥RTC配置、时间调节、RTC中断)
3.PC14/OSC32_IN+PC15/OSC32_OUT(IO口/外部低速晶振)
4.PD0/OSC_IN+PD1/OSC_OUT(IO口/外部高速晶振)
在不作晶振输入时,可以做IO口。OSC接外部高速晶振,用来用来产生的高速外部用户时钟,OSC32接外部低速晶振,用来产生的低速外部用户时钟,RTC要跑要接外部低速晶振;两个外部晶振不接芯片都可以跑,因为有内部时钟源
如果使用内部RC振荡器而不使用外部晶振,请按照下面方法处理:
1)对于100脚或144脚的产品,OSC_IN应接地,OSC_OUT应悬空。
2)对于少于100脚的产品,有2种接法:
2.1)OSC_IN和OSC_OUT分别通过10K电阻接地。此方法可提高EMC性能。
2.2)分别重映射OSC_IN和OSC_OUT至PD0和PD1,再配置PD0和PD1为推挽输出并输出’0’。此方法可以减小功耗并(相对2.1)节省2个外部电阻。
32.768KHZ时钟作用:用于精准计时威廉希尔官方网站
如万年历
通常会选择32.768KHz的晶振,原因在于32768=2^15,而嵌入式芯片分频设置寄存器通常是2的次幂的形式,这样经过15次分频后,就很容易的1HZ的频率。实现精准定时。
7.NRST(复位引脚)
有三种复位方式: 上电复位、手动复位、程序自动复位
通常低电平复位:(51单片机高电平复位,电容电阻位置调换)
上电复位:在上电瞬间,电容充电,RESET出现短暂的低电平(STM32中的NRST有施密特功能。大概在输入电压低于1V的时候将芯片复位。),该低电平持续时间由电阻和电容共同决定,计算方式如下:t = 1.1RC(固定计算公式) 1.1 * 10K * 0.1uF=1.1ms 需求的复位信号持续时间约在1ms左右。
手动复位:按键按下时,RESET和地导通,从而产生一个低电平,实现复位。
STM32F10xxx支持三种复位形式,分别为系统复位、上电复位和备份区域复位。
8.VSSA+VDDA(模拟电源输入)
可做ADC电源输入,一般和逻辑电源并联在一起
9.PA0-PA2(IO口/复用功能)
GPIO, USART串口, ADC, 定时器
/****************************************************************************
如我们使用 USART 串口通讯时,需要用到某个 GPIO 引脚作为通讯接收引脚,这个时候就可以把该 GPIO 引脚配置成 USART 串口复用功能,使 USART 可以通过该通讯引脚的接收远端数据。
/****************************************************************************
10.PA3-PB1(IO口/复用功能)
GPIO, USART串口, ADC, SPI, 定时器
11.PB2/BOOT1(IO口/启动设置)
启动时会读这个接口,看其状态决定操作。
用户使用通常都设置成Boot0 Boot1均为0即均为低电平
M3核的器件有3种启动方式,M4的有4种。通过BOOT0,BOOT1的电平进行选择。
一般情况下如果我们想用用串口下载代码,则必须配置BOOT0为1,+BOOT1为0,而如果想让STM32一按复位键就开始跑代码,则需要配置+BOOT0为0,BOOT1随便设。
12.PB10+PB11
GPIO, USART串口, I2C
13.PA13/JTMS/SWDIO+PA14/JTCKSWCLK
JTAG调试接口(PA15/JTDI、PB3/JTDO/、PB4NJTRST), SWD调试接口
14.PA8-PA12+PB12-PB15
GPIO, USART, USB, CAN, SPI, 定时器
PA9(USART1_TX)接CH340的RXD
PA10(USART1_RX)接CH340的TXD
(参考USB转TTL和一键下载威廉希尔官方网站
原理图)
整了下stm32Proteus的简易图,之前我用51做简单仿真时,其实很多外围威廉希尔官方网站
都不需要,直接就能仿真,不知道stm32是不是一样(估摸是一样),然后就整了个stm32Proteus简易图用来简单仿真
参考了许多博客,感谢各位大佬!
STM32F103最小系统原理图
本人初学stm32,若有误解之处,还望大佬们指正改进,感谢!
STM32F103各引脚定义
可前往《STM32F103xCDE_数据手册-英文》的第三章 Pinouts and pin descriptions -》 Table 5. High-density STM32F103xx pin definitions
其中有对各个引脚的定义复用说明
1.VBAT(备用电源)
中文参考手册4.1.2
我看淘宝的最小系统板有的直接悬空有的直连连接VDD。
2.PC13/TAMPER-RTC(IO口/RTC的外接接口)
掉电后还继续运行的定时器,为了RTC外设掉电可以继续运行,必须给STM32芯片通过VBAT引脚接上锂电池。当主电源VDD有效时,由VDD给RTC外设供电。当VDD掉电后,由VBAT给RTC外设供电。
当TAMPER引脚上的信号从’bai0’变成’1’或者从’1’变成’0’(取决于备份控制寄存du器BKP_CR的TPAL位),会产生一个侵入检测事件。侵入检测事件将所有数据备份寄存器内容清除。 然而为了避免丢失侵入事件,侵入检测信号是边沿检测的信号与侵入检测允许位的逻辑与,从而在侵入检测引脚被允许前发生的侵入事件也可以被检测到。
● 当TPAL=0时:如果在启动侵入检测TAMPER引脚前(通过设置TPE位)该引脚已经为高电平,一旦启动侵入检测功能,则会产生一个额外的侵入事件(尽管在TPE位置’1’后并没有出现上升沿)。
● 当TPAL=1时:如果在启动侵入检测引脚TAMPER前(通过设置TPE位)该引脚已经为低电平,一旦启动侵入检测功能,则会产生一个额外的侵入事件(尽管在TPE位置’1’后并没有出现下降沿)。 设置BKP_CSR寄存器的TPIE位为’1’,当检测到侵入事件时就会产生一个中断。 在一个侵入事件被检测到并被清除后,侵入检测引脚TAMPER应该被禁止。然后,在再次写入备份数据寄存器前重新用TPE位启动侵入检测功能。这样,可以阻止软件在侵入检测引脚上仍然有侵入事件时对备份数据寄存器进行写操作。这相当于对侵入引脚TAMPER进行电平检测。 注: 当VDD电源断开时,侵入检测功能仍然有效。为了避免不必要的复位数据备份寄存器,TAMPER引脚应该在片外连接到正确的电平
看其他博客,发现RTC有很多深入之处(挖个坑先,啥RTC配置、时间调节、RTC中断)
3.PC14/OSC32_IN+PC15/OSC32_OUT(IO口/外部低速晶振)
4.PD0/OSC_IN+PD1/OSC_OUT(IO口/外部高速晶振)
在不作晶振输入时,可以做IO口。OSC接外部高速晶振,用来用来产生的高速外部用户时钟,OSC32接外部低速晶振,用来产生的低速外部用户时钟,RTC要跑要接外部低速晶振;两个外部晶振不接芯片都可以跑,因为有内部时钟源
如果使用内部RC振荡器而不使用外部晶振,请按照下面方法处理:
1)对于100脚或144脚的产品,OSC_IN应接地,OSC_OUT应悬空。
2)对于少于100脚的产品,有2种接法:
2.1)OSC_IN和OSC_OUT分别通过10K电阻接地。此方法可提高EMC性能。
2.2)分别重映射OSC_IN和OSC_OUT至PD0和PD1,再配置PD0和PD1为推挽输出并输出’0’。此方法可以减小功耗并(相对2.1)节省2个外部电阻。
32.768KHZ时钟作用:用于精准计时威廉希尔官方网站
如万年历
通常会选择32.768KHz的晶振,原因在于32768=2^15,而嵌入式芯片分频设置寄存器通常是2的次幂的形式,这样经过15次分频后,就很容易的1HZ的频率。实现精准定时。
7.NRST(复位引脚)
有三种复位方式: 上电复位、手动复位、程序自动复位
通常低电平复位:(51单片机高电平复位,电容电阻位置调换)
上电复位:在上电瞬间,电容充电,RESET出现短暂的低电平(STM32中的NRST有施密特功能。大概在输入电压低于1V的时候将芯片复位。),该低电平持续时间由电阻和电容共同决定,计算方式如下:t = 1.1RC(固定计算公式) 1.1 * 10K * 0.1uF=1.1ms 需求的复位信号持续时间约在1ms左右。
手动复位:按键按下时,RESET和地导通,从而产生一个低电平,实现复位。
STM32F10xxx支持三种复位形式,分别为系统复位、上电复位和备份区域复位。
8.VSSA+VDDA(模拟电源输入)
可做ADC电源输入,一般和逻辑电源并联在一起
9.PA0-PA2(IO口/复用功能)
GPIO, USART串口, ADC, 定时器
/****************************************************************************
如我们使用 USART 串口通讯时,需要用到某个 GPIO 引脚作为通讯接收引脚,这个时候就可以把该 GPIO 引脚配置成 USART 串口复用功能,使 USART 可以通过该通讯引脚的接收远端数据。
/****************************************************************************
10.PA3-PB1(IO口/复用功能)
GPIO, USART串口, ADC, SPI, 定时器
11.PB2/BOOT1(IO口/启动设置)
启动时会读这个接口,看其状态决定操作。
用户使用通常都设置成Boot0 Boot1均为0即均为低电平
M3核的器件有3种启动方式,M4的有4种。通过BOOT0,BOOT1的电平进行选择。
一般情况下如果我们想用用串口下载代码,则必须配置BOOT0为1,+BOOT1为0,而如果想让STM32一按复位键就开始跑代码,则需要配置+BOOT0为0,BOOT1随便设。
12.PB10+PB11
GPIO, USART串口, I2C
13.PA13/JTMS/SWDIO+PA14/JTCKSWCLK
JTAG调试接口(PA15/JTDI、PB3/JTDO/、PB4NJTRST), SWD调试接口
14.PA8-PA12+PB12-PB15
GPIO, USART, USB, CAN, SPI, 定时器
PA9(USART1_TX)接CH340的RXD
PA10(USART1_RX)接CH340的TXD
(参考USB转TTL和一键下载威廉希尔官方网站
原理图)
整了下stm32Proteus的简易图,之前我用51做简单仿真时,其实很多外围威廉希尔官方网站
都不需要,直接就能仿真,不知道stm32是不是一样(估摸是一样),然后就整了个stm32Proteus简易图用来简单仿真
参考了许多博客,感谢各位大佬!
举报