STM32F407内核Contex-M4,CPU最高频率168MHz,带有FPU。
Contex-M4有3条总线,数据总线(D-Bus),指令总线(I-Bus),系统总线(S-Bus)。三条总线通过总线矩阵与片上的各种资源和外设连接。
32位的总线矩阵将系统里的所有主设备(CPU/DMA/Ethernet/USB HS)以及从设备(flash存储器,RAM、FSMC、AHB和APB外设)无缝连接起来,确保即使有多个高速外设同时工作也能高速运行。
两个通用的双端口DMA(DMA1和DMA2),每个DMA有8个流。
Ethernet MAC接口用于有线以太网连接。
USB OTG HS接口,速度高达480Mbit/s。
通过ACCEL接口连接的内部flash存储器,使用了自适应实时加速器技术。
AHB3总线上是FSMC接口,可连接外部的SRAM、PSRAM、NOR Flash、PC Card、NAND Flash等存储器。
AHB2总线最高频率168MHz,连接在此总线上的有RNG、DCMI和USB OTG FS。
AHB1总线最高频率168MHz,各GPIO端口连接在AHB1总线上,8个16位端口和一个12位端口。
AHB1总线分出两条外设总线APB1和APB2.
APB2总线最高频率84MHz,是高速外设总线,上面连接的外设有外部中断EXTI、SDIO/MMC、TIM1、TIM8~TIM11、USART1、USART6、SPI1和3个ADC。
APB1总线最高频率为42MHz,是低速外设总线,上面连接的外设有RTC、WWDG、TIM2~TIM7、TIM12~TIM14、USART2、USART3、USART4、USART5、SPI2/I2S2、SPI3/I2S3、I2C1~I2C3、2个DAC和2个bxCan。
电源引脚
数字电源引脚VDD,数字电源地引脚VSS,数字部分使用+3.3V供电。
模拟电源引脚VDDA,模拟电源地引脚VSSA,模拟电源为ADC和DAC供电。简化的电源电路设计中用VDD链接VDDA。模拟地和数字地必须共地。
ADC参考电压引脚VREF+,简化的电源电路中用VDD连接VREF+。这里也可以使用专门的参考电压芯片为VREF+供电。
备用电源引脚VBAT,为系统提供备用电源,可以在主电源掉电的情况下为备用存储器和RTC供电,一般使用一个纽扣电池作为备用电源。
VCAP_1和VCAP_2是芯片内部1.2V域调压器用到的两个引脚,需要分别接1个2.2uF电容后接地。
GPIO引脚
可以作为普通输入或输出引脚。
复用为各个外设的引脚。
所有GPIO引脚在复位后都是悬浮输入状态。
系统功能引脚
除了电源和GPIO引脚,还有一些其他具有特定功能的引脚。
系统复位引脚NRST,低电位复位。
自举配置引脚BOOT0。
PDR_ON引脚接高平,将开启内部电源电路监测功能。(部分封装上没有这个引脚,默认开启内部电源电路监测功能)。
(1)供电
(2)外部复位
(3)时钟源
(4)自举设置
BOOT1 | BOOT2 | 自举模式 | 自举空间 |
---|---|---|---|
X | 0 | 主Flash | 主Flash |
0 | 1 | 系统存储器 | 系统存储器 |
1 | 1 | 内嵌SRAM | 内嵌SRAM |
(5)调试接口
2线的串行调试接口SW
5线的JTAG调试接口
组件列表
System Core(系统内核),有DMA/GPIO/IWDG/NVIC/RCC/SYS/WWDG。
Anolog(模拟),片上有ADC和DAC。
Timers(定时器),包括RTC和所有定时器。
Connectivity(通信连接),各种外设接口,包括CAN、ETH、FSMC、I2C、SDIO、SPI、UART、USART、USB_OTG_FS,USB_OTG_HS等接口。
Multimedia(多媒体),各种多媒体接口,包括数字摄像头接口DCMI和数字音频接口I2S。
Security(安全),只有一个RNG(随机数发生器)。
Computing(计算),计算相关资源,只有一个CRC(循环冗余校验)。
Middleware(中间件),主要有FatFS,FreeRTOS,LibJPEG,LwIP,PDM2PCM,USB_Device,USB_Host等。
Additional Software(其他软件)。默认没有这个分组,如果安装了扩展包,就会有这个分组。
HSE(高速外部)时钟源:Disable,内部高速RC振荡器产生的16MHz信号
BYPASS Clock Source,外部有源时钟信号源
Crystal/Ceramic Resonator,外部晶体振荡器作为时钟源
HSE的频率设置范围是4~26MHz。
HSI(高速内部)RC振荡器,可产生16MHz的时钟信号。
PLL时钟源选择器和主锁相环。可以选择HSE或者HSI作为PLL的时钟信号源。PLL的作用就是通过倍频或者分频的方式产生高频的时钟信号。
系统时钟选择器。
系统时钟SYSCLK,STM32F407的SYSCLK最高频率是168MHz。
HCLK时钟。HCLK就是CPU的时钟信号。HCLK最高频率为168MHz。