STM32总结

  1. 电子数字积分计算机
  2. Cortex 的 AM 和 R 系列分别针对高性能类、微控制器类和实时类应用
  3. 物联网体系结构大致有三个层次:底层是用来感知数据的感知层,中层是传输的网络层,最上层则是应用层,
  4. 嵌入式系统的工程设计和开发流程:

嵌入式系统和产品的开发过程大致可分为需求分析、架构和概要设计、详细设计和开发与测试反馈

5 位带操作

位带区操作示例:

  1. 在地址0x20000000处写入0x3355 AACC 。
  2. 读写地址:0x22000008。本次读访问将读取0x20000000,并提取bit2,值为1。
  3. 往地址0x22000008处写0。本次操作将被映射成对地址0x20000000的"读﹣改一写"操作(原子操作),把bit2清0
  4. 现在再读取0x20000000,将返回0x3355AAC8(bit2清零)

6  Cortex -M3的工作模式和特权等级共有三种配合:

  1. 线程模式+用户级:
  2. 线程模式+特权级;
  3. Handler 模式+特权级。

复位后, Cortex -M3首先进入 线程模式 + 特权级

  1. Cortex -M3使用的是"向下生长的满栈"模型
  2. STM32F103CBT6 微处理器主频为72MHz,128KB内部Flash,20KB RAM,12位ADC是中等容量微处理器中Flash和RAM最大的一款
  3. STM32高速外部时钟可以使用一个4~16MHz的晶体/陶瓷谐振器构成的振荡器产生
  4. * 系统复位将复位除时钟控制寄存器 CSR 中的复位标志和备份区域中的寄存器以外的所有寄存器。当以下事件之一发生时,产生系统复位:kao
  1. NRST 引脚上的低电平(外部复位)

2)窗口看门狗计数终止( WWDG复位)。

3)独立看门狗计数终止( IWDG 复位)。

4)软件复位( SW 复位)。

5)低功耗管理复位。

11.

BOOT1[1:0]引脚选择(文字描述)kao

启动模式选择引脚

启动模式

说明

BOOT

BOOT0

x

0

用户闪存存储器

用户闪存存储器被选为启动区域

0

1

系统存储器

系统存储器被选为启动区域

1

1

内嵌SRAM

内嵌SRAM 被选为启动区域

12  *异或运算kao

参与按位异或运算(^)的两个运算数,从低位开始,对齐每一位,逐位进行异或操作,只要对应位上的数据相同,该位结果为0,不相同,则结果为1

例如,定义 unsigned char 型变量 a 和 b ,初始值分别为 0b 1011 0100和 0b 0101 0110执行 a^b 操作a^b 的结果如下

0b 1011 0100

^   0b 0101 0110

0b 1110 0010

按位异或用于翻转某一位或几位:

PORTB =0x40;//从翻转端口 B 的bit6位的值,为0则变成1,为1则变成0

temp ^=0x08;//翻转 temp 变量bit3位的值

tpa =0x03;//翻转 tpa 变量bit0、 bitl 位的值

13  跑马灯程序流程

14  Cortex -M3允许具有较少中断源时使用较少的寄存器位指定中断源的优先级,

STM32把指定中断优先级的寄存器位减少到4位,这4个寄存器位的分组方式如下

第0组:所有4位用于指定亚优先级。

第1组:最高1位用于指定抢占优先级,最低3位用于指定亚优先级。

第2组:最高2位用于指定抢占优先级,最低2位用于指定亚优先级。

第3组:最高3位用于指定抢占优先级,最低1位用于指定亚优先级。

第4组:所有4位用于指定抢占优先级

19   软件中断,事件的选择

19个线路可以被配置成软件中断/事件线。下面是产生软件中断的过程:

1)配置19个中断/事件线屏蔽位(EXTI _ IMR 和 EXTI _ EMR )。

2)设置软件中断寄存器的请求位(EXTI _ SWIER )。

112个通用  / O 端口以图5.8所示的方式连接到16个外部中断/事件线上。另外三种外部中断/事件控制器的连接如下:

1) EXTI 线16连接到 PVD 输出。

2) EXTI 线17连接到 RTC 闹钟事件。

3) EXTI 线18连接到 USB 唤醒事件。

20

1.结合图5.1说明 GPIO 输入及输出过程。

3.外部中断/事件控制器( EXTI )有什么特征?

