请问51单片机按键中断失效。

自己做了块板子,MCU是IAP15F2K61S2,其他的程序烧进去可以跑,但是外部中断0的
按键按上去没有反应,程序上应该没问题,软件仿真可行,并且大部分为源代码,上电后
测试过未按键,引脚的电压是5V,而按键按下别为0V,感觉也没有问题,但为什么程序
不响应?在线求大神解答。

6个回答

先下一个基础程序进去看看 确保硬件没有问题 有硬件不建议用仿真 仿真蛮容易忽略很多问题

你打开外部中断了没有,还是仔细检查下你的程序,在检查硬件是否能产生中断。

使能总中断》使能外部中断》中断函数》清除中断标志,一步都不可以少

还是贴一下程序吧 再就是单片机的板子上的电路有没有问题

软件检查:中断的各个环节是否都操作正确,如楼上所说,使能总中断--使能外部中断--设置优先级--中断函数--正确返回
硬件检查:在你对基本电平逻辑进行检查的基础上,下载一个单一检测程序,主程序只完成中断相关的初始化工作;中断服务程序做中断响应标识(特征值设置,或者蜂鸣器响一下之类的)

推荐用实际板子做单元调试,别依赖仿真环境。

1、中断时电平触发还是沿触发;
2、电平触发需要做中断抑制,否则一直有中断,可能跑死;
3、如果是沿触发,需要看下信号质量是否有台阶回勾;
4、中断是否挂上钩子了。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
51单片机按键中断
51单片机按键中断代码,初始化:边沿触发方式下降沿,打开总的中断。
51单片机程序 时钟及按键中断
51单片机程序 实现时钟及按键中断的功能,通过protues仿真没问题的
linux驱动开发--中断:按键中断
https://blog.csdn.net/waldmer/article/details/19189023 韦东山源码 #include <linux/module.h> #include <linux/kernel.h> #include <linux/fs.h> #include <linux/init.h> #include &lt...
中断,51单片机的中断定义
很好 中断,51单片机的中断定义,必须下
3.MSP432学习之按键中断与按键非中断
TI MSP432学习之按键中断与按键非中断模式 为电赛准备的。
按键中断
1,  理论知识按键按下(产生了中断)→跳转到异常向量入口,执行中断函数中断函数要做什么:1.保护现场2.执行中断处理函数3.恢复现场我们需要做什么?学会使用中断注册函数,了解注册中断相关的函数和结构体 中断注册函数:request_irq的5个参数request_irq(unsignedint irq, irq_handler_t handler, unsigned long flags,   ...
按键和中断
按键
按键及中断
#include sbit KEY = P1^0; //sbit LED = P0^0; unsigned char LED[16] = {0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7F,0X6F};  //,0X77,0X7C,0X39,0X5E,0X79,0X71}; //~(1~f) 段选 unsigned char code   dis
51单片机中断
这个程序是讲述的单片机中断发光二极管闪烁。
51单片机之中断
之后一节课学习了中断,以下是中断的学习 一、中断的概念     CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生);     CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务);     待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回),这一过程称为中断   二、中断源     在51单片机中有5个中断源     中断...
51单片机——中断
单片机——中断 宗旨:技术的学习是有限的,分享的精神是无限的。   1、中断:放下手中的事情去处理另一种事情。   2、定时器中断        定时器是单片机模块的一个资源,确确实实存在的一个模块,中断是单片机的一种运行机制。不是一回事,不只是定时器才能触发中断。        对单片机的操作主要是操作IO口和操作寄存器的。 x * 8 + 3 = 向量地址 
51单片机的中断
有关于51单片机的中断、IO口以及串口、定时计数器等
s3c2440中断总结+按键中断
一、启动代码之IRQ中断分析。 二、中断申请      60中断源,其中独立的中断和含有子中断的中断共32个。它们是位或共存。 1、 配置中断控制寄存器  SUB子  SRC源  PND--PENDING 挂起   1)SRCPND---申请中断   每一位对应一个总(独立)的中断源       手动写1---自动清0---有中断产生的那位就自动置1  -----在中断函
【中断】中断嵌套导致中断失效
昨天在程序里增加了个新功能, 为了图方便, 在USART1的中断处理函数USART1_IQR中, 嵌套了段功能函数A_Function, 其中功能函数A_Function中有一段是循环等待USART2的中断处理函数USART2_IQR将指令接收标志S1_Flag置位。 这个功能一直没有调通,因为发现S1_Flag一直没有置位。 后来,把功能函数A_Function不再放到USART1_...
stm8l-discovery按键中断程序
完全按照stm8-discovery上写的按键开发完整程序 值得初学stm8l的学习下载,有很高的参考价值 值得大家学习 本历程用库函数开发的
gpio按键和定时器中断
C6748的GPIO按键和定时器中断组合例程,通过KEY按键和定时器结合控制GPIO亮灭
MSP430的中断按键
本中断按键与msp430配套,与开发板小系统相连,即可验证其正确性,用中断按键使系统进入相应的中断服务程序
2440a按键中断 mmu
在按键中断实验时,加了MMU_Init()模块后,其底下语句就不执行了,其他的代码都是mini2440给出,未改动,求解释?
S5PV210按键和中断--1
1.按键原理图分析:接按键的引脚不按下时是拉高的,按下时引脚是低电平的。 2.异常和中断? 复位异常、数据异常、快速中断异常、外部中断异常、预取异常、软中断异常、未定义指令异常 3.异常向量表地址是:0xD0037480 4.S5PV210 有4个VIC控制器,VIC0-VIC3,每一个32位,理论上总共可以支持32 X 4 = 128个中断,实际上有些位是空的,没用到。 5.寄存器: VICnI...
S3C2440的按键中断程序
按键中断是一种外部中断,即他属于一种异常状态,可以产生中断。那么我们怎么样来分析和编写一个基于S3C2440的按键中断代码呢。 一、第一部我们要初始化号响应的参数,分为三步 1.我们肯定要设置一个中断源,让他能够发出中断信号。必须保证2440能够感受到这个外部中断, 这个时候就要通过设置中断源来实现。 2.我们还需要设置一个中断控制器,让他可以向CPU发出中断信号 3.我们还要再设置CP...
驱动-按键-中断模式
驱动-按键-中断模式 eint_drv.c /*******驱动代码************/ #include #include #include #include #include #include #include #include #include #include #include static struct class *eintdrv_cl
MINI2440按键中断
一个非常详细的mini2440按键中断实例
STM32F103C8T6按键中断功能实现
公司准备开发一款手持智能硬件,经过讨论决定使用STM32F103C8T6作为主控芯片;核心功能是一个按键中断,长按、短按分别实现不同的功能(规定大于1s为长按,否则视为短按)。 按键功能分析:需要使用2个定时器中断进行判定(TIM2、TIM3),TIM2进行判断长按和短按的抬起有效,实现长按和短按;TIM3作为定时器,定时1s;TIM2和TIM3的定时周期为10ms。 代码: 1、在
树莓派的按键中断
一:实验现象 程序实现在树莓派上通过中断的方式检测按键是否按下,如果按键按下的话,会打印出按键按下的提示信息 二:操作步骤 1,初始化wiringPi库; 2,设置按键引脚为输入模式; 3,设置引脚为上拉模式(即:当按键没有被按下时,该输入脚为高电平; 4,注册中断程序,并且设置中断的触发方式; 5,判断中断标志位,检测按键是否按下,清空标志位,方便下次检测。 #include
eclipse 按键失效
 我用的eclipse,刚才忽然出现按键有用了,方向键和backspace按键没有用了,而且鼠标点击也很迟钝。在几个视图中,如果用鼠标点击了某个视图,别的视图就不能再通过点击鼠标来获得焦点了,除非将整个eclipse最小化,再还原才能再点击一次。郁闷死了,有谁遇到过怎么解决啊?
解决IDEA按键失效
今天突然遇到一个问题 鼠标只能启动停止idea的项目,其他鼠标都失效,键盘的按键也失效 我试了一个快键方式,Ctrl + Alt + V 也可解决 Tools,Vim Emulator,前面会有一个√,可,如图: 把那个√取消即可解决问题。 ...
6410裸机按键中断
6410裸机按键中断,可用jlink直接调试
按键中断驱动程序
按键中断驱动程序
12.ARM按键中断实例
目录 1.思路 2.例子 3.中断服务函数的改进 源代码 1.思路 步骤: 1.设置中断源,发出中断信号 2.设置中断控制器,能向CPU发出中断 3.设置CPU,CPSR的I位,打开IRQ中断总开关。 4.硬件进入中断处理函数之前会自动做一系列的工作 1).把下一条指令的地址保存在Link Rigsiter(LR)寄存器(R1...
S5PV210按键和中断-2
1.我们按键是使用的外部中断,eint2、eint3、eth16、eint17、eint18、eint19,210总共支持32个外部中断 2.其中有3类比较重要的寄存器,CON、PEND、MASK 下面我们看一下整个中断工作的全过程: 分析: 1.key_init_interrupt:初始化连接按键的引脚为外部中断模式,设置中断的触发模式,中断允许,清挂起(产生中断的时候,硬件会自动置1),清挂起...
STM32 CubeMX按键中断
一、GPIO 8种工作模式 输入模式: 1. GPIO_Mode_AIN 模拟输入 2. GPIO_Mode_IN_FLOATING 浮空输入 3. GPIO_Mode_IPD 下拉输入 4. GPIO_Mode_IPU 上拉输入 输出模式: 5. GPIO_Mode_Out_OD 开漏输出 6. GPIO_Mode_Out_PP 推挽输出 7. GPIO_Mode_AF_OD ...
SOPC第四课 按键中断
按键 LED控制 2个按键,当按键0按下时,LED灯开始闪烁;当按键1按下时,LED灯停止闪烁。 使用一个PIO 这个PIO设置为6位(4个LED+2个按键) PIO设置为bidir型 位宽为6位 能够捕获边沿下降沿 能够产生中断、边沿中断 要求使能单独位的设置和清零 使能边沿捕获寄存器的单独位清零 矩阵键盘说明 矩阵键盘有两组,共有8跟信号线,其中COL每一列的四个按键的一端连接起来,而R...
Tiny6410裸机按键中断
一、按键中断简介 裸机按键中断用到了外部中断:外部中断占了4个中断源(INT_EINT0 INT_EINT1 INT_EINT2 INT_EINT3 INT_EINT4)如下图所示 上传到服务器 在用到外部中断时需要知道所用的按键GPIO引脚属于哪一个中断源或者属于哪一个组,Tiny6410按键用到了GPN0~GPN5 六个引脚,其中GPN0~GPN3 属于INT_EINT...
WinCE按键中断驱动源码
WinCE按键中断驱动源码,EVC++编译通过。可以直接用于工程设计中。
MSP430按键中断
按键中断改变参数,按键属于中断输入,随时改变你的变量
map430按键中断程序
自己学习430时候写的程序,现在发上来高手批评指正一下,新手学习参考一下,呵呵……
按键中断的裸机程序
下载了开发板带的按键中断程序BIN文件,可以正常运行。但是我用ADS自己编译板子带的源码生成BIN文件,通过串口下进去,一点没反应。是不是有中断的程序和无中断的程序哪里设置不一样啊。我已经加了2440init.s文件
stm32按键中断点灯
原理学习:   中断总结: 1.中断是由硬件产生的   2.中断要有中断服务程 3.   中断理解: 郭工正在上课(cpu正在运行)→有人来敲门(EXIT外部中断)→郭工把正在执行的程序放下保存现在的现场(cpu记住程序执行到哪,执行到exti了,记住现场)→郭工去开门(执行中断处理程序→返回现场(返回中断之前的代码执行)   中断分级理解:   有很多个门。1号门敲门,在执行...
STM32_按键中断
*************************************************************************************************************************************** 开发板   :奋斗STM32 MCU        :STM32F103 开发环境:keil uVsion4
s3c2440在keil下的按键中断
在移植ADS下的S3C2440的.s文件工程模版下,进行的按键中断程序
相关热词 c#部署端口监听项目、 c#接口中的属性使用方法 c# 昨天 c#func链接匿名方法 c#怎么创建文件夹 c#从键盘接收空格 c#da/ad c#部门请假管理系统 c#服务器socket c# 默认的访问修饰符