• 微机原理与技术接口 实验五 基本IO操作温度控制实验


    🌴 2022.5.12 早八 实验

    实验五 基本IO操作温度控制实验

    前言

    🎬本文章是 【微机原理技术接口】 专栏的文章,主要是实验内容
    🔗微机原理技术接口专栏 传送门
    💻提示:本文的环境是emu8086仿真系统。

    1.1 实验要求

    熟悉emu8086仿真系统

    1. 掌握基本IO操作和EMU8086使用外置仿真设备的方法

    2. 使用IO方式实现温度采集和加热控制

    3. 控制温度保持在75℃到80℃并维持两分钟

    1.2 理论分析

    实现对温度计的控制(打开 \emu8086\DEVICES\Thermometer.exe),IN 125指从125读取数据,OUT 127指向127发送数据使用延时程序控制温度计。编写延时子程序,通过15H中断的86H子功能编写1s延时程序。

    1. 127端口持续输出1,使用循环将装置加热到75°C

    2. 通过125端口读入装置温度,判断温度是否在75°C - 80°C,并作出相应的处理

    3. 通过循环,3执行2分钟

    1.3 汇编语言

    💻提示:所有实验源码已在Github整理

    ;IN 125,OUT 127指\emu8086\DEVICES\Thermometer.exe,从125读取数据,向127发送数据
    
    MOV AL,1
    OUT 127,AL  ;打开加热,然后在LP0循环一直到大于75
       
    LP0:
    IN AL,125
    CMP AL,75
    JL LP0      ;<75跳转LP0继续加热
       
    MOV CX,120  ;一次1s,两分钟为120次
    LP:
    IN AL,125   ;125指\emu8086\DEVICES\Thermometer.exe,从125读取数据,向127发送数据
    CMP AL,75
    JL LOW      ;<75跳转LOW
    CMP AL,80
    JLE OK      ;<80跳转OK,否则顺序执行HIGH
    
    HIGH:       
    MOV AL,0
    OUT 127,AL  ;温高关加热
    JMP OK
    
    LOW:
    MOV AL,1
    OUT 127,AL  ;温低开加热
    JMP OK
    
    OK:             ;1秒延时判断
    PUSH CX         ;压栈保护记录两分钟的CX,因为延时程序也用CX
    CALL DELAY5MS   ;75℃到80℃
    POP CX
    LOOP LP
    
    DELAY5MS PROC NEAR  ;延时,15H中断的86H子功能
        ;wait 1 seconds (1 million microsecpnds)
        ;000F4240H = 1,000,000 = CX,DX 微秒
        MOV CX,15
        MOV DX,4240H
        MOV AH,86H
        INT 15H
        RET
    DELAY5MS ENDP
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43

    1.4 实验结果

    微机原理与接口技术11

  • 相关阅读:
    【计算机组成原理】第六章 总线
    网站分享~~
    【Java技术专题】「提升篇」Guava Collections实战指南—挑战Guava不一般的集合框架
    数据结构-Dijkstra最短路径算法
    删除的照片怎么找回?教你5个好方法快速恢复
    JAVA_内部类 学习笔记
    C++:继承
    信息化项目风险控制与应用
    NFT有哪些特性呢
    丢失vcruntime140_1.dll怎么解决,vcruntime140_1.dll怎么安装?
  • 原文地址:https://blog.csdn.net/qq_49488584/article/details/125826951