欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

跑秒程序-數碼管顯示

作者:佚名   來源:本站原創   點擊數:  更新時間:2009年10月27日   【字體:

/*
程序效果:跑秒,同時顯示四位數碼管
版權所有:http://www.raoushi.com 轉載請保留.
P1控制數碼管的位 P2控制段
注意:如果無法在keil里編譯,請刪除每一行的所有前導空白,
*/
#include<reg52.h>  //頭文件
#define uchar unsigned char  //宏定義
#define uint  unsigned int
void display();   //函數聲明
uchar code table[]={0x3f,0x06,0x5b,//數碼管顯示的數值
0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void delay(uchar x)   //延時函數,時間我也不會算啊
{
   uchar i,j;
   for(i=x;i>0;i--)
      for(j=110;j>0;j--);
}
void main()    //主函數
{
   while(1)
   {
      display(); //顯示子函數
   }
}
void display()
{
   uchar i,j,k,l;  //定義局部變量
   P1=0xff;    //點亮最右邊的數碼管
   P2=table[i];  //送數值,顯示各位
   delay(10);   //延時
   i++;   //自加一,為下次顯示作準本
   if(i==10)
   {
      i=0;   //i值加滿10,清零
      j++;
      P1=0xfe; //點亮下一個數碼管
      P2=table[j];
      delay(10);
   }
   if(j==10)
      {
      j=0;
      k++;
      P1=0xfd;
      P2=table[k];
      delay(10);
   }
   if(k==10)
   {
      k=0;
      l++;
      P1=0xfc;
      P2=table[l];
      delay(10);
      if(l==10)
       l=0;
   }
 //以下語句是不可以缺少的
   P1=0xfe; //顯示十位
   P2=table[j];
   delay(10);

   P1=0xfd;   //顯示百位
   P2=table[k];
   delay(10);

   P1=0xfc; //顯示千位
   P2=table[l];
   delay(10);
}
注意:如果無法在keil里編譯,請刪除每一行的所有前導空白,

關閉窗口

相關文章