专栏中心

EEPW首页 > 专栏 > 单片机自学-1(流水灯每0.5秒移动一位,同时蜂鸣器响,数码管计数)

单片机自学-1(流水灯每0.5秒移动一位,同时蜂鸣器响,数码管计数)

发布人:0750long 时间:2010-02-01 来源:工程师 发布文章

 

 

#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit bee="P2"^3;
sbit dula="P2"^6;
sbit wela="P2"^7;

uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};

void delay(uint z);
void main()
{
 uint temp,num,i;
 temp=0xfe;
 P1=temp;
 while(1)
 {
  bee=0;
 
  dula=1;
  P0=table[num+1];
  dula=0;
  wela=1;
  P0=0xfd;
  wela=0;

  delay(200);
  P1=0xff;
  bee=1;
  delay(200);
   temp=_crol_(temp,1);
  P1=temp;
  num++;
  if(num==9)
  { 
   num=0;
   i++;
   dula=1;
   P0=table[i];
   dula=0;
   wela=1;
   P0=0xfe;
   wela=0;
   delay(200);
   if(i==5)
   {
    dula=1;
    P0=table[num];
    dula=0;
    wela=1;
    P0=0;
    wela=0;
    while(1);
   }
   
  }
    }
}

void delay(uint z)
{
 uint x,y;
 for(x=z;x>0;x--)
  for(y=110;y>0;y--);
}

 

流水灯每0.5秒移动一位,同时蜂鸣器响,数码管计数,当数码管为9时,清零;十位数字显示,直到十位数码管显示5后,令全部数码管显示0,并停止在此时状态。

程序有什么问题,大家可以提出,欢迎提问,欢迎指点,欢迎讨论。

专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词:

相关推荐

鼠标电路原理图

资源下载 2007-12-30

钝化技术减少了钙钛矿太阳能电池的缺陷

电子科技大学--嵌入式系统应用开发技术34

USB转并口、串口电路图(ch341).

在铁电RAM内存中执行计算

U盘电路原理图

资源下载 2007-12-30

电子科技大学--嵌入式系统应用开发技术30

搜索引擎后的下一个战场,广告服务商已尝试在 AI 回复中植入广告

电子科技大学--嵌入式系统应用开发技术33

利用皮肤的电导率来追踪身体和脑力活动期间的汗液流失

Microsoft推出可在常规CPU上运行的AI模型

南芯科技推出车规级高速CAN/CAN FD协议收发器

AI数据中心建设热火朝天,科技巨头却集体踩刹车

外媒:苹果折叠屏新机为何注定先在\"中国制造\"

英特尔希望借力初创公司重塑AI产品

若要继续参与竞争,外国汽车制造商需要跟上“中国速度”

串口转红外的电路

一卡多号读卡器电路原理图

电子科技大学--嵌入式系统应用开发技术32

电子科技大学--嵌入式系统应用开发技术31

更多 培训课堂
更多 焦点
更多 视频

技术专区