22最多两个高级控制定时器(TIM1和TIM8),四个通用定时器(TIM2~TIM5)和两个基本定时器(TIM6和TIM7)以及两个看门狗定时器和一个系统嘀嗒定时器

P155时序图

21通用定时器 TIMx (TIM2、TIM3、TIM4和TIM5)功能包括:kao

1)16位向上、向下、向上/向下自动装载计数器。

2)16位可编程(可以实时修改)预分频器,计数器时钟频率的分频系数为1~65536之间的任意数值。

3)四个独立通道,即输入捕获、输出比较、 PWM 生成(边缘或中间对齐模式)、单脉冲模式输出。

4)使用外部信号控制定时器和定时器互联的同步电路。

5)如下事件发生时产生中断/ DMA ,即更新[计数器向上溢出/向下溢出、计数器初始化(通过软件或者内部/外部触发)]、触发事件(计数器启动、停止、初始化或者由内部/外部触发计数)、输入捕获、输出比较。

6)支持针对定位的增量(正交)编码器和霍尔传感器电路。

7)触发输入作为外部时钟或者按周期的电流管理。

22时基单元包含:

计数器寄存器(TI Mx _ CNT)

预分频器寄存器(TIMx _ PSC)

自动装载寄存器(TIMx _ ARR)

23 计数器时钟可由下列时钟源提供:

  1. 内部时钟模式(CK _ INT );
  2. 外部时钟模式1:外部输入脚(Tlx );
  3. 外部时钟模式2:外部触发输入(ETR );
  4. 内部触发输入(ITRx ):使用一个定时器作为另一个定时器的预分频器,例如可以配

置一个定时器Timer1而作为另一个定时器Timer2的预分频器

24
输入捕获模式

PWM输入模式

输出比较模式

PWM模式

25 STM32的 ADC

STM32的12位 ADC 是一种逐次逼近型模/数转换器。它有多达18个通道,可测量16

个外部和两个内部信号源。各通道的 A / D 转换可以单次、连续、扫描或间断模式执行

26

1.ADC主要特征

1)12位分辨率。

2)转换结束、注入转换结束和发生模拟看门狗事件时产生中断。

3)单次和连续转换模式。

4)从通道0到通道 n 的自动扫描模式。

5)自校准。

6)带内嵌数据一致性的数据对齐。

7)采样间隔可以按通道分别编程。

8)规则转换和注入转换均有外部触发选项。

9)间断模式。

10)双重模式(带两个或以上 ADC 的器件)。

11) ADC 转换时间:①STM32F103xx增强型产品:时钟为56MHz时为1us(时钟为72MHz为1.17us);②STM32F101xx基本型产品:时钟为28MHz时为1us(时钟为36MHz为1.55μ s );③STM32F102xxUSB型产品:时钟为48MHz时为1.2us;④STM32F105xx和STM32F107xx产品:时钟为56MHz时为1μ s (时钟为72MHz为1.17μ s )。

12) ADC 供电要求:2.4~3.6V。

3O3

13) ADC 输入范围: VREF -≤ VIN ≤ VREF +○

14)规则通道转换期间有 DMA 请求产生

27

任何 USART 双向通信都至少需要两个引脚,即接收数据输入( RX )和发送数据输出(TX )

28

串口设置一般可以归纳为如下步骤:

  1. 串口时钟使能, GPIO 时钟使能。
  2. 串口复位。
  3. GPIO 端口模式设置。
  4. 串口参数初始化。
  5. 开启中断并且初始化 NVIC (如果需要开启中断才需要这个步骤)。
  6. 使能串口。
  7. 编写中断处理函数。

29

SPI 的功能框图如图9.8所示。通常情况下, SPI 通过以下四个引脚和外设相连:

 1)MISO :主设备数据输入/从设备数据输出。这一引脚用于在从模式下发送数据,

模式下接收数据

2) MOSI :主设备数据输出/从设备数据输入。这一引脚用于在主模式下发送数据,

模式下接收数据

30

 IC 总线在传送数据过程中共有三种类型信号,分别是开始信号、结束信号和应答信号

开始信号: SCL 为高电平时, SDA 由高电平向低电平跳变,开始传送数据

结束信号: SCL 为低电平时, SDA 由低电平向高电平跳变◇结束传送数据

应答信号:接收数据的 IC 在接收到8bit数据后,向发送数据的 IC 发出特定的低

平脉冲,表示已收到数据

  • 25
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值