STM32学习笔记(四)(基于正点原子)

学习目的:掌握中断系统、串口、外部中断。

一、中断优先级管理NVIC

1、中断优先级分组在这里插入图片描述
2、中断管理
在这里插入图片描述

3、抢占优先级和响应优先级
在这里插入图片描述
注:在设置中断优先级分组时只会出现一次

4、中断优先级分组函数
在这里插入图片描述

5、中断优先级设置相关寄存器
在这里插入图片描述
6、MDK中NVIC寄存器结构体在这里插入图片描述

7、NVIC_Init函数在这里插入图片描述

8、步骤总结
先通过中断优先级分组函数设置抢占优先级和响应优先级的分组,然后通过NVIC_Init函数设置优先级并使能。

二、串口通信原理

1、并行通信与串行通信
在这里插入图片描述
2、串行通信
<1>分类
(1)单工:只支持数据单方向传输。
(2)半双工:允许数据双向传输,但同一时刻数据只能往一个方向传输,即方向可改变的单工通信。
(3)全双工:允许数据同时在两个方向上传输。
在这里插入图片描述

<2>通信方式–同步通信和异步通信
在这里插入图片描述
注:异步通信需要事先的约定(波特率)

<3>UART和USART
在这里插入图片描述

<4>UART异步通信方式引脚连接方法
在这里插入图片描述
<5>参数在这里插入图片描述
<6>USART框图
在这里插入图片描述

三、串口寄存器、库函数配置方法

1、相关寄存器
在这里插入图片描述

2、USART_SR寄存器
在这里插入图片描述
在这里插入图片描述

3、USART_DR寄存器
在这里插入图片描述
4、USART_BRR寄存器
在这里插入图片描述
注:另外详见中文参考手册542页

5、波特率计算方法
在这里插入图片描述

6、相关库函数
在这里插入图片描述

7、串口配置步骤
在这里插入图片描述
8、操作演示
(1)IO口的初始化
在这里插入图片描述
(2)串口的初始化
 3
(3)开启中断并初始化NVIC

在这里插入图片描述
(4)编写中断函数并完善main函数。
在这里插入图片描述
(5)结果显示
在这里插入图片描述

四、EXTI外部中断

1、概述
在这里插入图片描述
在这里插入图片描述
2、外部IO通用映像
在这里插入图片描述
注:在有相同的外部中断情况下,同一时间只能有一个IO映射相应的外部中断
3、中断服务函数只有7个
在这里插入图片描述在这里插入图片描述

4、常用库函数
在这里插入图片描述

5、EXTI_Init函数
在这里插入图片描述
在这里插入图片描述
6、基本步骤
在这里插入图片描述

7、实验代码
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
8、实验现象
在这里插入图片描述

### 正点原子STM32相关笔记与教程概览 #### STM32外部中断配置 在正点原子STM32F103的学习资料中,对于STM32外部中断的配置有详细的说明。具体来说,在`stm32f10x.h`文件中的枚举类型`IRQn_Type`定义了各个外设对应的中断号,这有助于开发者了解不同通道和中断之间的关联[^1]。 ```c // 示例:获取特定线上的中断编号 extern ITStatus EXTI_GetITStatus(uint8_t EXTI_Line); ``` #### 库函数工程模板创建 针对STM32F103ZET6型号,建立基于标准外设库的新项目时,需按照指定路径找到必要的CMSIS支持文件并将其复制至用户工作区内的USER目录下。这些文件包括但不限于`stm32f10x.h`, `system_stm32f10x.c`, 和`system_stm32f10x.h`. 同样地, 来自模板项目的源码文件也需要被移动过来以便于后续开发工作的开展[^2]. ```bash cp -r /path/to/STM32F10x_StdPeriph_Lib/Libraries/CMSIS/* ./USER/ cp -r /path/to/STM32F10x_StdPeriph_Template/*.c ./USER/ cp -r /path/to/STM32F10x_StdPeriph_Template/*.h ./USER/ ``` #### 基本定时器的理解 有关基本定时器的工作机制及其应用实例可以在正点原子提供的学习材料里寻得详尽解析。这里不仅涵盖了定时器的基础概念介绍,还深入探讨了一些实现细节和技术要点,帮助读者更好地掌握这一重要组件的功能特性[^3]. #### GPIO操作实践案例分析 以跑马灯实验为例,展示了如何利用GPIO接口控制LED显示效果的具体方法。特别值得注意的是,该文档解释了PFout()函数的作用以及它同底层硬件资源间的映射关系,这对于理解STM32微控制器内部结构非常有益处[^4].
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值