2.5 芯片里面有什么
STM32F103采用的是Cortex-M3内核,内核即CPU,由ARM公司设计。
ARM公司并不生产芯片,而是出售其芯片技术授权。
芯片生产厂商(SOC)如ST、TI、Freescale,负责在内核之外设计部件并生产整个芯片,这些内核之外的部件被称为核外外设或片上外设。
如:GPIO、USART(串口)、I2C、SPI等都在做片上外设。
ICode总线
ICode中的I表示Instruction,及指令。
我们写好的程序编译之后都是一条条指令,存放在FLASH中,内核要读取这些指令来执行程序就必须通过ICode总线。
驱动单元
DCode总线
D表示Data,即数据,这要总线是用来取数的。
用来传输数据,这个数据可以是在某个外设的数据寄存器。
被动单元
内部的闪存存储器:即FLASH,我们编写好的程序就放在这个地方。内核通过ICode总线来取里面的指令。
内部的SRAM:通常说的RAM,程序的变量开销都是基于内部的SRAM。内核通过DCode总线访问。
FSMC:灵活的静态的存储器控制器。
AHB到APB的桥
从AHB总线延伸出来的两条APB2和APB1总线,上面挂载着STM32各种各样的特色外设。我们经常说的GPIO、串口、I2C、SPI这些外设在这条总线上,这是我们学习STM32的重点,重点、重点。
2.6存储器映射
存储器映射:给存储器分配地址的过程。
存储器重映射:给存储器在分配一个地址就叫存储器重映射。
2.7寄存器映射
给已经分配好的地址的又特定功能的内存单元取别名的过程就叫寄存器映射。
关键字:STM32 结构 组成
引用地址:
STM32的结构和组成
推荐阅读最新更新时间:2024-11-12 12:01
STM32 定时器有时一开启就进中断的问题
在用到STM32定时器的更新中断时,发现有些情形下只要开启定时器就立即进入一次中断。准确说,只要使能更新中断允许位就立即响应一次更新中断【当然前提是相关NVIC也已经配置好】。换言之,只要使能了相关定时器更新中断,不管你定时间隔多长甚至不在乎你是否启动了相关定时器,它都会立即进入一次定时器更新中断服务程序。 以STM32F051芯片为例,做了几种不同顺序的组合测试。根据测试发现,的确有些情况下一运行TIM_ITConfig(TIM1, TIM_IT_Update, ENABLE); 【即使能更新中断】就立即进入更新中断服务程序。当然后面的中断都是正常的。 老实说,这个问题比较容易忽视,有些情况下也无关紧要,但有些情况可能会给应
[单片机]
快速了解奥迪E-tron车型的高电压结构与原理
根据奥迪原厂自学资料整理,用图解方式和大家分享奥迪全新Q2L E-tron的高电压部件结构组成和作用。 从基本层面了解并认识奥迪Q2L车型的电力驱动系统结构组成,为基本维修保养工作的开展做好准备。 希望通过本文,可以帮助大家快速了解奥迪E-tron车型的高电压结构与原理。 一、高电压部件概览 1、高电压系统的连接关系图 2、高电压系统连接导线概览 二、高电压部件 1、高电压充电接口 直流充电接口UX4 交流充电接口UX5 2、高电压充电器AX4 2.1 脉冲逆变器 将交流电变成直流电提供给高压蓄电池 2.2 高电压充电器控制单元J1050 3、高电压加热器Z115 3.1 加热冷却液,为车内提供暖风热量 3.
[嵌入式]
stm32专题十:通讯
在stm32的外设中,串行通讯包括串口、IIC、SPI,并行通讯包括SDIO、FSMC。 /******************************************************************************************/ 全双工:USART、SPI,可以同时接受和发送;串口和SPI也可以工作在半双工。 单工:IIC。 /******************************************************************************************/ 同步:有时钟信号。 在时钟高电平时,数据有效(必须保持
[单片机]
STM32学习笔记(3):系统时钟和SysTick定时器
1.STM32的时钟系统 在STM32中,一共有5个时钟源,分别是HSI、HSE、LSI、LSE、PLL (1)HSI是高速内部时钟,RC振荡器,频率为8MHz; (2)HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围是4MHz – 16MHz; (3)LSI是低速内部时钟,RC振荡器,频率为40KHz; (4)LSE是低速外部时钟,接频率为32.768KHz的石英晶体; (5)PLL为锁相环倍频输出,严格的来说并不算一个独立的时钟源,PLL的输入可以接HSI/2、HSE或者HSE/2。倍频可选择为2 – 16倍,但是其输出频率最大不得超过72MHz。 其中,40kHz的LSI供独立看门狗IWDG使用,另
[单片机]
STM32单片机-标准库编译成lib库
-------------------------------------------------------------------------------------------------------------------------------- 以前一直使用STM32的标准库,需要一步步地将代码加进去,将编译选项设置好,然后再编译整个工程。 这个编译过程是一个相当慢的过程!完全编译大约需要一支烟的时间。每次建立工程都这么编译,是一个相当浪费时间和香烟的过程。 于是,我有了将库编译成lib文件的想法。本博文就是我将STM32F4的标准库编译成lib文件并在工程中使用的过程。 适用对象: 1、熟悉库,不
[单片机]
使用DFU方案实现STM32单片机的高级开发
什么是 DFU DFU全称为Device Firmware update,是ST官方推出的一个通过USB接口进行IAP升级的方案,同串口ISP一样,他们都集成在了芯片内部的Bootloader区段,可以通过配置boot引脚来启动。(具体可参照ST文档:AN2606)。不过内置DFU的芯片大部分型号都比较新,如果你用的型号没有内置DFU程序,没关系我们也可以通过CubeMX来快速生成和移植一个DFU功能程序到你的Flash中来使用。 DFU方案完整的组件包括单片机DFU Demo代码、PC端升级程序、PC端Demo代码以及相关资料手册等。通过使用DFU方案,我们可以快速的集成升级功能到开发的产品中,同时还能够快速的开发与之配套的
[单片机]
ARM体系结构下面内存和i/o映射区别
(1)关于IO与内存空间: 在X86处理器中存在着I/O空间的概念,I/O空间是相对于内存空间而言的,它通过特定的指令in、out来访问。端口号标识了外设的寄存器地址。Intel语法的in、out指令格式为: IN 累加器, {端口号│DX} OUT {端口号│DX},累加器 目前,大多数嵌入式微控制器如ARM、PowerPC等中并不提供I/O空间,而仅存在内存空间。内存空间可以直接通过地址、指针来访问,程序和程序运行中使用的变量和其他数据都存在于内存空间中。 即便是在X86处理器中,虽然提供了I/O空间,如果由我们自己设计电路板,外设仍然可以只挂接在内存空间。此时,CPU可以像访问一个内存单
[单片机]