<acronym id="xonnx"></acronym>
      <td id="xonnx"></td>
    1. <pre id="xonnx"></pre>

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

        8255單獨控制步進電機

        作者:huqin   來源:本站原創   點擊數:  更新時間:2014年04月30日   【字體:

         

         
        ;單獨用8255驅動步進電機轉動,A口輸入控制信號00、01、11,所對應的轉速越來越快,B口輸出控制步進電機轉動
         ;實現轉速調整是通過調整延遲參數來實現的
         CODE    SEGMENT
          ASSUME CS:CODE
         
         START:  PUSH CS
          POP DS ;數據段和代碼段共用一個段地址
          JMP MAIN
          DAT DW 0AFFH  ;定義延遲參數DAT
          NUM DB 08H,04H,02H,01H ;定義控制步進電機的循環信號
         
         MAIN:   MOV DX,021BH; 初始化8255,A口輸入,B口輸出
          MOV AL,90H
          OUT DX,AL
         
          MOV BX,OFFSET NUM;取循環信號的偏移地址
          MOV SI,0         ;控制計數器歸零
         
         ;------步進電機控制信號循環-----
         LOP:    MOV DX,219H
          MOV AL,[BX+SI]
          OUT DX,AL
          INC SI
          CMP SI,04H
          JNZ NEXT
          MOV SI,0
         
         ;-------檢測A口輸入信號-------
         NEXT:   MOV DX,218H
          IN AL,DX
          CMP AL,00H
          JZ NEXT1     ;若信號為00,則轉至NEXT1調整延遲參數DAT
          CMP AL,01H
          JZ NEXT2     ;若信號為01,則轉至NEXT2調整延遲參數DAT
          CMP AL,03H
          JZ NEXT3     ;若信號為11,則轉至NEXT3調整延遲參數DAT
         
          MOV CX,DAT
          LOOP $
          JMP LOP
         ;------控制信號循環結束-----
         
         NEXT1:  MOV DAT,0AFFH
          JMP LOP
         NEXT2:  MOV DAT,08FFH
          JMP LOP
         NEXT3:  MOV DAT,05FFH
          JMP LOP
         CODE    ENDS
          END START
         
         
        關閉窗口

        相關文章

        欧美性色欧美精品视频,99热这里只有精品mp4,日韩高清亚洲日韩精品一区二区,2020国自产拍精品高潮