找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

在外部中断停止定时器后,后面单片机代码就没有反应了不运行了,什么问题

查看数: 1742 | 评论数: 3 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2022-12-16 21:28

正文摘要:

在外部中断停止定时器后,后面代码就没有反应了。不运行了,什么问题? 能停止,但在中断代码里再也不能启动定时器了 单片机源程序如下: void Int4()        interrupt 16  ...

回复

ID:277550 发表于 2022-12-17 10:12
不要在中断中,做这种耗时的活  Delayms(1000);
ID:475031 发表于 2022-12-16 21:29
下面主程序,我按一下按钮,可以运行有动作的。上面是外部中断和定时器不能在一起使用吗?


void main()
{
        Timer0Init();//        初始化定时器中断0
                Int4Init();  //        初始化外部中断4

        EN=0;
        MS1=1;
        MS2=0;
        MS3=0;

                               
       
        while(1)
        {
  if(KEY1==0)  //判断是否按下键盘
        {
                Delayms(10); //延时,软件去干扰
                if(KEY1==0)   //确认按键按下
                {

                       

                               
                                MS1=1;
              MS2=0;
   
               
Dir=1;//反转
Delayms(3000);
TR0=0;//停止
                               

                       

                }
                while(KEY1==0);//按键锁定,每按一次count只加1.
        }

       
       
       

       
       
        }
}

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表