你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验之谈】基于STM32的经验分享

[复制链接]
STMCU小助手 发布时间:2022-12-11 15:28

本篇基于STM32F103ZET6
, G! Y  r$ |, A9 ?( R0 p+ d% e第一篇 认识STM32+ `; W9 Z8 z- M, c: X# }
STM32开发板的资源
& r  f5 e. @9 s  t& @; D64KB 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 的刷屏速度。
$ K- ^' ^1 a/ P* y( s4 |


; A; `' }1 I- Q5 F

MCU部分芯片原理图


% B( _  }2 T( C( i4 @/ A* ?

1.IO口


5 {1 Z' I) c! Q5 M$ `

STM32F103ZET6的主IO口有两组为P1和P2,这两组共有106个IO口,ZET6的总IO口有112个,RTC晶振占用了其中两个IO口,其余4个口分别由P3和P5两组引出


) b$ N7 |! M' R! m1 I

7 D: O3 Q( b. `; R

2.USB 串口/串口1选择接口

; j2 q( M# l9 n9 N2 f2 Q

STM32F103板载的USB 串口和STM32F103ZET6的串口是通过P3 连接起来的,与CH340G的连接是TXD/RXD,也就是串口通信的接、发引脚;USART1_RX和USART_TX是和ZET6相连的,通过相连就可以实现USB和ZET6的串口通信,同时PA9和PA10也是IO口

5 Y7 ^9 @) O4 Z/ O, m/ Q

+ [. t( I" U0 t% A

3.JTAG/SWD


8 G+ Y4 m" n% P: R% ?) t& i" tSTM32有两个接口JTAG和SWD,一般情况我们会选SWD模式,在SWD模式下只需要一根线就可以把代码下载调试,这和我们平时使用的串口下载一样,且速度很快,SWD和JTAG的接口是共用,所以接上JTAG也可以使用SWD模式,JTAG 有几个信号线用来接其他外设了,但是 SWD 是完全没有接任何其他外设的,所以在使用的时候,最好选择SWD模式
5 y; w% |9 j. S3 a- |# A

5 T2 A$ v3 n+ `! ]7 z, ]

4.LCD模块

7 L; d! a1 c* A( S# L: q) ]

TFT_LCD 是一个通用的液晶模块接口,LCD 接口连接在 STM32F103ZET6的 FSMC 总线上面,可以显著提高 LCD 的刷屏速度。T_MISO/T_MOSI/T_PEN/T_SCK/T_CS 连接在 MCU 的 PB2/PF9/PF10/PB1/PF11 上,这些信号用来实现对液晶触摸屏的控制(支持电阻屏和电容屏)。LCD_BL 连接在 MCU 的 PB0上,用于控制 LCD 的背光。液晶复位信号 RESET 则是直接连接在开发板的复位按钮上,和MCU 共用一个复位电路。


. y# O9 J7 r8 g3 q1 d0 @

) {" `3 ?6 \# X# v

5.复位电路


9 ]- k$ r" z& G' d* q% S" x! R2 J

因为 STM32 是低电平复位的,所以ZET6的电路也是低电平复位的,这里的 R2 和 C10构成了上电复位电路。同时,开发板把 TFT_LCD 的复位引脚也接在 RESET 上,这样这个复位按钮不仅可以用来复位 MCU,还可以复位 LCD。


3 u! y9 k+ T  k' m& D

6.光敏传感器


4 l8 P8 ^& I4 g0 a

图中的 LS1 就是光敏传感器,其实就是一个光敏二极管,周围环境越亮,电流越大,反之电流越小,即可等效为一个电阻,环境越亮阻值越小,反之越大,从而通过读取 LIGHT_SENSOR的电压,即可知道周围环境光线强弱。LIGHT_SENSOR 连接在 MCU 的 ADC3_IN6上面,即 PF8 引脚。


2 o; Q+ ]( r0 K& P- c% N

7.温湿度传感器接口


1 A) O- W: A/ @$ M- X) E6 B: x

U4接口支持 DS18B20/DS1820/DHT11 等单总线数字温湿度传感器。1WIRE_DQ 是传感器的数据线,该信号连接在 MCU 的 PG11 上。

. V/ V; @7 q1 ^: l3 @. J


0 ^% L) Q! j% n5 [  j

8.LED

8 p& P, b0 H( n. Z- e

其中 PWR 是系统电源指示灯,为蓝色。LED0和 LED1分别接在 PB5 和 PE5 上。


3 l" K) T" E* E

1 i. h. w2 l6 I$ R- y" b) C9 A& d

9.按键


7 a$ p2 ^3 t3 n

KEY0 和 KEY1 用作普通按键输入,分别连接在 PE4 和 PE3 上,这里并没有使用外部上拉电阻,但是 STM32 的 IO 作为输入的时候,可以设置上下拉电阻,可以使用 STM32 的内部上拉电阻来为按键提供上拉。KEY_UP 按键连接到 PA0,它除了可以用作普通输入按键外,还可以用作 STM32 的唤醒输入。注意:这个按键是高电平触发的。


- h3 g% ~, E- ?1 B. z

10.蜂鸣器


+ d% N, P( J! ~! U

STM32F103里使用的是有源蜂鸣器,它指自带了震荡电路的蜂鸣器,这种蜂鸣器一接上电就会自己震荡发声。Q1 是用来扩流,R33 则是一个下拉电阻,避免 MCU 复位的时候,蜂鸣器可能发声的现象。BEEP 信号直接连接在 MCU 的 PB8 上面,PB8 可以做 PWM 输出,所以如果想要控制蜂鸣器“唱歌”,就可以使用 PWM 来控制蜂鸣器。

3 \1 u$ h7 \; [! p* D: u: R

以上几个模块是刚学习STM32会常用的几个模块的介绍,对于学习32来说,其实并不算难,如果学习过51单片机的人来学习32会更容易上手一些。
, ]) \# M4 c0 D3 z. T---------------------& q4 ^" U9 n& S3 x
作者:hah1

3 K0 y+ s3 J8 s* C
收藏 评论0 发布时间:2022-12-11 15:28

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版