第二章实验平台硬件资源详解-正点原子探索者STM32F4开发板STM32F4开发指南.pdf
《第二章实验平台硬件资源详解-正点原子探索者STM32F4开发板STM32F4开发指南.pdf》由会员分享,可在线阅读,更多相关《第二章实验平台硬件资源详解-正点原子探索者STM32F4开发板STM32F4开发指南.pdf(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 STM32F4 开发指南(库函数版)ALIENTEK 探索者 STM32F407 开发板教程 14 第二章 实验平台硬件资源详解 本章,我们将节将向大家详细介绍 ALIENTEK 探索者 STM32F4 开发板各部分的硬件原理图,让大家对该开发板的各部分硬件原理有个深入理解,并向大家介绍开发板的使用注意事项,为后面的学习做好准备。本章将分为如下两节:1.1,开发板原理图详解;1.2,开发板使用注意事项;2.1 开发板原理图详解 2.1.1 MCU ALIENTEK 探索者 STM32F4 开发板选择的是 STM32F407ZGT6 作为 MCU,该芯片是STM32F407 里面配置非常强大的
2、了,它拥有的资源包括:集成 FPU 和 DSP 指令,并具有 192KB SRAM、1024KB FLASH、12 个 16 位定时器、2 个 32 位定时器、2 个 DMA 控制器(共 16 个通道)、3 个 SPI、2 个全双工 I2S、3 个 IIC、6 个串口、2 个 USB(支持 HOST/SLAVE)、2 个CAN、3 个 12 位 ADC、2 个 12 位 DAC、1 个 RTC(带日历功能)、1 个 SDIO 接口、1 个 FSMC接口、1 个 10/100M 以太网 MAC 控制器、1 个摄像头接口、1 个硬件随机数生成器、以及 112个通用 IO 口等。该芯片的配置十分强悍
3、,很多功能相对 STM32F1 来说进行了重大改进,比如FSMC 的速度,F4 刷屏速度可达 3300W 像素/秒,而 F1 的速度则只有 500W 左右。MCU 部分的原理图如图 2.1.1.1(因为原理图比较大,缩小下来可能有点看不清,请大家打开开发板光盘的原理图进行查看)所示:STM32F4 开发指南(库函数版)ALIENTEK 探索者 STM32F407 开发板教程 15 图 2.1.1.1 MCU 部分原理图 上图中 U4 为我们的主芯片:STM32F407ZGT6。这里主要讲解以下 3 个地方:1,后备区域供电脚 VBAT 脚的供电采用 CR1220 纽扣电池和 VCC3.3 混合
4、供电的方式,在有外部电源(VCC3.3)的时候,CR1220 不给 VBAT 供电,而在外部电源断开的时候,则由 CR1220给其供电。这样,VBAT 总是有电的,以保证 RTC 的走时以及后备寄存器的内容不丢失。2,图中的 R31 和 R32 用隔离 MCU 部分和外部的电源,这样的设计主要是考虑了后期维护,如果 3.3V 电源短路,可以断开这两个电阻,来确定是 MCU 部分短路,还是外部短路,有助于生产和维修。当然大家在自己的设计上,这两个电阻是完全可以去掉的。3,图中 P7 是参考电压选择端口。我们开发板默认是接板载的 3.3V 作为参考电压,如果大家想用自己的参考电压,则把你的参考电压
5、接入 Vref+即可。2.1.2 引出 IO 口 ALIENTEK 探索者 STM32F4 开发板引出了 STM32F407ZGT6 的所有 IO 口,如图 2.1.2.1所示:STM32F4 开发指南(库函数版)ALIENTEK 探索者 STM32F407 开发板教程 16 图 2.1.2.1 引出 IO 口 图中P3、P4和P5为MCU主IO引出口,这三组排针共引出了102个IO口,STM32F407ZGT6总共有 112 个 IO,除去 RTC 晶振占用的 2 个,还剩 110 个,这三组主引出排针,总共引出了102 个 IO,剩下的 8 个 IO 口分别通过:P6(PA9&PA10)、
6、P9(PA2&PA3)、P10(PB10&PB11)和 P11(PA11&PA12)等 4 组排针引出。2.1.3 USB 串口/串口 1 选择接口 ALIENTEK 探索者 STM32F4 开发板板载的 USB 串口和 STM32F407ZGT6 的串口是通过P6 连接起来的,如图 2.1.3.1 所示:图 2.3.1.1 USB 串口/串口 1 选择接口 图中TXD/RXD是相对CH340G来说的,也就是USB串口的发送和接受脚。而USART1_RX和 USART1_TX 则是相对于 STM32F407ZGT6 来说的。这样,通过对接,就可以实现 USB 串口和 STM32F407ZGT6
7、 的串口通信了。同时,P6 是 PA9 和 PA10 的引出口。这样设计的好处就是使用上非常灵活。比如需要用到外部TTL串口和STM32通信的时候,STM32F4 开发指南(库函数版)ALIENTEK 探索者 STM32F407 开发板教程 17 只需要拔了跳线帽,通过杜邦线连接外部 TTL 串口,就可以实现和外部设备的串口通信了;又比如我有个板子需要和电脑通信,但是电脑没有串口,那么你就可以使用开发板的 RXD 和 TXD来连接你的设备,把我们的开发板当成 USB 转串口用了。2.1.4 JTAG/SWD ALIENTEK 探索者 STM32F4 开发板板载的标准 20 针 JTAG/SWD
8、 接口电路如图 2.1.4.1 所示:图 2.1.4.1 JTAG/SWD 接口 这里,我们采用的是标准的 JTAG 接法,但是 STM32 还有 SWD 接口,SWD 只需要最少 2跟线(SWCLK 和 SWDIO)就可以下载并调试代码了,这同我们使用串口下载代码差不多,而且速度非常快,能调试。所以建议大家在设计产品的时候,可以留出 SWD 来下载调试代码,而摒弃 JTAG。STM32 的 SWD 接口与 JTAG 是共用的,只要接上 JTAG,你就可以使用 SWD模式了(其实并不需要 JTAG 这么多线),当然,你的调试器必须支持 SWD 模式,JLINK V7/V8、ULINK2 和 S
9、T LINK 等都支持 SWD 调试。特别提醒,JTAG 有几个信号线用来接其他外设了,但是 SWD 是完全没有接任何其他外设的,所以在使用的时候,推荐大家一律使用 SWD 模式!2.1.5 SRAM ALIENTEK 探索者 STM32F4 开发板外扩了 1M 字节的 SRAM 芯片,如图 2.1.5.1 所示,注意图中的地址线标号,是以 IS61LV51216 为模版的,但是和 IS62WV51216 的 datasheet 标号有出入,不过,因为地址的唯一性,这并不会影响我们使用 IS62WV51216(特别提醒:地址线可以乱,但是数据线必须一致!),因此,该原理图对这两个芯片都是可以正
10、常使用的。STM32F4 开发指南(库函数版)ALIENTEK 探索者 STM32F407 开发板教程 18 图 2.1.5.1 外扩 SRAM 图中U3 为外扩的 SRAM芯片,型号为:IS62WV51216,容量为 1M字节,该芯片挂在 STM32的 FSMC 上。这样大大扩展了 STM32 的内存(芯片本身有 192K 字节),从而在需要大内存的场合,探索者 STM32F4 开发板也可以胜任。2.1.6 LCD 模块接口 ALIENTEK 探索者 STM32F4 开发板板载的 LCD 模块接口电路如图 2.1.6.1 所示:图 2.1.6.1 LCD 模块接口 图中TFT_LCD是一个通
11、用的液晶模块接口,支持ALIENTEK全系列TFTLCD模块,包括:2.4 寸、2.8 寸、3.5 寸、4.3 寸和 7 寸等尺寸的 TFTLCD 模块。LCD 接口连接在 STM32F407ZGT6的 FSMC 总线上面,可以显著提高 LCD 的刷屏速度。图中的 T_MISO/T_MOSI/T_PEN/T_CS/T_CS 用来实现对液晶触摸屏的控制(支持电阻屏和 STM32F4 开发指南(库函数版)ALIENTEK 探索者 STM32F407 开发板教程 19 电容屏)。LCD_BL 则控制 LCD 的背光。液晶复位信号 RESET 则是直接连接在开发板的复位按钮上,和 MCU 共用一个复位
12、电路。2.1.7 复位电路 ALIENTEK 探索者 STM32F4 开发板的复位电路如图 2.1.7.1 所示:图 2.1.7.1 复位电路 因为 STM32 是低电平复位的,所以我们设计的电路也是低电平复位的,这里的 R24 和 C48构成了上电复位电路。同时,开发板把 TFT_LCD 的复位引脚也接在 RESET 上,这样这个复位按钮不仅可以用来复位 MCU,还可以复位 LCD。2.1.8 启动模式设置接口 ALIENTEK 探索者 STM32F4 开发板的启动模式设置端口电路如图 2.1.8.1 所示:图 2.1.8.1 启动模式设置接口 上图的BOOT0和BOOT1用于设置STM32
13、的启动方式,其对应启动模式如表2.1.8.1所示:表 2.1.8.1 BOOT0、BOOT1 启动模式表 按照表2.1.8.1,一般情况下如果我们想用用串口下载代码,则必须配置BOOT0为1,BOOT1为 0,而如果想让 STM32 一按复位键就开始跑代码,则需要配置 BOOT0 为 0,BOOT1 随便设置都可以。这里 ALIENTEK 探索者 STM32F4 开发板专门设计了一键下载电路,通过串口的DTR 和 RTS 信号,来自动配置 BOOT0 和 RST 信号,因此不需要用户来手动切换他们的状态,直接串口下载软件自动控制,可以非常方便的下载代码。2.1.9 RS232 串口 ALIEN
14、TEK 探索者 STM32F4 开发板板载了一公一母两个 RS232 接口,电路原理图如图2.1.9.1 所示:STM32F4 开发指南(库函数版)ALIENTEK 探索者 STM32F407 开发板教程 20 图 2.1.9.1 RS232 串口 因为 RS232 电平不能直接连接到 STM32,所以需要一个电平转换芯片。这里我们选择的是 SP3232(也可以用 MAX3232)来做电平转接,同时图中的 P9 用来实现 RS232(COM2)/RS485的选择,P10 用来实现 RS232(COM3)/ATK 模块接口的选择,以满足不同实验的需要。图中 USART2_TX/USART2_RX
15、 连接在 MCU 的串口 2 上(PA2/PA3),所以这里的RS232(COM2)/RS485都是通过串口2来实现的。图中RS485_TX和RS485_RX信号接在SP3485的 DI 和 RO 信号上。而图中的 USART3_TX/USART3_RX 则是连接在 MCU 的串口 3 上(PB10/PB11),所以RS232(COM3)/ATK 模块接口都是通过串口3来实现的。图中GBC_RX和GBC_TX连接在ATK模块接口 U7 上面。因为 P9/P10 的存在,其实还带来另外一个好处,就是我们可以把开发板变成一个 RS232电平转换器,或者 RS485 电平转换器,比如你买的核心板,可
16、能没有板载 RS485/RS232 接口,通过连接探索者 STM32F4 开发板的 P9/P10 端口,就可以让你的核心板拥有 RS232/RS485 的功能。2.1.10 RS485 接口 ALIENTEK 探索者 STM32F4 开发板板载的 RS485 接口电路如图 2.1.10.1 所示:图 2.1.10.1 RS485 接口 RS485 电平也不能直接连接到 STM32,同样需要电平转换芯片。这里我们使用 SP3485 来做 485 电平转换,其中 R44 为终端匹配电阻,而 R38 和 R40,则是两个偏置电阻,以保证静默状态时,485 总线维持逻辑 1。RS485_RX/RS48
17、5_TX 连接在 P9 上面,通过 P9 跳线来选择是否连接在 MCU 上面,RS485_RE 则是直接连接在 MCU 的 IO 口(PG8)上的,该信号用来控制 SP3485 的工作模式(高电平为发送模式,低电平为接收模式)。STM32F4 开发指南(库函数版)ALIENTEK 探索者 STM32F407 开发板教程 21 另外,特别注意:RS485_RE 和 NRF_IRQ 共同接在 PG8 上面,在同时用到这两个外设的时候,需要注意下。2.1.11 CAN/USB 接口 ALIENTEK 探索者 STM32F4 开发板板载的 CAN 接口电路以及 STM32 USB 接口电路如图2.1.
18、11.1 所示:图 2.1.11.1 CAN/USB 接口 CAN 总线电平也不能直接连接到 STM32,同样需要电平转换芯片。这里我们使用 TJA1050来做 CAN 电平转换,其中 R51 为终端匹配电阻。USB_D+/USB_D-连接在 MCU 的 USB 口(PA12/PA11)上,同时,因为 STM32 的 USB 和CAN 共用这组信号,所以我们通过 P11 来选择使用 USB 还是 CAN。图中共有 2 个 USB 口:USB_SLAVE 和 USB_HOST,前者是用来做 USB 从机通信的,后者则是用来做 USB 主机通信的。USB_SLAVE 可以用来连接电脑,实现 USB
19、 读卡器或声卡等 USB 从机实验。另外,该接口还具有供电功能,VUSB 为开发板的 USB 供电电压,通过这个 USB 口,就可以给整个开发板供电了。USB HOST 可以用来接如:U 盘、USB 鼠标、USB 键盘和 USB 手柄等设备,实现 USB 主机功能。该接口可以对从设备供电,且供电可控,通过 USB_PWR 控制,该信号连接在 MCU的 PA15 引脚上与 JTDI 共用 PA15,所以用 JTAG 仿真的时候,USB_PWR 就不受控了,这也是我们推荐大家使用 SWD 模式而不用 JTAG 模式的另外一个原因。2.1.12 EEPROM ALIENTEK 探索者 STM32F4
20、 开发板板载的 EEPROM 电路如图 2.1.12.1 所示:STM32F4 开发指南(库函数版)ALIENTEK 探索者 STM32F407 开发板教程 22 图 2.1.12.1 EEPROM EEPROM 芯片我们使用的是 24C02,该芯片的容量为 2Kb,也就是 256 个字节,对于我们普通应用来说是足够了的。当然,你也可以选择换大的芯片,因为我们的电路在原理上是兼容24C0224C512 全系列 EEPROM 芯片的。这里我们把 A0A2 均接地,对 24C02 来说也就是把地址位设置成了 0 了,写程序的时候要注意这点。IIC_SCL 接在 MCU 的 PB8 上,IIC_SD
21、A 接在 MCU 的 PB9 上,这里我们虽然接到了 STM32 的硬件 IIC 上,但是我们并不提倡使用硬件 IIC,因为 STM32 的 IIC 是鸡肋!请谨慎使用。IIC_SCL/IIC_SDA 总线上总共挂了 3 个器件:24C02、MPU6050 和 WM8978,后续我们将向大家介绍另外两个器件。2.1.13 光敏传感器 ALIENTEK 探索者 STM32F4 开发板板载了一个光敏传感器,可以用来感应周围光线的变化,该部分电路如图 2.1.13.1 所示:图 2.1.13.1 光敏传感器电路 图中的 LS1 就是光敏传感器,其实就是一个光敏二极管,周围环境越亮,电流越大,反之电流
22、越小,即可等效为一个电阻,环境越亮阻值越小,反之越大,从而通过读取 LIGHT_SENSOR的电压,即可知道周围环境光线强弱。LIGHT_SENSOR 连接在 MCU 的 ADC3_IN5(ADC3 通道 5)上面,即 PF7 引脚。2.1.14 SPI FLASH ALIENTEK 探索者 STM32F4 开发板板载的 SPI FLASH 电路如图 2.1.14.1 所示:图 2.1.14.1 SPI FLASH 芯片 SPI FLASH 芯片型号为 W25Q128,该芯片的容量为 128Mb,也就是 16M 字节。该芯片和NRF24L01 共用一个 SPI(SPI1),通过片选来选择使用某
23、个器件,在使用其中一个器件的时候,STM32F4 开发指南(库函数版)ALIENTEK 探索者 STM32F407 开发板教程 23 请务必禁止另外一个器件的片选信号。图中 F_CS连接在 MCU 的PB14 上,SPI1_SCK/SPI1_MOSI/SPI1_MISO 则分别连接在 MCU的 PB3/PB5/PB4 上,其中 PB3/PB4 又是 JTAG 的 JTDO 和 JTRST 信号,所以在 JTAG 仿真的时候,SPI 就用不了了,但是用 SWD 仿真,则不存在任何问题,所以我们推荐大家使用 SWD 仿真!2.1.15 六轴加速度传感器 ALIENTEK 探索者 STM32F4 开
24、发板板载的六轴加速度传感器电路如图 2.1.15.1 所示:图 2.1.15.1 3D 加速度传感器 六轴加速度传感器芯片型号为:MPU6050,该芯片内部集成一个三轴加速度传感器和一个三轴陀螺仪,并且自带 DMP(Digital Motion Processor),该传感器可以用于四轴飞行器的姿态控制和解算。这里我们使用 IIC 接口来访问。同 24C02 一样,该芯片的 IIC_SCL 和 IIC_SDA 同样是挂在 PB8 和 PB9 上,他们共享一个IIC 总线。2.1.16 温湿度传感器接口 ALIENTEK 探索者 STM32F4 开发板板载的温湿度传感器接口电路如图 2.1.16
25、.1 所示:图 2.1.16.1 温湿度传感器接口 该接口支持 DS18B20/DS1820/DHT11 等单总线数字温湿度传感器。1WIRE_DQ 是传感器的数据线,该信号连接在 MCU 的 PG9 上,特别注意:该引脚同时还接到了摄像头模块的DCMI_PWDN 信号上面,他们不能同时使用,但可以分时复用。STM32F4 开发指南(库函数版)ALIENTEK 探索者 STM32F407 开发板教程 24 2.1.17 红外接收头 ALIENTEK 探索者 STM32F4 开发板板载的红外接收头电路如图 2.1.17.1 所示:图 2.1.17.1 红外接收头 HS0038 是一个通用的红外接
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二 实验 平台 硬件 资源 详解 正点 原子 探索者 STM32F4 开发 指南
限制150内