找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 5938|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

8086定時(shí)洗衣機(jī)Proteus仿真+匯編代碼(帶注水 洗衣 排水 甩干模擬)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
8086cpu芯片洗衣機(jī)仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)帶帶注水 洗衣 排水 甩干4個(gè)按鈕


源程序如下:
  1. ;上一片8255的地址
  2. PA                EQU                08H        
  3. PB                EQU                0AH
  4. PC                EQU                0CH
  5. CONW                EQU                0EH
  6. ;下一片8255的地址
  7. PA1                EQU                20H        
  8. PB1                EQU                22H
  9. PC1                EQU                24H
  10. CONW1                EQU                26H
  11. ;8253
  12. AD82530                EQU                10H
  13. AD82531                EQU                12H
  14. AD82532                EQU                14H
  15. AD8253CONW        EQU                16H
  16. ;
  17. AD82590                EQU                20H
  18. AD82591                EQU                22H
  19. ;============================
  20. STACK        SEGMENT        STACK      
  21.         DB        200        DUP(0)
  22. STACK ENDS
  23. ;============================

  24. DATA        SEGMENT
  25.         LED_TAB                DB        3FH, 06H, 5BH, 4FH, 66H
  26.                         DB        6DH, 7DH, 07H, 7FH, 6FH
  27.                         DB        77H, 7CH, 39H, 5EH, 79H, 71H
  28.         MMM                DB        0
  29.         SSS                DB        0
  30.         ONE                DB  5
  31.         TWO                DB  15
  32.         THREE        DB  5
  33.         FOUR        DB  15
  34. DATA        ENDS
  35. ;=============================

  36. CODE        SEGMENT
  37. ASSUME        CS:CODE, DS:DATA
  38. START:
  39.         PUSH        DS
  40.         MOV        AX, DATA
  41.         MOV        DS, AX
  42.         ;=================
  43.         ;設(shè)置中斷向量8253
  44.         CLI               
  45.         MOV        AX, 0
  46.         MOV        ES, AX            
  47.         MOV        SI, 08H              
  48.         MOV        AX, OFFSET TIME_INT           
  49.         MOV        ES:[SI], AX
  50.         MOV        AX, CS               
  51.         MOV        ES:[SI+2], AX
  52.         ;=================
  53.         ;初始化8255A
  54.         MOV        AL, 80H
  55.         OUT        CONW, AL
  56.         
  57.         ;MOV        AL, 80H
  58.         ;OUT        CONW1, AL
  59.         
  60.         ;初始化8253
  61.         MOV        AL, 36H
  62.         OUT        AD8253CONW, AL
  63.         MOV        AX, 65000
  64.         OUT        AD82530, AL
  65.         MOV        AL, AH
  66.         OUT        AD82530, AL


  67.         ;===============
  68.         LL:
  69.         ;=================
  70.                 ;CALL        IS_AD_TIMT
  71.                 CALL        PRINT_ALL
  72.         ;=================
  73.         JMP        LL

  74. INC_S:
  75.         PUSH        AX
  76.         INC        SSS
  77.         MOV        AL, SSS
  78.         CMP        AL, 60
  79.         JNE        ENDIF0
  80.                 MOV        AL, 0
  81.                 MOV        SSS, AL
  82.                 CALL        INC_M
  83.         ENDIF0:
  84.         POP        AX
  85.         RET
  86. INC_M:
  87.         PUSH        AX
  88.         INC        MMM
  89.         MOV        AL, MMM
  90.         CMP        AL, 60
  91.         JNE        ENDIF1
  92.                 MOV        AL, 0
  93.                 MOV        MMM, AL
  94.                 ;CALL        INC_H
  95.         ENDIF1:
  96.         POP        AX
  97.         RET
  98. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;        
  99.                
  100. DENG1:        MOV        AL, ONE
  101.                 CMP        AL, 0
  102.                 JNE        DENG11
  103.                 JE        DENG2
  104. DENG11:
  105.                 DEC        ONE
  106.                 MOV DX,PC
  107.                 MOV AL,01H            ;第一個(gè)燈亮
  108.                 OUT DX,AL
  109.                 RET
  110. DENG2:               
  111.                 MOV        AL, TWO
  112.                 CMP        AL, 0
  113.                 JNE        DENG22
  114.                 JE        DENG3
  115. DENG22:
  116.                 DEC TWO
  117.             MOV DX,PC
  118.         MOV AL,02H            ;第二個(gè)燈亮
  119.         OUT DX,AL
  120.                 RET
  121. DENG3:
  122.                 MOV        AL, THREE
  123.                 CMP        AL, 0
  124.                 JNE DENG33
  125.                 JE DENG4
  126. DENG33:
  127.                 DEC THREE
  128.                 MOV DX,PC
  129.                 MOV AL,04H            ;第三個(gè)燈亮
  130.                 OUT DX,AL
  131.                 RET
  132. DENG4:        
  133.                 MOV        AL, FOUR
  134.                 CMP        AL, 0
  135.                 JNE DENG44
  136.                 JE DENG5
  137. DENG44:
  138.                 DEC FOUR
  139.                 MOV DX,PC
  140.                 MOV AL,08H             ;第四個(gè)燈亮
  141.                 OUT DX,AL
  142.                 RET               
  143. DENG5:        
  144.                 MOV AL,5
  145.                 MOV ONE,AL
  146.                 MOV AL,15
  147.                 MOV TWO,AL
  148.                 MOV AL,5
  149.                 MOV THREE,AL
  150.                 MOV AL,15
  151.                 MOV FOUR,AL
  152.                 MOV AL,0
  153.                 MOV MMM,AL
  154.                 MOV AL,0
  155.                 MOV SSS,AL
  156.                 RET                                
  157.         
  158. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;        
  159. WRITE_LED:        ;(位選, 數(shù)字)                ;寫(xiě)某一位數(shù)碼管
  160.         MOV        BP, SP
  161.         PUSH        AX
  162.         PUSH        DX
  163.         ;=========
  164.         MOV        AX, [BP + 4]
  165.         OUT        PB, AL
  166.         MOV        BX, [BP + 2]
  167.         LEA        SI, LED_TAB
  168.         MOV        AL, [BX + SI]
  169.         OUT        PA, AL
  170.         ;=========
  171.         POP        DX
  172.         POP        AX
  173.         RET        4
  174. PRINT_TIME:        ;(時(shí)0分2秒4,數(shù)值)        ;寫(xiě)時(shí)分秒
  175.         MOV        BP, SP
  176.         PUSH        AX
  177.         PUSH        DX
  178.         PUSH        CX
  179.         ;=============
  180.         MOV        AX, [BP + 2]
  181.         MOV        DL, 10
  182.         DIV        DL
  183.         MOV        CL, AH
  184.         MOV        DX, [BP + 4]
  185.         PUSH        DX
  186.         XOR        AH, AH
  187.         PUSH        AX
  188.         CALL        WRITE_LED
  189.         CALL        DELAY
  190.         INC        DX
  191.         PUSH        DX
  192.         XOR        CH, CH
  193.         PUSH        CX
  194.         CALL        WRITE_LED
  195.         ;=============
  196.         POP        CX
  197.         POP        DX
  198.         POP        AX
  199.         RET        4
  200. PRINT_ALL:                        ;顯示時(shí)間
  201.         PUSH        AX
  202.         ;============HOUR
  203.         MOV        AX, 2
  204.         PUSH        AX
  205.         MOV        AL, MMM
  206.         XOR        AH, AH
  207.         PUSH        AX
  208.         CALL        PRINT_TIME
  209.         CALL        DELAY
  210.         POP        AX
  211.         ;============MINUTE
  212.         PUSH        AX
  213.         MOV        AX, 4
  214.         PUSH        AX
  215.         MOV        AL, SSS
  216.         XOR        AH, AH
  217.         PUSH        AX
  218.         CALL        PRINT_TIME
  219.         CALL        DELAY
  220.         POP        AX
  221.         ;==============SECOND
  222.         D1:               
  223.                         MOV        AL, ONE
  224.                         CMP        AL, 0
  225.                         JNE        D11
  226.                         JE        D2
  227.         D11:
  228.                         PUSH        AX
  229.                         ;==============SECOND
  230.                         MOV        AX, 0
  231.                         PUSH        AX
  232.                         MOV        AL, ONE
  233.                         XOR        AH, AH
  234.                         PUSH        AX
  235.                         CALL        PRINT_TIME
  236.                         CALL        DELAY
  237.                         POP        AX
  238.                         RET
  239.         D2:               
  240.                         MOV        AL, TWO
  241.                         CMP        AL, 0
  242.                         JNE        D22
  243.                         JE        D3
  244.         D22:
  245.                         PUSH        AX
  246.                         ;==============SECOND
  247.                         MOV        AX, 0
  248.                         PUSH        AX
  249.                         MOV        AL, TWO
  250.                         XOR        AH, AH
  251.                         PUSH        AX
  252.                         CALL        PRINT_TIME
  253.                         CALL        DELAY
  254.                         POP        AX
  255.                         RET
  256.         D3:
  257.                         ;DEC EEE
  258.                         MOV        AL, THREE
  259.                         CMP        AL, 0
  260.                         JNE D33
  261.                         JE D4
  262.         D33:
  263.                         PUSH        AX
  264.                         ;==============SECOND
  265.                         MOV        AX, 0
  266.                         PUSH        AX
  267.                         MOV        AL, THREE
  268.                         XOR        AH, AH
  269.                         PUSH        AX
  270.                         CALL        PRINT_TIME
  271.                         CALL        DELAY
  272.                         POP        AX
  273.                         RET
  274.         D4:        
  275.                         MOV        AL, FOUR
  276.                         CMP        AL, 0
  277.                         JNE D44
  278.                         JE D1
  279.         D44:
  280.                         PUSH        AX
  281.                         ;==============SECOND
  282.                         MOV        AX, 0
  283.                         PUSH        AX
  284.                         MOV        AL, FOUR
  285.                         XOR        AH, AH
  286.                         PUSH        AX
  287.                         CALL        PRINT_TIME
  288.                         CALL        DELAY
  289.                         POP        AX
  290.                         RET
  291.                
  292. DELAY:
  293.         PUSH        BX
  294. ……………………

  295. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
洗衣機(jī).zip (31.44 KB, 下載次數(shù): 181)


評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:6670 發(fā)表于 2019-12-17 21:39 | 只看該作者
用了兩片8255??
回復(fù)

使用道具 舉報(bào)

板凳
ID:673096 發(fā)表于 2019-12-26 14:58 | 只看該作者
pr仿真出現(xiàn)問(wèn)題,打不開(kāi)啊
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表