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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 51單片機的脈沖控制器

          51單片機的脈沖控制器

          作者: 時間:2016-11-24 來源:網(wǎng)絡 收藏
          這個是在前面那個定時器的基礎上改過來的。
          脈沖控制器
          輸出4個脈沖,輸出方式:
          先輸出P0 50ms,停止100ms后,輸出P1 50ms,停止100ms后。。。
          P3輸出完成后,停止10秒,之后循環(huán)
          由于時間比較規(guī)整,可以在中斷里判斷輸出:
          第一個到時,輸出P0, 第二個到時,關(guān)閉P0 第三個到時,無動作
          第四個到時,輸出P1, 第五個到時,關(guān)閉P1 第六個到時,無動作
          第七個到時,輸出P2, 第八個到時,關(guān)閉P2 第九個到時,無動作
          第十個到時,輸出P3, 第11個到時,關(guān)閉P3
          休息200個周期,第211個到時,復位i
          case i=1,4,7,10,輸出; 2,5,8,11,關(guān)閉所有輸出
          50ms,晶振為11.0592,初值為0x4C00
          #include "reg51.h"
          sbit P0_0 = P0^0;
          sbit P0_1 = P0^1;
          sbit P0_2 = P0^2;
          sbit P0_3 = P0^3;
          char i = 0;
          void main()
          {
          TMOD = 0x11; //T0方式1
          TL0 = 0x0; //TL0的初值
          TH0 = 0x4C; //TH0的初值
          ET0 = 1; //定時器1的中斷允許
          EA = 1; //開中斷
          TF0 = 0;
          TR0 = 1;
          while(1);
          }
          void Int_T0() interrupt 1 using 2
          {
          TL0 = 0x00; //重新裝入初值
          TH0 = 0x4C;
          i++;
          switch (i)
          {
          case 1: P0_0 = 0; break;
          case 2: P0_0 = 1; break;
          case 4: P0_1 = 0; break;
          case 5: P0_1 = 1; break;
          case 7: P0_2 = 0; break;
          case 8: P0_2 = 1; break;
          case 10: P0_3 = 0; break;
          case 11: P0_3 = 1; break;
          case 211: i = 0; break;
          }
          }



          關(guān)鍵詞: 51單片機脈沖控制

          評論


          技術(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); })();