久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2166|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

想請問下每行程序的意思是什么?可不可以簡要回答下。

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:98827 發(fā)表于 2015-12-10 20:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit key1=P3^0;
sbit key2=P3^1;
sbit key3=P3^2;
sbit key4=P3^3;
sbit wei1=P2^4;
sbit wei2=P2^5;
sbit wei3=P2^6;
sbit wei4=P2^7;
sbit dp=P0^7;

bit flag_start,flag_mode,flag_5sec;     
uchar time_data1[11],time_data2[11];   
uchar temp,temp1,aa,aa1,shi,ge,fen,hao,num,i,j;
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f};      //共陰數(shù)碼管編碼

void display_process();       //聲明處理函數(shù)   
void key();                   //聲明鍵掃描函數(shù)
void display(uchar shi,uchar ge,uchar fen,uchar hao);  //聲明顯示子函數(shù)
void delay(uint z);           //聲明延時子函數(shù)
void init();                  //聲明初始化函數(shù)

void main()     //主函數(shù)
{
     init();            //調(diào)用初始化子程序
     while(1)
     {
         key();
         display_process();
         display(shi,ge,fen,hao);
     }
}
void display(uchar shi,uchar ge,uchar fen,uchar hao)   //顯示子程序
{
    P0=table[shi];
    wei1=0;
    delay(1);
    wei1=1;

    P0=table[ge];
    dp=1;
    wei2=0;
    delay(1);
    wei2=1;

    P0=table[fen];
    wei3=0;
    delay(1);
    wei3=1;

    P0=table[hao];
    wei4=0;
    delay(1);
    wei4=1;
}
void init()     //初始化子函數(shù)
{
    temp=0;
    TMOD=0x01;
    TH0=(65536-50000)/256;
    TL0=(65536-50000)%256;
    EA=1;
    ET0=1;
}
void timer0() interrupt 1    //中斷服務(wù)
{
    TH0=(65536-10000)/256;     //重新賦初值
    TL0=(65536-10000)%256;
    aa++;                      //中斷一次變量aa加1
    if(aa==100)                //中斷100次后,定時時間為100*10ms=1s
        {                        //將temp的值加1
        aa=0;                 
        temp++;
        if(temp==100)            //秒表到達(dá)100s后回零
        temp=0;
        }
}
void delay(uint z)          //延時子函數(shù)
{
    uint x,y;
    for(x=z;x>0;x--)
       for(y=110;y>0;y--);
}
void key()       //按鍵定義
{
   if(key1==0)
         {
               delay(5);
               if(key1==0)
               {
                   while(!key1);
                     flag_start=~flag_start;
                     if(flag_start==1)
                         TR0=1;
                     else
                         TR0=0;
                 }
         }
         if(key2==0)
         {
             delay(5);
             if(key2==0)
             {
                 while(!key2);
                 if(flag_mode==0||i!=0)
                 {
                     shi=0;         //關(guān)閉定時器
                     ge=0;
                     fen=0;
                     hao=0;
                     aa=0;
                     temp=0;
                     TR0=0;
                     i=0;
                     num=0;
                     for(j=0;j<=10;j++)
                     {
                         time_data1[j]=0;
                         time_data2[j]=0;
                     }
                 }
                 else
                 {
                     num++;
                     if(num==11)
                     num=1;
                     aa1=aa;
                     temp1=temp;
                     time_data1[num]=aa1;
                     time_data2[num]=temp1;
                     flag_5sec=0;
                 }
          }
        }
    if(key3==0)
        {
            delay(5);
            if(key3==0)
            {
                while(!key3);
                flag_mode=!flag_mode;
            shi=0;         //關(guān)閉定時器
                     ge=0;
                     fen=0;
                     hao=0;
                     aa=0;
                     temp=0;
                     TR0=0;
                     i=0;
                     num=0;
            }
        }
        if(key4==0)
        {
            delay(5);
            if(key4==0)
            {
                while(!key4);
                i++;
                TR0=0;
                if(i==11)
                i=1;
            }
        }
}
void display_process()
{
      shi=temp%100/10;      //正常走時
        ge=temp%10;
        fen=aa%100/10;
        hao=aa%10;
      if(flag_mode==1&&num!=0&&flag_5sec==0)
        {
            fen=time_data1[num]/10;         
            hao=time_data1[num]%10;
            shi=time_data2[num]/10;
            ge=time_data2[num]%10;
            if(temp-time_data2[num]==5)
                flag_5sec=~flag_5sec;
        }
        if(i!=0)
        {
            shi=time_data2[i]/10;
            ge=time_data2[i]%10;
            fen=time_data1[i]/10;
            hao=time_data1[i]%10;
        }
}









分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:102817 發(fā)表于 2016-1-11 23:29 | 只看該作者
這還要每句解釋啊
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲高清在线 | 久久午夜剧场 | 久久爆操 | 亚洲最大的成人网 | 日韩精品在线看 | 国产精品一区二区三区在线 | 青青草这里只有精品 | 欧美精品一区在线观看 | 国产一区二区三区免费观看视频 | 精品日韩欧美一区二区 | 精品一区二区三区四区五区 | 中文字幕在线视频一区二区三区 | 99亚洲 | 麻豆精品国产91久久久久久 | 欧美精品在线免费观看 | 国产成人一区二区三区 | 韩日在线 | wwwxxx日本在线观看 | 福利视频网 | 免费三级网 | 在线观看免费黄色片 | 日韩欧美在 | 亚洲成人免费av | 免费a级毛片在线播放 | 国产原创在线观看 | 中国一级大黄大片 | 日韩三级 | 亚洲综合小视频 | 亚洲情侣视频 | 久久久久久久一区二区 | 欧美精品1区2区3区 免费黄篇 | 国产精品免费一区二区三区四区 | 成av在线| 91国产在线视频在线 | 天堂国产 | 一区二区三区在线 | 精品国产乱码久久久久久丨区2区 | 在线小视频| 午夜电影网 | 中文字幕乱码亚洲精品一区 | 亚洲精品成人网 |