微机原理接口技术课设:数据采集与数字电压表显示控制
版权申诉
81 浏览量
更新于2024-08-28
收藏 15KB PDF 举报
"该文档是关于微机原理与接口技术的课程设计,主要涉及数据采集控制系统和数字电压表的显示。通过程序清单展示了如何实现这一系统,包括8255和8253芯片的初始化,以及数据处理和数码管显示的逻辑。"
在微机原理与接口技术的课程设计中,数据采集控制系统与数字电压表显示是一个典型的应用实例。这个项目利用微处理器进行数据采集,并在数码管上实时显示电压值。以下是关键知识点的详细说明:
1. **程序结构**:程序分为堆栈段(STACK)、数据段(DATA)和代码段(CODE)。堆栈段用于存储临时数据和返回地址,数据段存储常量、变量等数据,代码段存放执行指令。
2. **变量定义**:`MINDB`和`MAXDB`分别表示最小电压和最大电压,`SUMDW`用于累加采样数据,`VR`存储平均电压值,`LED`数组定义了数码管的显示码,`VARDB`存储当前采样值。
3. **8255初始化**:8255是通用并行接口芯片,`MOVAL,10000010B`设置8255的工作模式,使能控制口(`28BH`),然后清零数据端口(`288H`)。
4. **8253初始化**:8253是定时/计数器芯片,`MOVAL,00010001B`设置计数器工作模式,接着设置计数值(`28FH`、`28CH`),并启动计数。
5. **数据采集**:通过`IN AL,289H`从数据输入口读取电压值,然后进行处理。`TESTAL,10000000B`用于判断高八位是否有效。
6. **计算平均电压**:通过累加采样数据(`SUM`)并除以采样次数(`8`)得到平均值`VR`。
7. **电压范围判断**:`CMPVR`指令比较`VR`值与预设范围,根据不同的电压范围调用不同的显示子过程。
8. **数码管显示**:通过`LED`数组和`CALLDIS1`、`CALLDIS2`子过程,实现不同数字在数码管上的显示。这些子过程实现了数码管的动态扫描,使得数码管可以显示采集到的电压值。
9. **控制流程**:主循环`L1`不断读取电压值并进行处理,当满足特定条件时调用子过程更新显示。例如,`JZ ENDL`跳转到结束循环,`JMP L1`回到循环开头。
这个课程设计展示了微处理器在数据采集和实时显示方面的应用,同时涵盖了接口芯片的使用、数据处理和数码管显示等核心概念。通过实际操作,学生可以深入理解微机原理和接口技术的基本原理及其在实际系统中的运用。
219 浏览量
142 浏览量
118 浏览量
150 浏览量
189 浏览量
180 浏览量
189 浏览量
268 浏览量
407 浏览量