第三章STM32最小系统的设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2、TTL与232电平转换电路 3、USB转串口转换电路
3. STM电源控制(PWR)
VDDA/VSSA独立电源/地 2.0至3.6V:为ADC、复位、 RC振荡器和PLL的模拟部分 供电。使用ADC时,VDD不 得小于2.4V。VREF+的电压 范围2.4V-VDDA, VREF-引 脚若有必须连接到VSSA。
• 当使用某个外设时,一定要记得开启外设的时钟。
• 晶振典型电路
• 注:1.电容典型值:5-25pF,通常两个电容具有相同的参数。
•
2.如果编写STM32程序需要用STM32固件库和外部高速时钟,而外部
晶振不是8MHz,还需要配置STM固件。
3.2.2 复位电路
STM32建议的复位电路
支持以下三种复位: • 1.系统复位
• 系统复位将清除时钟控制器CSR中的复位标志和备用域寄存器之外的 所有寄存器。下列事件都将引起复位:
• NRST引脚低电平: 外部复位 • 窗口看门狗计数终止(WWDG复位) • 独立看门狗计数终止(IWDG复位) • 软件复位(SW复位) 中断应用于复杂控制寄存器中对应位值1,实
现软件复位。
• 低功耗管理复位。 待机和停机模式产生。
第三章 STM32最小系统的设计
3.1 STM32F103最小系统的设计方案
• 最小系统是指仅包含最必需器件,仅可运行最基本软件的最简化 系统,它通常仅包含主MCU芯片、电源供给、时钟、复位和启动 电路,而不包含任何其他外部I/O模块。这样的系统仅能运行一 些基本软件,基本上实际中应用不大,通常作为学习起点和系统 设计开端。
VDD:主电源/工作电压 VSS:地
2.0至3.6V:通过内置调压器 提供1.8V的电源,供内核使 用、3.3V供I/O管脚。 VBAT:后备电池供电
三种低功耗模式
• 休(睡)眠模式:
• 只有CPU停止工作,所有外设继续运行,在中断/事件发生时唤醒 CPU。 调压器1.8V区供电工作。
• 停止(机)模式:
2.特性 每个引脚都可有软件配置成输出(推挽或开漏)、输入 (上拉、下拉或没有)
3.输入驱动电流 GPIO可以输入或输出正负8mA电流,实际应用中,I/O引 脚的数目必须保证驱动电流不能超过绝对最大额定值。
小结: 1、什么叫最小系统,基本组成? 2、画出STM32芯片最小系统硬件设计图。 3、简述STM32芯片三种复位方式。 4、简述STM32芯片三种启动方式。 5、简述STM32芯片的四种时钟源。
• 程序下载与供电方案
采用USB转TTL串口线下载程序和供电
3.2 最小系统设计的要素方案
• “最小系统”称“嵌入式核心控制模块”更贴切一些。 • 最小系统的组成: ①主芯片、 ②电源与接地、 ③晶体
振荡器、 ④复位电路、⑤调试系统(JTAG、UART)、存 储系统。
Timer Reset
Cortex-M3
应用程序代码 • SDRAM模块——为系统运行提供动态存储空间,是系
统代码运行的主要区域
1、引脚
引脚分类:
➢ 电源: (VBAT)、(VDD VSS)、(VDDA VSSA)、(VREF+ VREF-)等; ➢ 复位与启动:NRST、BOOT0、BOOT1 ➢ 晶振: 主晶振OSC_IN OSC_OUT、RTC晶振 ➢ 下载:JTMS_SWDIO、JTCK_SWCLK JTDI JTDO JNTRST等 ➢ GPIO: PA0-PA15等,专用器件接到专用的总线,比如I2C,SPI, SDIO,FSMC,DCMI这些总线的器件需要接到专用的IO
• 电压调节器可运行在正常或低功耗模式;
• 1.8V区域的所有时钟都停止工作,PLL,HSI和HSE的RC振荡器被 禁能。
• SRAM和寄存器的内容保留。
• 当外部中断源(16个外部中断线之一)、PVD输出、RTC闹钟、或 者USB唤醒信号,退出停止模式。
• 待机模式:
• 追求最少的功耗,内部调压器被关闭,这样1.8V区域断电。
Power
JTAG UART
Flash SRAM
基于Cortex-M3的最小系统
• 时钟模块——通常经ARM内部锁相环进行相应的倍频, 以提供系统各模块运行所需的时钟频率输入
• 复位模块——实现对系统的复位 • 电源系统:为系统各模块供电 • 调试系统:
• JTAG模块——实现对程序代码的下载和调试 • UART模块——实现对调试信息的终端显示 • 存储系统: • Flash存储模块——存放启动代码、操作系统和用户
• 除了备份寄存器和待机电路,SRAM和寄存器的内容也会丢失。
• RTC,IWDG和相关的时钟源不会停止。
• 当外部复位(NRST引脚)、IWDG复位、WKUP引脚出现上升沿或者 RTC闹钟时间到时,退出待机模式
补充:调试与测试
3.2.5 I/O端口
1.I/O排列 GPIO_A、GPIO_B等排列,方便扩展;
•
• STM32F103ZET6
• 72MHz主频、512KB闪存、64KBRAM、3个12位ADC,2个12位DAC、 12通 道DMA控制器、 11个定时器、13个通信口(2个I2C、5个USART、3个SPI、 CAN、USB2、SDIO接口),是一款大容量微处理器增强型微处理器。 144LQFP,包含112个双向多功能IO口。
Biblioteka Baidu
• LED设计时,注意压降和正常工 作电源。
• 普通LED工作电流5-10mA,指示 用2-5mA,贴片LED只需1-2mA 即可。
• BOOT跳线
• 为方便系统可配置成ISP程序下载和系统 正常启动,一定要设计BOOT跳线。PB2 复用BOOT2功能。
3.2.4 稳压电源及电平转换
1、稳压电源
微处理器选择
STM32F103系列的配置
微处理器特点
• STM32F103CBT6
• 小体积、低成本、72MHz主频、128KB闪存、20KBRAM、2个12位ADC,7 通道DMA控制器、7个定时器、9个通信口(2个I2C、3个USART、2个SPI、 CAN、USB2.0),是一款中等容量微处理器增强型微处理器。 48-LQFP,37 个IO口。
• 低速外部时钟(LSE):外部晶振作时钟源,主要提供给 实时时钟模块,一般采用32.768KHz。
• 低速内部时钟(LSI):内部RC振荡器产生,也主要提供 给实时时钟模块,频率大约为40KHz。
注:在对于时钟精度要求比较高的场合,一般都不采用内 部时钟,而选择外部时钟源。
• 每个外设都配备了外设时钟的开关,当我们不使用某个外设 时,可以把这个外设时钟关闭,从而降低STM32的整体功耗。
2. 电源复位:当系统上电、掉电,以及系统从待机模式返回时,
发生电源复位。电源复位能够复位除了备份区域寄存器之外的所有 寄存器的状态。
3. 备份区域复位:对于备份区域的复位,一种是在软件复位的
时候设定备份区域控制寄存器中的对应位产生的;另一种是当电源 和电池都掉电又重新上电时产生的。
3.2.3 LED、KEY及BOOT跳线
基于Cortex-M3的STM32F10x最小系统
3.2.1 STM32晶体振荡器(时钟源)
STM32的4个时钟源:
• 高速外部时钟(HSE):外部晶振时钟源,晶振频率 4~16MHz,一般用8MHz的晶振,为系统提供较为精确时钟。
• 高速内部时钟(HSI):内部RC振荡器产生,频率为8MHz, 但不稳定。