「已注销」 2019-10-07 00:16 采纳率: 100%
浏览 519
已结题

51单片机外部中断自动重复了一次

51单片机外部中断自动重复了一次

#include <reg52.h>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int

void delay(uint);
void breath();

uchar tr_1;

void main()
{
    EX0=1;
    IT0=1;
    EA=1;
    P0=0xfe;
    delay(4000);
    while(1)
    {
        tr_1=P0;
        P0=_crol_(P0,1);
        tr_1=P0;
        delay(4000);
    }
}

void breath()
{
    uint count_1;
    count_1=0;
    while(count_1<100)
    {
        P0=0xff;
        delay(100-count_1);
        P0=0x00;
        delay(count_1);
        count_1++;
    }
    while(count_1>0)
    {
        P0=0x00;
        delay(count_1);
        P0=0xff;
        delay(100-count_1);
        count_1--;
    }
    P0=tr_1;
}

void delay(uint t)
{
    uint count_1;
    while(t>0)
    {
        for(count_1=0;count_1<5;count_1++);
        t--;
    }
}

void led() interrupt 0
{
    uint count_1;
    count_1=0;
    while(count_1<1)
    {
        breath();
        count_1++;
    }
}

点击了外部中断按钮之后,应该只出现一次呼吸灯的亮和灭,可是实际上有时候是一次,有时候是两次。???求助

  • 写回答

2条回答 默认 最新

  • 关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月16日
  • 已采纳回答 5月28日

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?