
大家好,今天和大家分享一下STM32F103ZET6的板载资源,希望和大家一起学习,一起进步。9 \0 j$ K" w f; W7 O ; d# q: @7 v; n- l7 X* g " Y/ U3 I0 f2 {1 D: _/ o MCU: S1 f6 {2 L, ^6 X ALIENTEK 精英 STM32F103 开发板选择的是 STM32F103ZET6 作为 MCU,该芯片是STM32F103 里面配置非常强大的了,它拥有的资源包括:64KB SRAM、 512KB FLASH、 2 个基本定时器、 4 个通用定时器、 2 个高级定时器、 2 个 DMA 控制器(共 12 个通道)、 3 个 SPI、2 个 IIC、 5 个串口、 1 个 USB、 1 个 CAN、 3 个 12 位 ADC、 1 个 12 位 DAC、 1 个 SDIO 接口、1 个 FSMC 接口以及 112 个通用 IO 口。该芯片的配置十分强悍,并且还带外部总线(FSMC)可以用来外扩 SRAM 和连接 LCD 等,通过 FSMC (可变静态存储控制器)驱动 LCD,可以显著提高 LCD 的刷屏速度,是 STM32F1 家族常用型号里面,最高配置的芯片了,所以我们选择了它作为我们精英板的主芯片。3 A6 W" G: t8 T* d 原理图如下: ![]() ' _' ]1 m) P1 @4 r 开发板资源介绍 W- V- q* y7 Y# `) e0 E ![]() 可以从图中看出ALIENTEK 精英 STM32F103,资源丰富,并充分利用了STM32F103的内部资源,基本所有 STM32F103 的内部资源,都可以在此开发板上验证,同时扩充丰富的接口和功能模块,整个开发板小巧精致。. K e/ x3 i5 }1 |7 Z8 m9 \) o 部分资源详解 JTAG/SWD ALIENTEK 精英 STM32F103 板载的标准 20 针 JTAG/SWD 接口电路如图 所示: q3 n& ^% I w+ d5 z- B, Z n: {% R ![]() 这里,我们采用的是标准的 JTAG 接法,但是 STM32 还有 SWD 接口, SWD 只需要根线(SWCLK 和 SWDIO)就可以下载并调试代码了,这同我们使用串口下载代码差不多,而且速度非常快,能调试。STM32 的 SWD 接口与 JTAG 是共用的,只要接上 JTAG,你就可以使用 SWD 模式了。特别提醒, JTAG 有几个信号线用来接其他外设了,但是 SWD 是完全没有接任何其他外设& |. `$ i3 C- O. ^) I: N 的,所以在使用的时候, 推荐大家一律使用 SWD 模式!!!" c9 A1 K* y5 D* K% v6 `4 f7 ~ 启动模式设置接口 ALIENTEK 精英 STM32F103 的启动模式设置端口电路如图 所示: ![]() 上图的 BOOT0 和 BOOT1 用于设置 STM32 的启动方式:3 \' B+ z, L8 t5 c8 b ![]() 一般情况下(即标准的 ISP 下载步骤)如果我们想用串口下载代码,则必须先配置 BOOT0 为 1,BOOT1 为 0,然后按复位键,最后再通过程序下载代码,下载完以后又需要将 BOOT0 设置为 GND,以便每次复位后都可以运行用户代码。可以看到,这个标准的 ISP 步骤还是很繁琐的,跳线帽跳来跳去,还要手动复位,所以 ALIENTEK 为 STM32 的串口下载专门设计了一键下载电路,通过串口的 DTR 和 RTS 信号,来自动控制 RST(复位)和BOOT0,因此不需要用户来手动切换状态,直接串口下载软件自动控制,可以非常方便的下载代码,这是其他开发板所不具备的。2 k) k0 |! f2 } 5 o) {" b. ?0 h) ] A LED/ G8 t; i, a' ~+ q& c" o2 [* K$ ]! k ALIENTEK 精英 STM32F103 板载总共有 3 个 LED: ![]() 其实STM32中小灯是不会像c51系列那么多,毕竟小灯的作用并不是非常大,不需要浪费那么多IO口。在我们编程中小灯最大的作用是方便我们对程序进行调试,判断。' K N; v* z& J8 t 其中 PWR 是系统电源指示灯,为蓝色。 LED0(DS0)和 LED1(DS1)分别接在 PB5 和 PE5 上。为了方便大家判断,DS0 为红色的 LED, DS1 为绿色的 LED。- U" f2 |. Z% ~ $ q( c. X/ v% ?; i0 O 按键 ALIENTEK 精英 STM32F103 板载总共有 3 个输入按键,其原理图如图所示: ![]() KEY0 和 KEY1 用作普通按键输入,分别连接在 PE4 和 PE3 上,这里并没有使用外部上拉电阻,但是 STM32 的 IO 作为输入的时候,可以设置上下拉电阻,所以我们使用 STM32 的内部上拉电阻来为按键提供上拉。 KEY_UP 按键连接到 PA0(STM32 的 WKUP 引脚),它除了可以用作普通输入按键外,还可以用作 STM32 的唤醒输入。注意:这个按键是高电平触发的。 资源注意事项! Y7 T( g7 N8 s/ Y7 F 一. LCD接口连接在STM32F103ZET6的FSMC总线上面,可以显著提高LCD的刷屏速度。并且液晶复位信号RESET直接连接在开发板的复位按钮上,和MCU共用一个复位电路。& ?! o8 P; v- L) n; k/ d6 E 二. 板载的EEPROM芯片是24C02,该芯片的容量为2Kb,即256个字节,对于普通应用是足够的。 3 R- a7 _9 A S8 n 9 S U5 {, M( C 三. 无线模块接口用来连接NRF24L01或者RFID等无线模块。注意: NRF24L01 不能和蓝牙/WIFI 连接。NRF24L01 无线模块的最大传输速度可以达到 2Mbps,传输距离最大可以到 30 米左右(空旷地,无干扰)。 & Q0 {/ Y9 F% Z; j # ~4 M% ^- K- m8 N 四. 有源蜂鸣器是指自带了震荡电路的蜂鸣器,这种蜂鸣器一接上电就会自己震荡发声。而如果是无源蜂鸣器,则需要外加一定频率(2~5Khz)的驱动信号,才会发声。 \7 C" S0 ?/ _- P. u$ j5 @ $ r* H! j# @; ^1 M- O 五. STM_DAC 与摄像头的 GBC_KEY 共用 PA4,所以他们不可以同时使用,但是可以分时复用。 " F( i3 r! I0 s9 ^9 g 六. USB 转串口,我们选择的是 CH340G。 七. 最好大家最好就是一直用 SWD 模式。+ R8 G4 p$ J; J; Y6 G' O" _% u $ Q! w; N$ X5 R: _. R 八. 当你想使用某个 IO 口用作其他用处的时候,请先看看开发板的原理图,该 IO 口是否有连接在开发板的某个外设上,如果有,该外设的这个信号是否会对你的使用造成干扰,先确定无干扰,再使用这个 IO。比如 PB8 就不怎么适合再用做其他输出,因为他接了蜂鸣器,如果你输出高电平就会听到蜂鸣器的叫声了。 2 @6 r) G8 F5 i4 \ " G# z% M( j9 {- w% y( h3 _ |
梳理STM32芯片的内部架构
使用Nano板验证驱动SPI串口屏的颜色显示
【STM32H7体验】+CANopen协议简介
【经验分享】基于STM32F103C8的 USB 外部flash虚拟U盘
【经验分享】基于STM32F103的NEC红外发送接收使用同一个定时器的一体设计
STM32F103的GPIO与DMA的终极(没啥用)玩法
STM32F103的RTC模块用作32位计数器
蓝桥杯旧嵌入式板STM32F103RBT6驱动练习笔记
STM32F103RBT6型号说明
基于STM32F103C8T6的点灯设计