⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wanzheng.asm.txt

📁 采用8086系统实现智能电饭煲
💻 TXT
字号:
CODE SEGMENT
ASSUME CS:CODE
ORG 1000H
CONTPORT EQU 00DFH
DATAPORT EQU 00DEH
INTPORT1 EQU 0020H
INTPORT2 EQU 0021H
INTQ3   EQU INTREEUP3
IOCONPT  EQU 0073H
IOCPT   EQU 0072H
IOBPT   EQU 0071H
TCONTRO  EQU 004BH
TCON2   EQU 004AH
ADPORT EQU 0060H

START:JMP M
      SEGPT    DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H
      B3       DB 0H
      B2       DB 0H
      B1       DB 0H
      SUM      DB 0H
      F1       DB 0H
M:       MOV AL,89H                            ;INIT 8255
         MOV DX,IOCONPT
         OUT DX,AL
         MOV DX,IOBPT
         MOV AL,0FFH
         OUT DX,AL
GO:      MOV DX,IOCPT
         IN AL,DX
         CMP F1,1
         JZ  N
         TEST AL,10H
         JNZ INPUT
N:       IN AL,DX
         AND AL,01H
         JZ GO
         CALL XIANG

WORK:     MOV DX,CONTPORT
          MOV AL,0AFH                         ; OFF LED
          OUT DX,AL
KS:       MOV AL,0FFH
          MOV DX,IOBPT
          OUT DX,AL
          MOV DX,IOCPT
          IN AL,DX
          MOV CL,AL
          MOV AL,0FEH
          MOV DX,IOBPT
          OUT DX,AL
          MOV AL,CL
          TEST AL,02H
          JNZ KS2
          TEST AL,04H
          JNZ KS3
          TEST AL,08H
          JNZ KS4
          JMP KS
KS2:       MOV AL,0FCH
          MOV DX,IOBPT
          OUT DX,AL
          JMP KBBB
KS3:       MOV AL,0FAH
          MOV DX,IOBPT
          OUT DX,AL
          JMP KBBB
KS4:       MOV AL,0F6H
          MOV DX,IOBPT
          OUT DX,AL



          JMP KBBB
KBBB:
           MOV AX,00
          MOV DX,ADPORT
          OUT DX,AL
          MOV CX,0FFFFH
KLOOP1:    LOOP KLOOP1
          MOV DX,ADPORT
          IN AL,DX

          CMP AL,050H
          JA KABOVE
          JMP KS
KABOVE:    MOV AL,0EEH
          MOV DX,IOBPT
          OUT DX,AL
          JMP KBBB
          RET
          
          
          
INPUT:   INC F1
         MOV DX, CONTPORT                      ;INPUT AND TIMER
         MOV AL,00H
         OUT DX,AL
         LEA SI,B3
         MOV CX,3
LOOP1:   MOV DX,CONTPORT
         IN AL,DX
         TEST AL,07H
         JZ LOOP1
         MOV AL,40H
         OUT DX,AL
         MOV DX,DATAPORT
         IN AL,DX
         MOV [SI],AL
         INC SI
         LOOP LOOP1
S1:
         MOV DX,CONTPORT
         MOV AL,00H
         OUT DX,AL
         MOV AL,90H
         OUT DX,AL
         MOV CX,3
         DEC SI
LOOP2:   MOV DX,DATAPORT
         MOV AL,[SI]
         DEC SI
         MOV BX,OFFSET SEGPT
         XLAT
         OUT DX,AL
        LOOP  LOOP2
        JMP GO



XIANG:   MOV DX,IOBPT
         MOV AL,0FEH
         OUT DX,AL
         CMP F1,0
         JNZ  YE
         CALL WORK
YE:      MOV AX,0H                          ;WRITE INTREEUP ADDRESS
         MOV ES,AX
     MOV DI,002CH
     LEA AX,INTQ3
     STOSW
     MOV AX,CS
     STOSW
       MOV DX,TCONTRO                     ;INIT 8253
     MOV AL,0B0H
     OUT DX,AL
     MOV DX,TCON2
         MOV AL,10H
         OUT DX,AL
     MOV AL,27H
     OUT DX,AL
      MOV DX,CONTPORT
      MOV AL,0AFH                         ; OFF LED
      OUT DX,AL
      MOV AL,0D1H                         ;XOR RAM FIFO
      OUT DX,AL
      MOV AL,0A0H                          ;ON LED
      OUT DX,AL
      MOV AL,00H                           ;WRITE MODE
      OUT DX,AL
G1:   MOV BX,OFFSET SEGPT
      MOV DX,CONTPORT
      MOV AL,90H
      OUT DX,AL
      MOV CX,0FFH
LL:   LOOP LL
      MOV DX,DATAPORT
      MOV AL,6DH
      OUT DX,AL
      MOV AL,6DH
      OUT DX,AL
      MOV AL,B1
      XLAT
      OUT DX,AL
      MOV AL,B2
      XLAT
      OUT DX,AL
      MOV AL,B3
      XLAT
      OUT DX,AL
      MOV DI,OFFSET SEGPT
      ADD DI,4
G2:   MOV SI,OFFSET SEGPT
      ADD SI,9
MIAO1: MOV AL,80H
      MOV DX,CONTPORT
      OUT DX,AL
      MOV DX,DATAPORT
      MOV AL,[SI]
      OUT DX,AL
      CALL INIT                       ; ONE SECOND INTR
      DEC SI
      CMP SI,1002H
      JNZ MIAO1
      JMP MIAO2
MIAO2: MOV DX,CONTPORT
      MOV AL,81H
      OUT DX,AL
      MOV AL,[DI]
      MOV DX,DATAPORT
      OUT DX,AL
      CMP DI,1002H
      JZ  SHI1
      DEC DI
      JMP G2
SHI1:
      MOV DX,CONTPORT
      MOV AL,82H
      OUT DX,AL
      MOV AL,B1
      MOV BX,OFFSET SEGPT
      XLAT
      MOV DX,DATAPORT
      OUT DX,AL
      CMP B1,0
      JZ RE
      DEC B1
      JMP G1
RE:   MOV B1,9
      MOV DX,CONTPORT
      MOV AL,83H
      OUT DX,AL
      MOV AL,B2
      XLAT
      MOV DX,DATAPORT
      OUT DX,AL
      CMP B2,0
      JZ  LAST
      DEC B2
      JMP G1
LAST: MOV B2,5
      MOV DX,CONTPORT
      MOV AL,84H
      OUT DX,AL
      MOV AL,B3
      XLAT
      MOV DX,DATAPORT
      OUT DX,AL
      CMP B3,0

      JZ  ENDTI

      DEC B3
      JMP G1

INIT:   MOV AL,13H                         ;INIT 8259
     MOV DX,INTPORT1
     OUT DX,AL
     MOV AL,08H
     MOV DX,INTPORT2
     OUT DX,AL
     MOV AL,09H
     OUT DX,AL
     MOV AL,0F7H
     OUT DX,AL
     STI
         MOV SUM,0
WATING:  CMP SUM,100
         JE  EXIT
         JMP WATING
INTREEUP3:
         CLI
         ADD SUM,1
         MOV DX,TCON2
         MOV AL,10H
     OUT DX,AL
     MOV AL,27H
     OUT DX,AL
         MOV AL,20H
     MOV DX,INTPORT1
     OUT DX,AL
         STI
         IRET
EXIT:    RET
ENDTI:   RET
CODE  ENDS
      END START

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -