1.前言 本文主要记录stm32 关于reset 和 clock部分 datasheet的内容. 2.reset 有三种类型的reset:system reset, power reset, backup domain reset system reset 系统reset会将所有的寄存器变成reset值(除clock控制寄存器中的标志位及backup domain中的寄存器) power reset //TODO backup domain reset //todo 3. clocks 3.1…
1.前言 本文主要讲述chip configure之clock配置相关的内容,主要包含如下三个部分: MCG configuration:Multipurpose clock generator OSC configuration RTC OSC confiuration 2.clock module configuration 2.1 MCG Configuration MCG有多个时钟源可选,主要通过MCG_C7[OSCSEL] 来进行设置: 2.2. OSC Configuration T…
1.前言 每个GPIO端口有如下几个寄存器进行操作: 两个32位配置寄存器:GPIOx_CRL, GPIOx_CRH 两个32位数据寄存器:GPIOx_IDR, GPIOx_ODR 一个32位set/reset寄存器:GPOx_BSRR 一个16位reset寄存器:GPIOx_BRR 一个32位锁定寄存器:GPIOx_LCKR 注:GPIO_BRR和GPIO_BSRR支持读写的原子访问 每组GPIO的 port可以配置成如下的IO方式: 2.GPIO基本结构 图 标准GPIO位的基本结构 图 p…
1.前言 FSMC模块能够与同步或异步存储器和16位PC存储器卡接口,它的主要作用是: 将AHB传输信号转换到适当的外部设备协议 满足访问外部设备的时序要求 所有的外部存储器共享控制器输出的地址.数据和控制信号,每个外部设备可以通过一个唯一的片选信号加以区分.FSMC在任一时刻只访问一个外部设备. 2.FMSC的主要功能 与具有静态存储器接口的器件接口,包括: ─ 静态随机存储器(SRAM) ─ 只读存储器(ROM) ─ NOR闪存 ─ PSRAM(4个存储器块) 两个NAND闪存块,支持硬件E…
1.前言 本章主要介绍STM32中断和事件相关的内容 2.NVIC NVIC管理着包括内核异常等中断 主要特性 68个外部中断源(不包含16个内部中断线) 可编程优先级为16级 低延迟异常和中断处理 电源管理控制 系统控制寄存器的实现 嵌套向量中断控制器(NVIC)和处理器核的接口紧密相连,可以实现低延迟的中断处理和高效地处理晚到的中断 2.1 systick校准值寄存器 系统嘀嗒校准值固定为9000,当系统嘀嗒时钟设定为9MHz(HCLK/8的最大值),产生1ms时间基准.??? 2.2 中断…
1.前言 直接存储器存取(DMA)用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输. 无须CPU干预,数据可以通过DMA快速地移动,这就节省了CPU的资源来做其他操作. 两个DMA控制器有12个通道(DMA1有7个通道,DMA2有5个通道),每个通道专门用来管理来自于一个或多个外设对存储器访问的请求.还有一个仲裁器来协调各个DMA请求的优先权. 2. DMA特性 图  DMA框图通道连接(非连接设备) 12路自由配置的通道,DMA1有7路,DMA2有5路 12路通道连到专门的硬件D…
1.前言 通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换. USART利用分数波特率发生器提供宽范围的波特率选择. 它支持同步单向通信和半双工单线通信,也支持LIN(局部互连网),智能卡协议和IrDA(红外数据组织)SIR ENDEC规范,以及调制解调器(CTS/RTS)操作. 它还允许多处理器通信. 使用多缓冲器配置的DMA方式,可以实现高速数据通信. 2.USART主要特性 全双工异步通信 NRZ标准格式?? 分数波特…
1.前言 2.异常类型描述 见 ARMV8 datasheet学习笔记4:AArch64系统级体系结构之编程模型(1)-EL/ET/ST 一文 3. 异常处理路由对比 AArch32.AArch64架构下IRQ 和Data Abort 异常处理流程图对比. 3.1 IRQ 路由 3.1.1.   AArch32 IRQ 路由 图 AArch32 IRQ 路由 3.1.2.    AArch64 IRQ 路由 图 AArch64 IRQ路由 图 AArch64 IRQ向量查找 3.2.     D…
1.前言 本文主要从应用的角度介绍ARMV8的编程模型和存储模型 2. AArch64应用级编程模型 从应用的角度看到的ARM处理器元素: 可见的元素(寄存器/指令) 说明 可见的寄存器 R0-R30.SP.    PC. V0-V31. FPCR.   FPSR 可见的PSTATE位 NZCV DAIF 可见的系统寄存器 Cache ID registers Debug registers Performance Monitors registers Thread ID registers T…