电压采集电路设计
. 目录目录 一、设计目的一、设计目的 - 2 -- 2 - 二、设计内容二、设计内容 - 2 -- 2 - 三、整体设计方案设计三、整体设计方案设计 . .- 2 -- 2 - 四、设计任务四、设计任务 - 3 -- 3 - 五、硬件设计及器件的工作方式选择五、硬件设计及器件的工作方式选择. . - 3 -- 3 - 1、硬件系统设计方框图: - 3 - 2、中断实现:8259A 工作方式选择及初始化 - 4 - 3、定时功能实现:8253 的工作方式及初始化 . - 4 - 4、数码管显示及 ADC 的数据传输:8255 的工作方式及初始化 . - 5 - 5、模拟电压转换为数字量:ADC0809 的初始化 - 5 - 6、地址编码实现:74LS138 及逻辑器件 - 6 - 7、显示功能:数码管显示 - 6 - 六、软件设计六、软件设计 - 7 - 1、主程序流程图 - 7 - 2、中断子程序 - 7 - 3、显示子程序 - 8 - 4、初始化 - 9 - 8295A 初始化流程图 . - 9 - 8253 初始化流程图 - 9 - 8255 初始化流程图 - 9 - 5、程序清单及说明. - 10 - 七、本设计实现功能七、本设计实现功能 - 13 -- 13 - 八、元件清单八、元件清单 - 14 -- 14 - 九、所遇问题与小结九、所遇问题与小结 - 14 -- 14 - 1、问题与解决. - 14 - 2、小结体会. - 15 - 附:系统硬件连线图附:系统硬件连线图 . - 16 - . . 一、一、设设计目的计目的 1、了解和掌握 74LS138、8253、8255A、ADC0809 等可编程接口芯片、中断控制 器 8259 以及 LED 显示器的原理和功能; 2、能用上面的接口芯片构建一个简单的系统控制对象; 3、进一步了解计算机得工作原理,接口技术,提高计算机硬件,软件综合应用 能力,即对微机原理,接口技术,汇编语言程序设计进行综合训练; 4、掌握接口电路的综合设计与使用。 二、二、设设计内容计内容 利用 《微型计算机原理课程》 中所学的主要可编程接口芯片 74LS138、 8253、 8255A、ADC0809 和中断控制器 8259 设计一个模拟电压采集电路。采用 ADC0809 设计一个单通道模拟电压采集电路,要求对所接通道变化的模拟电压值进行采 集,采集来的数字量送至数码管 LED 指示,采集完 100 个数据后停止采集过程。 三、整体设计方案设计三、整体设计方案设计 首先模拟电压量通过 ADC0809 转换为数字量 D,定时器 8253 计时,计时结 束后向 8259A 发出中断请求, CPU 响应中断, 接受 8255 的数据量 D, 并进行运算。 当进行了 100 次数据采集之后,将平均电压通过 8255 送到数码管显示。通过编 码器,对器件进行地址选择。 . . 四、设计任务四、设计任务 1、 选用 8088CPU 和适当的存储器芯片、接口芯片完成相应的功能。 2、 画出详细的硬件连接图。 3、 画出各程序的详细框图。 4、 给出 RAM 地址分配表及接口电路的端口地址。 5、 给出设计思路。 6、 给出程序所有清单并加上必要的注释。 7、 完成设计说明书。 五、硬件设计及器件的工作方式选择五、硬件设计及器件的工作方式选择 1 1、硬件系统设计方框图:、硬件系统设计方框图: 地址线ROM 数据总线 ADC 8255 数码管 数 据 缓 冲 器 控 制 总 线 8 0 8 8 . 编 码 器 地 址 总 线 8259A 8253 . 2 2、中断实现:、中断实现:8259A 工作方式选择及初始化 芯片简要介绍:8259A 是专门为了对 8086/8088 进行中断控制而设计的 芯片,它是可以用程序控制的中断控制器。单个的8259A 能管理 8 级向量 优先级中断。在不增加其他电路的情况下,最多可以级联成64 级的向量优 先级中断系统。 8259A 有多种工作方式,能用于各种系统。各种工作方式的 设定是在初始化时通过软件进行的。在总线控制器的控制下 ,8259A 芯片可 以处于编程状态和操作状态 .编程状态是 CPU 使用 IN 或 OUT 指令对 8259A 芯片进行初始化编程的状态。 主要功能:而在本设计中,8259 的主要作用是当 8253 延时完毕之后,让 C PU 响应中断,发命令给 8255,接收 ACD0809 的电压信号。 所以,只要开通 825 9A 的一路中断(本设计开通了 IR0)即可。 工作方式选择:单片 8259AA,上升沿有效,初始化时写入,IR0~IR7 的中断号 为 08H~0FH,一般全嵌套,费缓冲方式 1,正常中断结束,CPU 为 8088,允许 IR0 中断,非循环优化级方式,L2~L0 无效,不设置 EOI 命令。 3 3、定时功能实现:、定时功能实现:8253 的工作方式及初始化 芯片简要介绍:8253 内部有三个计数器,分别成为计数器0、计数器 1 和计数器 2,他们的机构完全相同。每个计数器的输入和输出都决定于设置 在控制寄存器中的控制字,互相之间工作完全独立。每个计数器通过三个 引脚和外部联系,一个为时钟输入端CLK,一个为门控信号输入端GATE, 另一个为输出端 OUT。每个计数器内部有一个8 位的控制寄存器,还有一个 16 位的计数初值寄存器CR、一个计数执行部件CE 和一个输出锁存器 OL。 频率选择与计算: 8253 的最高工作频率为2.6MHz,而 ADC 的最高工作 频率为 100KHz(100us) ,所以在选择参考频率 f ref 时,而且考虑到程序运行 时的指令的时间,参考与计数器所装的数N 的乘积:f ref *N, 应远大于 100us, 可取为 1ms。若取参考频率f ref 为:2MHz,则 N 的取值为:十进制的500 (01F4H) 。 . . 工作方式选择:工作方式2 被称作速率波发生器。进入这种工作方式, OUTi 输出高电平,装入计数值n 后如果 GATE 为高电平,则立即开始计数, OUTi 保持为高电平不变;待计数值减到“ 1”和“0”之间, OUTi 将输出 宽度为一个CLKi 周期的负脉冲,计数值为“0”时,自动重新装入计数初 值 n,实现循环计数, OUTi 将输出一定频率的负脉冲序列,其脉冲宽度固 定为一个 CLKi 周期, 重复周期为 CLKi 周期的 n 倍。所以当每次计数完毕 后,OUTi 放出一个负脉冲,用于触发中断。并且由于装数N 小于 FFFFH, 所以只要一个计数器即可。 所以,本次设计可选择计数器0,工作方式 2,装数 N 为 01F4H。 4 4、数码管显示及、数码管显示及 ADCADC 的数据传输:的数据传输:8255 的工作方式及初始 化 芯片简要介绍:8255 是一个并行输入 /输出的 LSI 芯片,多功能的 I/O 器 件,可作为 CPU 总线与外围的接口。具有24 个可编程设置的 I/O 口,即使 3 组 8 位的 I/O 口为 PA 口,PB 口和 PC 口.它们又可分为两组12 位的 I/O 口, A 组包括 A 口及 C