找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1447|回复: 2
打印 上一主题 下一主题
收起左侧

单片机程序不用中断怎么将数码管复位且蜂鸣器报警?

[复制链接]
跳转到指定楼层
楼主

单片机源程序如下:
#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();
   }
  }
}
}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:451718 发表于 2021-4-20 08:50 | 只看该作者
1,首先要了解一下,中断的特性。为什么要用中断?
2,你这个简单按键触发显示和蜂鸣器的程序,用中断和不用中断有什么区别?
3,还有,你所说的复位,又是一个什么实际状态?
回复

使用道具 举报

板凳
ID:584814 发表于 2021-4-20 10:40 | 只看该作者
电路很清奇,程序很理想,问题很呆萌。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

Powered by 单片机教程网

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