[发明专利]一种管理嵌入式系统GPIO中断处理的方法有效
| 申请号: | 201711082969.8 | 申请日: | 2017-11-07 |
| 公开(公告)号: | CN107766141B | 公开(公告)日: | 2021-07-20 |
| 发明(设计)人: | 黄少锋 | 申请(专利权)人: | 福建北峰通信科技股份有限公司 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 362012 福建省泉*** | 国省代码: | 福建;35 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 管理 嵌入式 系统 gpio 中断 处理 方法 | ||
1.一种管理嵌入式系统GPIO中断处理的方法,其特征在于:包括抽象的GPIO中断事件的订阅管理单元、抽象的发布处理引擎单元以及具体硬件的GPIO中断事件的发布处理实例单元;
所述抽象的GPIO中断事件的订阅管理单元,与硬件设备无关的单元,并不关注硬件设备具备多少个GPIO端口,而仅仅由外部来指导、获取指定的GPIO端口的订阅者链表信息;
所述抽象的发布处理引擎单元不涉及具体硬件设备,而仅仅根据外部指定的GPIO端口信息,以及GPIO端口中断事件标记信息,对订阅者链表进行中断事件的发布处理;统一接管了嵌入式系统所需要的进、退出中断环境的标记动作,以及清除GPIO中断标记的动作;
所述发布处理实例单元根据具体硬件的可用的GPIO端口资源,定义对应数量的GPIO端口的原始ISR函数,以及对应数量的全局静态存储类型的订阅者链表变量,继而调用抽象的GPIO中断事件的发布处理引擎单元。
2.如权利要求1所述一种管理嵌入式系统GPIO中断处理的方法,其特征在于:所述订阅者包括以下关键属性:
指定GPIO端口和GPIO引脚,以及ISR和自定义的ISR的上下文参数,当对应的中断事件发生时,ISR将被调用,同时自定义的上下文参数被传递给ISR,用于定制ISR的响应动作。
3.如权利要求2所述一种管理嵌入式系统GPIO中断处理的方法,其特征在于:所述订阅者以静态存储类型的形式存在,订阅和退订操作就不需要引入内存管理操作,此时订阅者的属性增加订阅者链表节点,用于链接链表。
4.如权利要求1所述一种管理嵌入式系统GPIO中断处理的方法,其特征在于:所述中断事件的发布处理,具体步骤为:
首先,针对嵌入式系统环境的应用场景,统一标记当前已进入中断环境;
然后,遍历对应GPIO端口的中断事件的订阅者链表,依次将GPIO端口中断事件标记,和订阅者的GPIO引脚属性,二者做‘与’位运算,结果不为0,则调用订阅者的ISR,同时将自定义的上下文参数被传递给ISR,调用结束后,清除对应的中断标记,完成一次发布处理,而当全部遍历结束,再次主动清除所有未处理的中断标记;
最后,遍历结束后,统一标记当前已退出中断环境。
5.如权利要求1所述一种管理嵌入式系统GPIO中断处理的方法,其特征在于:所述的原始ISR函数,为GPIO中断事件的第一入口点,当发生中断事件时,硬件自动调用原始ISR函数,原始ISR函数内部调用抽象的GPIO中断事件的发布处理引擎单元,同时传入指定的GPIO端口,以及GPIO端口中断事件标记信息,实现对中断事件的发布处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建北峰通信科技股份有限公司,未经福建北峰通信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711082969.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种预防牛布氏杆菌的中草药饲料
- 下一篇:一种犊牛饲料





