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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > c51單片機(jī)第二課筆記

          c51單片機(jī)第二課筆記

          作者: 時(shí)間:2016-11-24 來源:網(wǎng)絡(luò) 收藏
          1震蕩周期:就是晶振震蕩一次所用的時(shí)間。也叫做時(shí)鐘周期
          機(jī)器周期:單片機(jī)完成一次獨(dú)立的操作需要的時(shí)間。是震蕩周期的12倍。
          指令周期:cpu完成一次完整的操作需要的所有時(shí)間,有單周期指令,雙周期指令等。
          2 用循環(huán)左移,循環(huán)右移指令 實(shí)現(xiàn)流水燈。
          int temp;
          temp=0xfe;
          P1=temp;
          temp=_crol_(temp,1);
          有關(guān)循環(huán)指令包含在intrins.h頭文件中。
          3 對(duì)蜂鳴器的操作,類似與對(duì)led的操作,對(duì)相應(yīng)端口輸出第電平。關(guān)于蜂鳴器的數(shù)據(jù)有待補(bǔ)充。
          4 共陰極led顯示器16進(jìn)制編碼表
          0x3f,0x06,0x5b,0x4f,
          0x66,0x6d,0x7d,0x07,
          0x7f,0x6f,0x77,0x7c,
          0x39,0x5e,0x79,0x71
          從左到有,分別為 0到f的編碼。
          5led數(shù)碼管的位選,段選。用2個(gè)鎖存器配合,實(shí)現(xiàn)6個(gè)led數(shù)碼管。先鎖存位選信號(hào)再鎖存段選信號(hào)。
          具體操作。 打開鎖存器1
          輸出位選信號(hào)。
          關(guān)閉鎖存器1
          打開鎖存器2
          輸出段選信號(hào)。
          關(guān)閉鎖存器。
          具體例程。
          #include
          sbit dula=P2^6;
          sbit wela=P2^7;

          void main()
          {
          wela=1;
          P0=0xc0;
          wela=0;
          dula=1;
          P0=0x06;
          dula=0;
          while(1);
          }


          6鎖存器的真值表。
          7中斷
          與中斷有關(guān)的幾個(gè)寄存器。
          A IE中斷允許控制寄存器。其中包括EA EX0 EX1 ET0 ET1 ES
          EA(IE.7)CPU中斷運(yùn)行總控制位。
          ES(IE.5)串行口中斷允許控制位。
          ET1和ET0(IE.3,IE.1)定時(shí)器1和定時(shí)器0中斷允許控制位。
          EX1和EX0(IE.2,IE.0)外部中斷1和外部中斷0允許控制位。
          8051采用兩級(jí)中斷控制方法。比如要開啟定時(shí)器0的中斷 要分別 在EA 和 ET0 兩位置1.
          B TCON 外部中斷0,1 定時(shí)器0,1終端控制寄存器。
          TCON包括 TF1, TR1, TF0, TR0, IE1, IT1, IE0, IT0
          TF1,TF0(TCON7,TCON5)定時(shí)器T1,T0的計(jì)數(shù)溢出標(biāo)志。
          IE1,IE0(TCON,3,TCON.1)外部中斷1,0的中斷請(qǐng)求標(biāo)志位
          以上4位 由硬件檢測(cè)到中斷信號(hào)后自動(dòng)置1.
          IT1,IT0(TCON,2,TCON.0)外部中斷信號(hào)的觸發(fā)方式選擇位
          為0時(shí),是低電平觸發(fā) 為1時(shí),是下降沿脈沖觸發(fā)方式。
          C IP中斷優(yōu)先級(jí)控制寄存器。
          8c語言中中斷程序的編寫
          格式 void 函數(shù)名() interrupt 中斷編碼{函數(shù)體}
          其中 中斷編碼分別為
          外部中斷0 0
          定時(shí)器0 1
          外部中斷1 2
          定時(shí)器1 3
          串口發(fā)送接收 4
          中斷函數(shù)不用事先聲明。編寫中斷函數(shù)要注意開中斷。
          9 定時(shí)器及相關(guān)寄存器
          定時(shí)器的工作原理 16位的加一計(jì)數(shù)器。
          相關(guān)寄存器
          T0,T1的控制寄存器TCON
          TF1,TF0 (TCON7,TCON5)定時(shí)器T1,T0的計(jì)數(shù)溢出標(biāo)志。
          TR1,TR0(CON6,TCON4)定時(shí)器運(yùn)行控制器
          0時(shí)停止工作,1時(shí)啟動(dòng)。
          T0,T1的方式控制寄存器TMOD
          TMOD高4位控制T1 低4位控制T0
          其中 GATE 門控位 等于0時(shí)
          等于1時(shí)
          C/T 定時(shí)或計(jì)數(shù)功能選擇位 等于0時(shí) 定時(shí)功能,計(jì)數(shù)脈沖由內(nèi)部提供
          等于1時(shí) 計(jì)數(shù)功能,對(duì)外部事件(脈沖)進(jìn)行計(jì)數(shù)
          M1和M0:T1和T0操作方式選擇位

          計(jì)數(shù)初值與計(jì)數(shù)個(gè)數(shù)的關(guān)系 計(jì)數(shù)個(gè)數(shù)=2的16次方-計(jì)數(shù)初值.
          10定時(shí)器的應(yīng)用.

          初始化程序應(yīng)完成如下工作:
          §對(duì)TMOD賦值,以確定T0和T1的工作方式。
          §計(jì)算初值,并將其寫入TH0、TL0或TH1、TL1。
          §中斷方式時(shí),則對(duì)IE賦值,開放中斷。
          啟動(dòng)定時(shí)器


          TMOD=0x01;//設(shè)置定時(shí)器0的工作方式1
          TH0=(65536-50000)/256;
          TL0=(65536-50000)%6;
          EA=1; //開總中斷
          ET0=1;//開定時(shí)器0中斷
          TR0=1;//啟動(dòng)定時(shí)器0


          關(guān)鍵詞: c51單片

          評(píng)論


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