标题: 单片机程序不用中断怎么将数码管复位且蜂鸣器报警? [打印本页]

作者: 鹤羽    时间: 2021-4-19 21:53
标题: 单片机程序不用中断怎么将数码管复位且蜂鸣器报警?

单片机源程序如下:
#include<reg51.h>
#define uchar unsigned char
uchar table[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};//共阳管代码
sbit key=P2^0;
sbit bee=P2^1;
delay(uchar num)//延时函数
{
    uchar i,j;
        for(i=num;i>0;i--)
        for(j=100;j>0;j--);
}
display()//数码管显示函数
{
int i;
           i=i+1;
        P1=table[i%10];
        P3=table[i/10];
}
been()//蜂鸣器函数
{
int i;
for(i=0;i<15;i++)
  {
   bee=~bee;
   delay(50);
  }
}
main()//主函数
{
int i;
P1=0x00;P2=0xff;P3=0x00;
while(1)
{
  if(key==0)
  {
   delay(10);
   if(key==0)
   {
           display();
   }
   while(!key);
  }
  if(key==0)
  {
   delay(10);
   if(key==0)
   {
        been();
   }
  }
}
}

作者: robinsonlin    时间: 2021-4-20 08:50
1,首先要了解一下,中断的特性。为什么要用中断?
2,你这个简单按键触发显示和蜂鸣器的程序,用中断和不用中断有什么区别?
3,还有,你所说的复位,又是一个什么实际状态?
作者: man1234567    时间: 2021-4-20 10:40
电路很清奇,程序很理想,问题很呆萌。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1