<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 用51單片機(jī)做的小旋磁美容儀

          用51單片機(jī)做的小旋磁美容儀

          作者: 時(shí)間:2012-12-01 來源:網(wǎng)絡(luò) 收藏
          給大家發(fā)一個(gè)用單片機(jī)做的小的c語言代碼。99分鐘可調(diào)倒計(jì)顯示控制關(guān)機(jī)設(shè)置,同時(shí),有蜂鳴器倒數(shù)十秒蜂叫及按鍵時(shí)鳴叫,時(shí)間里有小數(shù)點(diǎn)按一秒周期閃爍的程序控制,按鍵為P1端中的P1。0及P1。1做為行線,P1。2~P1。5為列線,按鍵分別為開關(guān)機(jī),時(shí)間加減,占空比調(diào)節(jié)加減鍵兩組共四個(gè)按鍵,有兩路實(shí)際輸出占空比端口,標(biāo)號(hào)為:hotout 和 xuanout 兩個(gè)引腳,為數(shù)碼管顯示檔位狀態(tài),控制時(shí)以外部硬件低電平時(shí)間長(zhǎng)使輸出功率大的基準(zhǔn)而進(jìn)行調(diào)節(jié),0檔時(shí)輸出為高電平,8檔(最高檔)時(shí)輸出為低電平低,其它從1~7檔時(shí),以占空比為準(zhǔn)。且每一檔的增量不是線性的,只為配合外部硬件的啟動(dòng)電平要求,低幾檔導(dǎo)通量較大些。本程序?yàn)閱纹瑱C(jī)網(wǎng)http://www.51hei.com會(huì)員“狼圖騰”嘔心瀝血的的原創(chuàng)作品,所有的c語言代碼都已經(jīng)測(cè)試通過,并且做成了成品投入到了實(shí)際的使用中,希望能對(duì)大家有所幫助有問題可聯(lián)系作者幫忙處理的。
          #include reg51.H>
          #define uint unsigned int
          #define uchar unsigned char
          #define duan P0
          #define ton 2
          #define t 20
          uchar code tab[]={0x09,0x5f,0x2a,0x1a,0x5c,0x98,0x88,0x1f,0x08,0x18};
          sbit xsd_display=P0^3;//小數(shù)點(diǎn)的位顯示,根據(jù)實(shí)際情況決定
          sbit shila=P2^4;
          sbit gela=P2^5;
          sbit hotla=P2^6;
          sbit xuanla=P2^7;
          sbit hotout=P2^0;
          sbit xuanout=P2^1;
          sbit fmqbit=P2^2;
          bit openbit,xsd;//開關(guān)機(jī)、小數(shù)點(diǎn)、加熱、旋轉(zhuǎn)標(biāo)志位
          uchar time; //分鐘值
          uint d; //計(jì)分鐘變量
          bit fmq;
          uchar hot,hot1,hotoff,hotoff1,hotled; //加熱波形處理相關(guān)變量
          uchar xuan,xuan1,xuanoff,xuanoff1,xuanled; //旋轉(zhuǎn)相關(guān)變量
          bit biaobit0,biaobit1,biaobit2,biaobit3;// 控制波形占空時(shí)的循環(huán)條件標(biāo)志位//以下為延時(shí)子程序
          void delay(uint a)
          {
          uchar c,d;
          for(c=a;c>0;c--)
          for(d=80;d>0;d--);
          }
          //以下為顯示函數(shù)
          void display(uchar x,uchar y,uchar k)
          {
          uchar ge,shi; //對(duì)傳遞時(shí)間函數(shù)進(jìn)行分解
          shi=x/10;
          ge=x%10; duan=tab[shi];
          shila=0;
          delay(2);
          shila=1; duan=tab[ge];
          gela=0;
          xsd_display=xsd;
          delay(2);
          gela=1; duan=tab[y];
          hotla=0;
          delay(2);
          hotla=1; duan=tab[k];
          xuanla=0;
          delay(2);
          xuanla=1;// duan_display=0xff;
          }//以下為變量改變處理程序
          void bianlian(uchar xy)
          {
          switch(xy)
          {
          case 2: d=0; //有按鍵按動(dòng)時(shí)即使計(jì)數(shù)值初始為0
          if(time!=99)
          {
          time++;
          }
          break; case 3: d=0; //有按鍵按動(dòng)時(shí)即使計(jì)數(shù)值初始為0
          if(time!=0)
          {
          time--;
          }
          break; case 4: if(hotled!=8)
          {
          hotled++;
          if(hotled==8)
          biaobit0=1;
          else
          biaobit0=0;
          if(hotled==0)
          biaobit1=1;
          else
          biaobit1=0;
          if(hotled5)
          {
          hot=hot+3;
          }
          else
          {
          hot=hot+ton;
          } hot1=hot;
          hotoff=t-hot;
          hotoff1=hotoff;
          }
          break; case 5:if(hotled!=0)
          {
          hotled--; if(hotled==8)
          biaobit0=1;
          else
          biaobit0=0; if(hotled==0)
          biaobit1=1;
          else
          biaobit1=0; if(hotled4)
          {
          hot=hot-3;
          }
          else
          {
          hot=hot-ton;
          } hot1=hot;
          hotoff=t-hot;
          hotoff1=hotoff;
          }
          break;
          case 6:
          if(xuanled!=8)
          {
          xuanled++; if(xuanled==8)
          biaobit2=1;
          else
          biaobit2=0;
          if(xuanled==0)
          biaobit3=1;
          else
          biaobit3=0; if(xuanled==1)
          xuan=xuan+6;
          else
          xuan=xuan+ton; xuan1=xuan;
          xuanoff=t-xuan;
          xuanoff1=xuanoff;
          }
          break;
          case 7:
          if(xuanled!=0)
          { if(xuanled==1)
          xuan=xuan-6;
          else
          xuan=xuan-ton; xuan1=xuan;
          xuanoff=t-xuan;
          xuanoff1=xuanoff;
          xuanled--; if(xuanled==8)
          biaobit2=1;
          else
          biaobit2=0;
          if(xuanled==0)
          biaobit3=1;
          else
          biaobit3=0; }
          default:break;
          }
          }
          蜂鳴器相關(guān)文章:蜂鳴器原理

          上一頁(yè) 1 2 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();