找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4347|回复: 7
收起左侧

单片机如何做到并行运行程序?否是可以让中断延迟执行?

[复制链接]
ID:420742 发表于 2018-11-4 21:22 | 显示全部楼层 |阅读模式
如题。 或如果有些程序不宜中途中断是否可以让中断延迟到该程序运行完再中断
回复

使用道具 举报

ID:420795 发表于 2018-11-4 23:18 | 显示全部楼层
最好写清楚遇到什么问题了,要这么编写程序。 可以考虑先把中断关了,执行完关键代码再开中断。
回复

使用道具 举报

ID:388197 发表于 2018-11-5 00:10 | 显示全部楼层
最简单的办法就是,在你想不被打断的程序段前面加句把中断使能关掉,执行完后再打开就行了.
如果不关中断,也可以把希望不被打断的程序段丢到高优先级的中断里面去执行,因为中断资源宝贵,所以里面执行的程序代码尽量要高效.
回复

使用道具 举报

ID:387733 发表于 2018-11-5 06:57 | 显示全部楼层
有时候关闭中断是必不可少的。例如需要多条指令操作的读写多字节变量,如果中断内也会操作,那么中断外操作时必须关闭中断,否则操作进行中产生中断,就有可能得到不确定的结果。
回复

使用道具 举报

ID:226801 发表于 2018-11-5 08:42 | 显示全部楼层
楼主,在“不宜中途程序”的前面先把中断关了,然后等“不宜中途程序”执行完成后,再打开中断,这样就可以避免中断对程序的影响了。
回复

使用道具 举报

ID:94031 发表于 2018-11-5 08:57 | 显示全部楼层
可以在不宜中途中断程序前加禁止中断,程序执行完后再恢复中断。
回复

使用道具 举报

ID:236668 发表于 2018-11-5 09:00 | 显示全部楼层
一般单片机做不到并行运行的,单片机都是顺序执行指令,有时候感觉能同时执行任务,只是在时间上有个差。可以临时把中断关闭,需要运行,再打开就可以。
回复

使用道具 举报

ID:212797 发表于 2018-11-5 09:58 | 显示全部楼层
对于不想被中断打断的代码,可以在执行之前关闭中断,执行结束之后再打开,这就是常说的临界保护。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表