stm32f103rbt6_6
一 回忆昨天的内容
串行通信
115200
8N1
串行通信与并行通信的区别
USART
同步和异步
时序
usart1_send_byte
while(*buf)
{
usart1_send_byte ---->usart1_send_data
}
usart1_recv_byte
二 中断
目标:把之前检测按键功能由轮询的方式改为中断
2.0 中断控制器
当使用中断时,首先了解中断控制器
NVIC 可嵌套的向量中断控制器
VIC 向量中断控制器
GIC 通用中断控制器 ----》 高端板子
一般情况下MCU使用NVIC和VIC
2.1 在STM32F103RBT6中的中断
NVIC 和ARM-CORTEX-M3紧密相连
NVIC会处理两个事情
1)NVIC会为每一个连接到NVIC上的中断源分配一个中断号
中断号的顺序一定和中断向量(异常处理函数)保持一致
2)处理优先级的问题
本身ARM提供8bit的空间来解决256个优先级,但是ST公司只用了4bit 用于处理16个优先级
2.2 通过手册了解EXTI中断
打开《stm32f10x中文参考手册》 P91
8.1.2章节中所指示的是中断和异常向量表
编号越小的(中断),优先级越高
表36中所指示的内容是不可以修改的
首先关注EXTI,它表示外部中断,可以配置成19个中断事件源
16个用来处理外部中断,剩余的3个用来处理其他中断
GPIO管脚可以触发中断,但是需要借助EXTI,一共有19个
PA0 PB0 PC0 PD0 ...都可以触发EXTI0
...
PA15 PB15 PC15 PD15 ...都可以触发EXTI15
结论:每一个GPIOx都可以触发EXTIx
注意:
1)NVIC和EXTI的区别
NVIC 控制器
EXTI 外部中断源
2)编号的问题
中断有中断号
中断号和异常向量表中的顺序有关
外部中断也有外部中断号
EXTI的中断号和GPIO的管脚相关
3)外部中断 EXTI0 对应的中断编号 0...
外部中断 EXTI9~5 对应的中断编号是同一个
有些外部中断独占一个中断号,有些外部中断共享一个中断号
也就是说,异常向量表中的第6函数是处理外部中断0
由于KEY0 对应的PC9 KEY1 对应的是PC8
且EXTI9~5对应的中断处理函数是同一个,所以要在中断处理函数中进行判断
2.3 了解外部中断配置寄存器
EXTIx[3:0] 配置成不同的值的时候,选择不同的管脚,它属于 AFIO_EXTICRx。
所以打开时钟的时候,需要将GPIOA,GPIOC,EXTI,AFIO的时钟打开
2.4 驱动EXTI(外部中断)
KEY0 PC9 EXTI9
KEY1 PC8 EXTI8
KEY2 PA0 EXTI0
KEY0 和 KEY1 在没有按下的时候,呈现高电平。
KEY2 逻辑和上述相反。
用中断的方式实现USART1接收字符串
stm32f103rbt6_6相关推荐
最新文章
- (C++)A+B 输入输出练习V 输入的第一行是一个正数N,表示后面有N行。每一行的第一个数是M,表示本行后面还有M个数。
- Windows Mobile 技术开发黄金周系列课程
- MySQL从入门到精通50讲(八)-MySQL排序分组
- CCNA--OSI、TCP/IP
- 如何在一个站点里使用两个Web.sitemap 或是多个Web.sitemap?
- 第二阶段站立会议08
- 开创手机影像全新时代的微云台要来了!vivo X系列夏季新品发布会今晚高能来袭...
- dev控件调用html页面,Chrome开发工具 扩展 DevTools
- LeetCode(897)——递增顺序查找树(JavaScript)
- 初学者应该如何开启自己的编程生涯?,nginx架构图
- webpack教程(二)——webpack.config.js文件
- 图像语义分割(6)-RefineNet:用于高分辨率图像语义分割的带有恒等映射的多路精细网络
- python numpy官方文档_[ Numpy中文文档 ] 介绍 - pytorch中文网
- 无线烟感在文物古建筑的安全防火应用
- linux c实现通用hash表
- 电子计算机系统集成费用,信息服务资费标准 计算机信息系统集成类.pdf
- 一元三次方程重根判别式_一元三次方程的求根公式
- 1M宽带50M宽带100M宽带最大下载速度
- 微信视频号头像怎么换?怎么设置?必看!5个思路帮你快速敲定头像
- 无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装
热门文章
- not exists/exists的用法
- XNA游戏:手势触控
- 别等到使用电化学工作站时才来了解这些
- 消灭EMC的三大利器:电容器/电感/磁珠
- Cocos2dx WebSocket的使用
- 解决第一个Android工程sync失败失败90%问题的方法(sync失败、unresolved ...、not found、。。。)
- 广东专插本计算机专业学校有哪些,2020年广东专插本院校有哪些?
- Thread Environment Block(TEB)
- WS PC biotin是水溶性的、azide-反应性的可洗性生物素探针WS PC DBCO-Biotin
- 1.1 什么是PowerVM(IBM小型机)虚拟化技术