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

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

用單片機制作簡單計算器的源程序

作者:佚名   來源:本站原創   點擊數:  更新時間:2010年06月18日   【字體:
發一個用51單片機做的簡單計算器的程序.

/**********************按鍵處理*******************/

void KeyDeal(unsigned char Key)

{  //unsigned char n,p;

   if(Key!=0)     //判斷 有無按鍵按下。

 {

   

                      switch(Key)

                      {  //以下定義0~9的數字鍵。

                      case 0x11: K=0; break;

                      case 0x21: K=1; break;

                      case 0x41: K=2; break;

                      case 0x81: K=3; break;

                      case 0x12: K=4; break;

                      case 0x22: K=5; break;

                      case 0x42: K=6; break;

                      case 0x82: K=7; break;

                      case 0x14: K=8; break;

                      case 0x24: K=9; break;

                   //以下+。-,*,/ 鍵

                      case 0x44: K=10; break;  //加

                      case 0x84: K=11; break;  //減

                      case 0x18: K=12; break;  //乘

                      case 0x28: K=13; break;  //除

                      case 0x48: K=14; break;  //等于

                      case 0x88: K=15; break;  //清除

                      default: break;

                      }

          if(K<10)  //數字鍵

           {           

                   d[2]=d[1];

            d[1]=d[0];

                   d[0]=K;

                   c[2]=c[1];

            c[1]=c[0];

                   c[0]=b[K];

      //以上數組數據賦值是保證數字按鍵入順序移位。

           }

           if(K==10)  //加

           { m=d[2]*100+d[1]*10+d[0],d[0]=0,d[1]=0,d[2]=0,d[3]=0,d[4]=0;p=1;

           c[0]=0xc0, c[1]=0xc0, c[2]=0xc0, c[3]=0xc0, c[4]=0xc0; }

          if(K==11)//減

           { m=d[2]*100+d[1]*10+d[0],d[0]=0,d[1]=0,d[2]=0,d[3]=0,d[4]=0;p=2;

          c[0]=0xc0, c[1]=0xc0, c[2]=0xc0, c[3]=0xc0, c[4]=0xc0;} 

           if(K==12)//乘

           { m=d[2]*100+d[1]*10+d[0],d[0]=0,d[1]=0,d[2]=0,d[3]=0,d[4]=0;p=3;

          c[0]=0xc0, c[1]=0xc0, c[2]=0xc0, c[3]=0xc0, c[4]=0xc0;}

           if(K==13)//除

           { m=d[2]*100+d[1]*10+d[0],d[0]=0,d[1]=0,d[2]=0,d[3]=0,d[4]=0;p=4;

          c[0]=0xc0, c[1]=0xc0, c[2]=0xc0, c[3]=0xc0, c[4]=0xc0;}

         if(K==14)   //此處是按  =鍵  

           { n=d[2]*100+d[1]*10+d[0];            

          if (p==1) shu=m+n;

           if (p==2) shu=m-n;   

          if (p==3) shu=m*n; 

          if (p==4) shu=m/n;

        c[4]=b[shu/10000];         

        c[3]=b[shu%10000/1000];

        c[2]=b[shu%1000/100];

        c[1]=b[shu%100/10];

        c[0]=b[shu%10];   //C[]存的是  計算結果  。

           }

       if(K==15) // 此處是按  清除鍵  

       {d[0]=0,d[1]=0,d[2]=0,d[3]=0,d[4]=0;

       shu=0;

        c[4]=b[shu/10000];         

        c[3]=b[shu%10000/1000];

        c[2]=b[shu%1000/100];

        c[1]=b[shu%100/10];

        c[0]=b[shu%10]; }

     

}

}

void main()

{ 

      while(1)

   {

     Key = Keycan();//鍵盤掃描獲取一次按鍵的編碼0x11-0x88

     KeyDeal(Key);  //對掃描到的鍵盤編碼進行轉換處理,變成數據鍵盤0-

          display();

   }

關閉窗口

相關文章

主站蜘蛛池模板: 久久精品国产一区二区三区 | 精品国产一区二区三区免费 | 中文字字幕在线中文乱码范文 | 秋霞国产 | 黄色一级免费看 | 成人免费大片黄在线播放 | 久久精品一区二区三区四区 | 欧美成人精品欧美一级 | 日韩精品一区二区三区中文在线 | 国产三区精品 | 狠狠的干狠狠的操 | 在线第一页 | 亚洲区一区二 | 日本一区精品 | 久久精品欧美一区二区三区不卡 | 国产精品揄拍一区二区 | 久久精品视频12 | 毛片免费观看视频 | 亚洲九色| 久久久久久九九九九九九 | 丁香一区二区 | 日本a v在线播放 | 9191在线播放 | 欧美专区在线观看 | 亚洲精品视频在线观看视频 | 日本在线免费看最新的电影 | 91精品久久久久久久久久入口 | 久久久久久免费毛片精品 | 久久99蜜桃综合影院免费观看 | 欧美日韩国产一区二区三区 | 一区日韩| 国产精品亚洲第一区在线暖暖韩国 | 国产99在线 | 欧美 | 天天操网 | 免费观看黄a一级视频 | 天天爽夜夜骑 | 欧美性乱 | 麻豆一区一区三区四区 | 久久国产精品网站 | 国产91色在线 | 亚洲 | 91影片 |