热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

唤醒后出现死机,发现中断信号不断产生但未被中断?

我的情况是这样的:2450WinCE5.0唤醒后,机器卡死:除了显示屏显示一静态图像外,系统不响应其他的外设。通过打印信息知道,与EINT9注册了的那个事件(我命名为Event_EINT9
我的情况是这样的:2450 WinCE5.0 唤醒后,机器卡死:除了显示屏显示一静态图像外,系统不响应其他的外设。

通过打印信息知道,与EINT9注册了的那个事件(我命名为Event_EINT9)不断地被置成通知状态。
因此系统就在那个处理中断的线程里循环,导致系统呈死机状态。

但是我用示波器测了一下EINT9管脚的状态,发现一直是高电平,就是外部没有中断信号啊!!

那为什么那个与EINT9注册了的事件会不断被置成通知态??

9 个解决方案

#1


看看中断Done处是如何处理的?
休眠时是否被正常处理?

#2


有没有将 interrupt pending register 清除??

Paul, Chao @ Techware

#3


程序每次进入ISR,退出时我都用InterruptDone清除并使能中断了啊。

#4


引用 3 楼 hitszee 的回复:
程序每次进入ISR,退出时我都用InterruptDone清除并使能中断了啊。


这个原因有可能,但是有时候你里面实现的代码不行,那也会不行的。

#5


引用 4 楼 gooogleman 的回复:
引用 3 楼 hitszee 的回复:
程序每次进入ISR,退出时我都用InterruptDone清除并使能中断了啊。


这个原因有可能,但是有时候你里面实现的代码不行,那也会不行的。


“里面实现的代码不行,那也会不行的”请问是什么意思??
从打印信息看程序确实是每次退出ISR时都执行了InterruptDone了呀。。。

#6


建议楼主查看下中断的清除部分的代码,是不是处理干净

#7


引用 6 楼 jeanszu 的回复:
建议楼主查看下中断的清除部分的代码,是不是处理干净


好的,我再看看。


还想问一下是不是有一个专门的寄存器能设置哪些外部中断可以唤醒系统??
为什么我有的外部中断能唤醒,有的却不能呢??
看了三星的datasheet,貌似是不用设置任何一个EINT都能唤醒系统。
是不是取决于EINTMASK?就是说如果EINTMASK将某些外部中断屏蔽了,那些中断就不能唤醒系统了??
谢谢

#8


绑定,我也遇到2450 无法唤醒的问题。

#9


三星的24**系列,EINT0-EINT15应该都可以唤醒休眠的,LZ应该检查下你进入休眠之前的代码。要知道休眠唤醒之后,系统是直接再跳到你进入休眠之前的地址继续执行的

推荐阅读
  • 深入浅析JVM垃圾回收机制与收集器概述
    本文基于《深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)》的阅读心得进行整理,详细探讨了JVM的垃圾回收机制及其各类收集器的特点与应用场景。通过分析不同垃圾收集器的工作原理和性能表现,帮助读者深入了解JVM内存管理的核心技术,为优化Java应用程序提供实用指导。 ... [详细]
  • Python内置模块详解:正则表达式re模块的应用与解析
    正则表达式是一种强大的文本处理工具,通过特定的字符序列来定义搜索模式。本文详细介绍了Python内置的`re`模块,探讨了其在字符串匹配、验证和提取中的应用。例如,可以通过正则表达式验证电子邮件地址、电话号码、QQ号、密码、URL和IP地址等。此外,文章还深入解析了`re`模块的各种函数和方法,提供了丰富的示例代码,帮助读者更好地理解和使用这一工具。 ... [详细]
  • 如何利用Java 5 Executor框架高效构建和管理线程池
    Java 5 引入了 Executor 框架,为开发人员提供了一种高效管理和构建线程池的方法。该框架通过将任务提交与任务执行分离,简化了多线程编程的复杂性。利用 Executor 框架,开发人员可以更灵活地控制线程的创建、分配和管理,从而提高服务器端应用的性能和响应能力。此外,该框架还提供了多种线程池实现,如固定线程池、缓存线程池和单线程池,以适应不同的应用场景和需求。 ... [详细]
  • 在Java编程中,`AbstractClassTest.java` 文件详细解析了抽象类的使用方法。该文件通过导入 `java.util.*` 包中的 `Date` 和 `GregorianCalendar` 类,展示了如何在主方法 `main` 中实例化和操作抽象类。此外,还介绍了抽象类的基本概念及其在实际开发中的应用场景,帮助开发者更好地理解和运用抽象类的特性。 ... [详细]
  • UVa815问题“洪水来袭!”涉及洪水模拟和应对策略。在解决该问题时,需要通过直接模拟来处理洪水扩散过程,并特别关注临界情况的处理。代码实现中应包括必要的头文件,并使用标准命名空间以简化编程。此外,建议在算法设计中加入对边界条件和特殊情况的详细检查,以确保解决方案的鲁棒性和准确性。 ... [详细]
  • Squaretest:自动生成功能测试代码的高效插件
    本文将介绍一款名为Squaretest的高效插件,该工具能够自动生成功能测试代码。使用这款插件的主要原因是公司近期加强了代码质量的管控,对各项目进行了严格的单元测试评估。Squaretest不仅提高了测试代码的生成效率,还显著提升了代码的质量和可靠性。 ... [详细]
  • 小王详解:内部网络中最易理解的NAT原理剖析,挑战你的认知极限
    小王详解:内部网络中最易理解的NAT原理剖析,挑战你的认知极限 ... [详细]
  • 图论入门基础教程
    图论是计算机科学和数学中的重要分支,本教程旨在为初学者提供全面的基础知识。通过实例解析,如“昂贵的聘礼”问题,讲述了一个年轻探险家在印第安部落与酋长女儿的爱情故事,展示了图论在解决实际问题中的应用。教程内容涵盖了图的基本概念、表示方法以及常见算法,适合各类读者学习。 ... [详细]
  • 在洛谷 P1344 的坏牛奶追踪问题中,第一问要求计算最小割,而第二问则需要找到割边数量最少的最小割。通过为每条边附加一个单位权值,可以在求解最小割时优先选择边数较少的方案,从而同时解决两个问题。这种策略不仅简化了问题的求解过程,还确保了结果的最优性。 ... [详细]
  • 第六章:枚举类型与switch结构的应用分析
    第六章深入探讨了枚举类型与 `switch` 结构在编程中的应用。枚举类型(`enum`)是一种将一组相关常量组织在一起的数据类型,广泛存在于多种编程语言中。例如,在 Cocoa 框架中,处理文本对齐时常用 `NSTextAlignment` 枚举来表示不同的对齐方式。通过结合 `switch` 结构,可以更清晰、高效地实现基于枚举值的逻辑分支,提高代码的可读性和维护性。 ... [详细]
  • 计算机视觉领域介绍 | 自然语言驱动的跨模态行人重识别前沿技术综述(上篇)
    本文介绍了计算机视觉领域的最新进展,特别是自然语言驱动的跨模态行人重识别技术。上篇内容详细探讨了该领域的基础理论、关键技术及当前的研究热点,为读者提供了全面的概述。 ... [详细]
  • Vue ElementUI 实现邮箱地址自动补全功能详解 ... [详细]
  • 在 CentOS 7 中,为了扩展可用软件包的数量,通常需要配置多个第三方软件源。这些第三方源包括 EPEL、Nux Dextop 和 ELRepo 等,它们提供了大量官方源中未包含的软件包,从而增强了系统的功能性和灵活性。通过正确配置这些源,用户可以轻松安装和管理更多种类的软件,满足不同的需求。 ... [详细]
  • Java环境中Selenium Chrome驱动在大规模Web应用扩展时的性能限制分析 ... [详细]
  • 微信小程序实现类似微博的无限回复功能,内置云开发数据库支持
    本文详细介绍了如何利用微信小程序实现类似于微博的无限回复功能,并充分利用了微信云开发的数据库支持。文中不仅提供了关键代码片段,还包含了完整的页面代码,方便开发者按需使用。此外,HTML页面中包含了一些示例图片,开发者可以根据个人喜好进行替换。文章还将展示详细的数据库结构设计,帮助读者更好地理解和实现这一功能。 ... [详细]
author-avatar
Emily___Emily_622
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有