RTT的线程同步篇——异常管理

野火RTT第25章异常
2018年12月29日
10:47

一、中断中使用RRT的IPC通信机制。
异常分为同步异常和异步异常。
中断属于异步异常。
RTT建议在中断中采用信号量、消息、事件来标记。
中断相关的硬件:外设、中断控制器、CPU。
中断过程:外设产生中断,中断控制器设置优先级等并向CPU发送中断信号,CPU执行执行中断。

二、
中断号:和外设相绑定、指示哪个外设。
中断向量:中断程序服务程序入口地址
中断向量表:保存中断向量的表,在表中,中断向量按照其中断向量号的顺序进行排列。
临界段:不允许中断打断的代码段、进入只是关中断。

关闭中断只是说不响应中断,只是将中断挂起,当开中断的时候还会处理中断。

三、
中断过程:外设中断,CPU到中断处理器读取中断向量号,查找中断向量表,找到对应中断服务程地址,并执行,这段时间也叫识别中断时间。

等待中断打开时间:允许中断嵌套下,高优先级中断打断低优先级中断优先执行完毕再执行低优先级中断。在不允许优先级嵌套下,一个中断执行时,其他中断等它执行完再执行。这都有个时间。

关闭中断时间:在操作系统中,对临界资源的访问时关中断,访问结束再打开中断,这段时间叫关闭中断时间。

中断延时:中断发生时刻到中断程序开始执行时刻之间的时间,再加其他延时时间。即:
中断延时=识别中断时间+等待中断打开时间+关闭中断时间。

四、中断向量表STM32默认是在启动文件中定义也就是.s文件中定义。

五、cortex -M系列和ARM7 ARM9的中断机制不一样,后者有个中断统一入口,方便OS管理,前者是已经固定了,有启动文件定义好了中断向量表。
所以RTT在中断上的使用和裸机一样。

中断
2018年12月29日
10:49

1.中断的重映射问题
CORTEX M系列单片机内核,其启动文件.s文件,定义了弱化的中断服务程序入口,
用户可以再定一个同名的中断服务程序入口来替换它,不定义也可以,那它执行的是默认的入口。
所以用不到的中断可以不写出来。

2.实时系统常用中断,轮循系统采用轮循方式。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值