[发明专利]基于无操作系统单片机平台的互斥资源访问方法有效
申请号: | 202011233896.X | 申请日: | 2020-11-06 |
公开(公告)号: | CN112286697B | 公开(公告)日: | 2022-11-25 |
发明(设计)人: | 郝佳佳;王科;钟前进;李延法;胡向明 | 申请(专利权)人: | 上海新时达机器人有限公司 |
主分类号: | G06F9/52 | 分类号: | G06F9/52;G06F9/48;G06F9/54 |
代理公司: | 上海华祺知识产权代理事务所(普通合伙) 31247 | 代理人: | 刘卫宇 |
地址: | 201801 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 操作系统 单片机 平台 资源 访问 方法 | ||
一种基于无操作系统单片机平台的互斥资源访问方法,包括:后台程序或低优先级中断在访问互斥资源前,先为待访问的互斥资源设置互斥锁;高优先级中断打断后台程序或低优先级中断程序的运行,设置中断返回上下文,在访问互斥资源前如检测到互斥锁有效则关闭当前中断,加入互斥资源等待队列并设置等待资源上下文,然后跳转到所述中断返回上下文,实现中断返回;后台程序或低优先级中断恢复运行,在访问互斥资源后,释放互斥锁,并使能互斥资源等待队列中优先级最高的中断;优先级最高的中断跳转到等待资源上下文,若检测到互斥锁已释放,则访问互斥资源。本发明实现了在无操作系统的单片机平台中多任务同步访问互斥资源。
技术领域
本发明涉及多任务访问互斥资源技术。
背景技术
随着自动化生产线、数字化工厂等的发展,对控制和驱动单元实时性的要求越来越高。大多数控制单元采用实时操作系统或微内核来实现任务调度、实时控制。由于操作系统或微内核本身会带来任务抖动和延迟,影响实时性。
为了进一步提高实时性,同时为了降低成本,大多数驱动单元和低端控制单元基于单片机开发,无操作系统,采用中断程序加后台程序的方法,由于中断的实时性很高,能较好地进行实时控制。由于没有操作系统,对于一些互斥资源(如EEPROM、FRAM)的访问变得复杂,需要良好的可重入代码。
发明内容
本发明所要解决的技术问题在于提供一种基于无操作系统单片机平台的互斥资源访问方法,其能够实现无操作系统单片机平台的中断程序和后台程序对互斥资源的同步访问。
本发明实施例提供了一种基于无操作系统单片机平台的互斥资源访问方法,包括以下步骤:
后台程序或低优先级中断在访问互斥资源前,先为待访问的互斥资源设置互斥锁;
高优先级中断打断后台程序或低优先级中断程序的运行,设置中断返回上下文,在访问互斥资源前如检测到互斥锁有效则关闭当前中断,加入互斥资源等待队列并设置等待资源上下文,然后跳转到所述中断返回上下文,实现中断返回;
后台程序或低优先级中断恢复运行,在访问互斥资源后,释放互斥锁,并使能所述互斥资源等待队列中优先级最高的中断;
所述优先级最高的中断跳转到等待资源上下文,若此时检测到互斥锁已释放,则访问互斥资源。
上述的基于无操作系统单片机平台的互斥资源访问方法,其中,高优先级中断在关闭当前中断时不清除中断源标志,以便开启中断时能立即进入中断。
上述的基于无操作系统单片机平台的互斥资源访问方法,其中,高优先级中断使用MDK自带的setjmp函数设置所述中断返回上下文及所述等待资源上下文,以将当前上下文信息保存起来。
上述的基于无操作系统单片机平台的互斥资源访问方法,其中,高优先级中断使用MDK自带的longjmp函数跳转到所述中断返回上下文,优先级最高的中断使用MDK自带的longjmp函数跳转到所述等待资源上下文,以接着上次执行的代码继续执行。
上述的基于无操作系统单片机平台的互斥资源访问方法,其中,若优先级最高的中断跳转到等待资源上下文后检测到互斥锁有效,则关闭当前中断,加入互斥资源等待队列并设置等待资源上下文,然后跳转到中断返回上下文,实现中断返回。
本发明至少具有以下优点和特点:
1、本实施例实现了在无操作系统的单片机平台中多任务同步访问互斥资源,减少了互斥资源访问的复杂度,简化了互斥资源驱动程序的编写;
2、本实施例的互斥资源锁释放后,等待资源的最高优先级中断程序立即恢复执行,访问资源,减少了高优先级中断程序由于访问互斥资源对实时性的影响。
附图说明
图1示出了根据本发明一实施方式的基于无操作系统单片机平台的互斥资源访问方法的前两个步骤的流程示意图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海新时达机器人有限公司,未经上海新时达机器人有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011233896.X/2.html,转载请声明来源钻瓜专利网。