打印
[应用笔记]

特定场景或需求让人考虑在中断中执行某些与 main 函数相似的逻辑。

[复制链接]
2870|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
突然下起雨|  楼主 | 2024-6-28 03:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在单片机开发中,一般的实践是将主要的应用逻辑放在主函数 (main 函数) 中,而将特定的响应逻辑放在中断服务程序(ISR)中。中断服务程序用于处理实时事件,而 main 函数则执行主要的程序逻辑。中断中直接调用 main 函数是不常见的做法,因为这会导致设计混乱和难以调试。通常,main 函数启动后,会初始化系统并在一个主循环中运行,而中断服务程序在特定事件发生时执行。

然而,可能有一些特定场景或需求让人考虑在中断中执行某些与 main 函数相似的逻辑。以下是如何实现和优化这种设计的方法。

正确的设计模式
主函数:

初始化系统,包括时钟、外设、GPIO 等。
配置中断,并启用全局中断。
进入主循环,通常是一个无限循环。
中断服务程序:

处理紧急和短时间的任务。
尽量减少中断处理时间,以便迅速恢复主程序的执行。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

38

主题

284

帖子

1

粉丝