单片机控制流水灯 数码管显示时间 蜂鸣器报警

本文介绍了一个使用单片机AT89x52控制流水灯、数码管显示时间并配合蜂鸣器报警的项目。通过设置延时函数、选择不同表格数据来实现数字显示和流水灯效果。程序中详细定义了数码管和流水灯的控制引脚,以及相应的显示和延时函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

#include<AT89x52.h>
unsigned char table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char table1[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0xb0};
sbit L1=P2^7;
sbit clk=P2^0;
sbit AB=P2^1;
sbit SA=P2^2;//数码管一的com端
sbit SB=P2^3;//数码管二的com端
sbit SC=P2^4;
sbit SD=P2^5;

void delay2(void)
{
  unsigned char i,j,k;
  for(i=10;i>0;i--)
    for(j=10;j>0;j--)
      for(k=20;k>0;k--);
}
void delay(void)
{
  unsigned char i,j,k;
  for(i=21;i>0;i--)
    for(j=20;j>0;j--)
      for(k=248;k>0;k--);
}
void setTable(char num)
{
 unsigned char c;
 for(c=0;c<8;c++)
{
 clk=0;
 AB=num&0x01;
 num=num>>1;
 clk=1;
}
}<

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值