资料介绍
通过分析51单片机外中断I/O入口的内部结构,解释了外中断不能被正常响应的原因,并提出了解决该问题的方法。
在长期使用51单片机的过程中,我们发现单片机在工业生产现场等干扰较强的环境工作时,有时确已产生定义为下降沿触发方式的外中断,然而用仪器测量已经送入单片机的INTX引脚时,单片机却不能够正常响应中断。在排除了可能由程序导致的问题之后,再检查CPU 的当前状态,发现中断级别、中断允许、中断触发方式也都表明应该响应中断。后经分析及测试,发现是单片机INTX引脚内部端口锁存器被置为零所致。当端口被封锁为零时,从该引脚引入的下降沿表示的中断申请将丢失,中断当然不被响应。由于程序中并未使用可将端口锁存器置为零的指令,且这种情况的产生具有一定的随机性,并非经常发生,所以认为这种现象可能是因电路干扰或噪声造成锁存器误动作导致的。同时我们还认为这种误动作和P3口的内部结构及操作方式有一定关系。单片机外中断输入端的P3口是具有第二变异功能的准双向口,其每一位的内部结构如图1所示。当变异功能输出为高电平时,位口是普通I/O口。此时如对I/O口进行写操作,数据由内部总线写入锁存器,经与非门和MOS管两次反相后送出引脚;如对I/O口进行读操作,则必须先将锁存器置为1,使MOS管截止,引脚被片内负载MOS管(图中标为上拉电阻)上拉为高电平,然后可进行输入操作,当输入为低电平时它能被拉成低电平,引脚信息经两个缓冲器进入内总线;如果使用第二功能(变异功能),输入锁存器同样也必须先被置为 1,这时引脚受变异功能输出控制,若需使用变异功能输入,则锁存器和变异输出必须同时置为1,使MOS管截止,变异功能输入随引脚的变化而变化。估计在第二功能时只能用于输入中断的P3.2和P3.3口,内部可能没有变异功能输出线,即使有,也只能上拉为固定的高电平。可见,单片机P3口不管是通用I/O口还是变异功能输入,其锁存器都必须先置为1。单片机复位后所有I/O口的状态都是1,一般在系统的初始化程序中定义过中断优先级,并在开中断之后单片机即可响应中断,此后若关掉相应中断允许位(置为0),则需从引脚进入单片机的中断有效信号(低电平或下降沿)虽然仍可进入并使IE0(或IE1)置为1,但不能引起中断,当然程序可查寻IE了解中断源是否产生了中断申请。
- 51单片机外部中断拓展(两个以上的外部中断)
- 51单片机外部中断0实例详解
- 使用单片机外部中断的使用C语言程序免费下载 9次下载
- 使用FPGA经常会碰到哪些问题应该如何解决 14次下载
- 微波部件经常会出现那些问题应该如何解决
- 3D打印机经常会出现那些出现问题应该如何解决 8次下载
- 51单片机经常会出现的4点错误解决方法详细说明
- 51单片机的外部中断应该如何触发
- 51单片机无法烧录程序应该如何解决详细方法说明
- 51单片机外部中断的C51编程程序和相关知识免费下载
- 51单片机的外部中断有哪些触发方式
- 51单片机的外部中断应该怎么使用?详细实例说明
- 51单片机进行串口通信时会遇到那些问题
- 单片机外部中断程序下载 0次下载
- 基于单片机的外部中断的设计 9次下载
- 什么是中断?单片机中断处理过程详解 4342次阅读
- 单片机外部中断的好处 1919次阅读
- 单片机的程序开发经常会出现那些错误 4809次阅读
- 内存经常会出现那些故障?应该如何解决 3658次阅读
- 单片机的中断程序如何运行 1w次阅读
- 初学单片机经常会有那些不容易掌握的知识点 3157次阅读
- 51单片机中断用法实例解析 2.5w次阅读
- 51单片机的外部中断实验设计 1.1w次阅读
- 如何对51单片机进行外部扩展 1.5w次阅读
- 基于8051单片机的中断控制 1994次阅读
- 51单片机的中断体系结构_中断的响应过程 1.9w次阅读
- 关于单片机的中断系统的详细介绍 3.1w次阅读
- 89C51单片机中断知识要点 1.7w次阅读
- 单片机中断系统介绍_51单片机中断系统结构 1.2w次阅读
- 51单片机的扩展中断方法 1184次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 651单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 751单片机大棚环境控制器仿真程序
- 1.10 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多