51外中断程序

2019-07-16 07:02发布

#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint  unsigned int
sbit k1=P3^2;
uchar n;
uint  m=10;

delayms(uint i)
{
  uchar j;
  while(i--)
   {
           for(j=0;j<115;j++);
   }
}

void main()
{
        EA=1;
    EX0=1;
        IT0=1;


        P0=0xfe;
        while(1)
        {
        for(n=0;n<8;n++)
           {
                   P0=_crol_(P0,1);
                delayms(m);
               
               
           }
       
                }
           }
          


void yanshi() interrupt 0
{

        m+=10;


       
}


这个程序怎么设定m值的上限,不然的话m的值会越来越大,延时太长,要求到达上限之后,回到初值。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
lirongqing
1楼-- · 2019-07-16 09:42
if(m>100) m=0;
taobaomi
2楼-- · 2019-07-16 10:02
lirongqing 发表于 2011-5-23 01:03
if(m>100) m=0;

谢谢版主 解决了
shuqi0504
3楼-- · 2019-07-16 14:44
谢谢啦,

一周热门 更多>