• <rp id="wfxtb"><acronym id="wfxtb"></acronym></rp><em id="wfxtb"></em><dd id="wfxtb"><big id="wfxtb"><video id="wfxtb"></video></big></dd>
  • <rp id="wfxtb"></rp>

    <mark id="wfxtb"><center id="wfxtb"></center></mark>

      <rp id="wfxtb"><span id="wfxtb"><u id="wfxtb"></u></span></rp>

      <rp id="wfxtb"><object id="wfxtb"></object></rp>

      注意:訪問本站需要Cookie和JavaScript支持!請設置您的瀏覽器! 打開購物車 查看留言付款方式聯系我們
      初中電子 單片機教材一 單片機教材二
      搜索上次看見的商品或文章:
      商品名、介紹 文章名、內容
      首頁 電子入門 學單片機 免費資源 下載中心 商品列表 象棋在線 在線繪圖 加盟五一 加入收藏 設為首頁
      本站推薦:
      12. 可預置可逆4位計數器
      文章長度[] 加入時間[2008/5/30] 更新時間[2025/5/25 10:17:59] 級別[0] [評論] [收藏]
       
      1.  實驗任務
      利用AT89S51單片機的P1.0-P1.3接四個發光二極管L1-L4,用來指示當前計數的數據;用P1.4-P1.7作為預置數據的輸入端,接四個撥動開關K1-K4,用P3.6/WR和P3.7/RD端口接兩個輕觸開關,用來作加計數和減計數開關。具體的電路原理圖如下圖所示
      2.  電路原理圖
      圖4.12.1
      3.  系統板上硬件連線
      (1.       把“單片機系統”區域中的P1.0-P1.3端口用8芯排線連接到“八路發光二極管指示模塊”區域中的L1-L4上;要求:P1.0對應著L1,P1.1對應著L2,P1.2對應著L3,P1.3對應著L4;
      (2.       把“單片機系統”區域中的P3.0/RXD,P3.1/TXD,P3.2/INT0,P3.3/INT1用導線連接到“四路撥動開關”區域中的K1-K4上;
      (3.       把“單片機系統”區域中的P3.6/WR,P3.7/RD用導線連接到“獨立式鍵盤”區域中的SP1和SP2上;
      4.  程序設計內容
      (1.       兩個獨立式按鍵識別的處理過程;
      (2.       預置初值讀取的問題
      (3.       LED輸出指示
      5.  程序框圖
       
      圖4.12.2
      6.  匯編源程序
      COUNT              EQU 30H
                                  ORG 00H
      START:               MOV A,P3
                                 ANL A,#0FH
                                  MOV COUNT,A
                                  MOV P1,A
      SK2:           JB P3.6,SK1
                                 LCALL DELY10MS
                                  JB P3.6,SK1
                                  INC COUNT
                                 MOV A,COUNT
                                  CJNE A,#16,NEXT
                                 MOV A,P3
                                  ANL A,#0FH
                                  MOV COUNT,A
      NEXT:                MOV P1,A
      WAIT:                 JNB P3.6,WAIT
                                 LJMP SK2
      SK1:          JB P3.7,SK2
                                  LCALL DELY10MS
                                  JB P3.7,SK2
                                 DEC COUNT
                                  MOV A,COUNT
                                  CJNE A,#0FFH,NEX
                                 MOV A,P3
                                  ANL A,#0FH
                                  MOV COUNT,A
      NEX:                   MOV P1,A
      WAIT2:               JNB P3.7,WAIT2
                                 LJMP SK2
      DELY10MS:       MOV R6,#20
                                  MOV R7,#248
      D1:                      DJNZ R7,$
                                  DJNZ R6,D1
                                 RET
                                  END
      7.  C語言源程序
      #include <AT89X51.H>
      unsigned char curcount;
      void delay10ms(void)
      {
        unsigned char i,j;
        for(i=20;i>0;i--)
        for(j=248;j>0;j--);
      }
      void main(void)
      {
        curcount=P3 & 0x0f;
        P1=~curcount;
        while(1)
          {
            if(P3_6==0)
              {
                delay10ms();
                if(P3_6==0)
                  {
                    if(curcount>=15)
                      {
                        curcount=15;
                      }
                      else
                        {
                          curcount++;
                        }
                     P1=~curcount;
                     while(P3_6==0);
                  }
              }
            if(P3_7==0)
              {
                delay10ms();
                if(P3_7==0)
                  {
                    if(curcount<=0)
                      {
                        curcount=0;
                      }
                      else
                        {
                          curcount--;
                        }
                     P1=~curcount;
                     while(P3_7==0);
                  }
              }
          }
      }
      1、 本站不保證以上觀點正確,就算是本站原創作品,本站也不保證內容正確。
      2、如果您擁有本文版權,并且不想在本站轉載,請書面通知本站立即刪除并且向您公開道歉! 以上可能是本站收集或者轉載的文章,本站可能沒有文章中的元件或產品,如果您需要類似的商品請 點這里查看商品列表!
      本站協議。 版權信息。 關于我們。 本站地圖。 營業執照。 發票說明。 付款方式。 聯系方式
      深圳市寶安區西鄉五壹電子商行——粵ICP備16073394號-1;地址:深圳西鄉河西四坊183號;郵編:518102
      E-mail:51dz$163.com($改為@);Tel:(0755)27947428
      工作時間:9:30-12:00和13:30-17:30和18:30-20:30,無人接聽時可以再打手機13537585389
      91嫩草黄片动漫版