打印机接口数模A转换电路方案.docx
- 文档编号:10429332
- 上传时间:2023-02-11
- 格式:DOCX
- 页数:24
- 大小:272.33KB
打印机接口数模A转换电路方案.docx
《打印机接口数模A转换电路方案.docx》由会员分享,可在线阅读,更多相关《打印机接口数模A转换电路方案.docx(24页珍藏版)》请在冰豆网上搜索。
打印机接口数模A转换电路方案
微型计算机原理
及接口技术
课程设计
——基于打印口的A/D
和D/A接口电路设计
班级:
姓名:
学号:
指导教师:
小组成员:
一、主要内容及意义3
1.1、主要内容3
1.2、设计目的3
二、总体系统设计3
2.1、需求分析3
2.2、设计思想流图4
三、芯片功能简介4
3.1、A/D转换器 3.2、可编程中断控制器82597 3.3、并行接口82559 3.4、CPU8086介绍12 四、整体电路图13 五、软件代码设计14 5.1、程序流程设计14 5.2、程序的编译环境15 5.3、程序调试16 六、设计总结17 6.1、创新和得意之处17 6.2、设计中的不足及改进设想17 6.3、误差分析17 6.4、设计的心得体会18 七、参考文献19 八、附录19 一、主要内容及意义 1.1、主要内容 本设计用8086控制的数据采集系统,本文着重介绍该系统的工作原理及软件设计,本设计的主要组成如下: <1)数据输入单元。 <2)采样保持电路的A/D转换单元。 <3)外设和8086的连接电路。 <4)8086输出的数据锁存和输出。 数据采集系统的方案及总体设计,包括主体电路的设计和8086控制电路的设计<要用到8086的控制整个系统),因此要完成8086应用系统的软件设计并完成软件调试,以满足整个系统的要求。 1.2、设计目的 通过本次课程设计要掌握几种芯片使用的方法,灵活运用课本知识,加深所学的知识,对所学的相关芯片的原理、内部结构、使用方法等有更深的了解,学会利用课本知识联系实际应用及编程。 同时了解综合问题的程序设计掌握实时处理程序的编制和调试方法,掌握一般的设计步骤和流程,使我们以后搞设计时逻辑更加清晰。 二、总体系统设计 2.1、需求分析 这次的课程设计是为了实现数据的采集及输出,所以,它需要两个模块,即: 数据采集和输出,这就要求了数据的转换,因为计算机只能识别数字信号,所以在采集的时候就需要用到A/D转换,在输出的时候可以直接输出<因为有些设备可以直接将数字信号转换成可以识别的信号),但是由于外围设备与CPU速度的不匹配,这就需要有缓存器的功能,这就找到了8255,还有考虑到更好地控制输入数据的随意性及及时性,可控中断,这需要可编程中断控制器<8259)。 2.2、设计思想流图 整个系统的设计包括模块设计和软件设计两部分。 模块设计主要完成多路数据采集整个硬件电路及I/O接口的设计: A/D转换器ADC0809、中断控制器8259、并行接口8255、CPU8086等组成;软件设计主要完成控制整个系统的应用程序与调试。 包括主程序、A/D和D/A转换程序、多路开关控制以及I/O接口控制等程的设计。 设计流程图如下: 数据采集 三、芯片功能简介 3.1、A/D转换器 ⑴、介绍 按模拟量转换成数字量的原理可以分为3种: 双积分式、逐次逼近式及并行式A/D转换器。 而该系统选用的是ADC0809,下面就具体的介绍一下ADC0809的工作原理。 ADC0809是八通道的八位逐次逼近式A/D转换器。 由单一的5V电源供电,片内带有锁存功能的8选1的模拟开关。 由C、B、A的编码来决定所选的模拟通道。 转换时间为100us。 转换误差为1/2LSB。 它的引脚的排列及其功能,其引脚图见2 图2 IN7~IN0: 八个通道的模拟输入量。 ADDA、ADDB、ADDC: 模拟通道地址线。 当CBA=000时,IN0输入,当CBA=111时,IN7输入。 ALE: 地址锁存信号。 START: 转换启动信号,高电平有效。 D7~D0: 数据输出线。 三态输出,D7是最高位,D0是最低位。 OE: 输出允许信号,高电平有效。 CLK: 时钟信号,最高频率为640KHZ。 EOC: 转换结束状态信号。 上升沿后高电平有效。 Vcc: +5V电源。 Vref: 参考电压。 ⑵、ADCO8O9时序图及接口电路 其工作过程是: ALE的上升沿将A、B、C端选择的通道地址锁存到8位A/D转换器的输入端。 START的下降验启动8位A/D转换器进行转换。 A/D转换开始使EOC端输出低电平。 A/D转换结束,EOC输出高电平。 该信号通常可作为中断申请信号。 OE为读出数据允许信号。 OE端为高电平时,可以读出转换的数字量。 硬件电路设计时,需根据时序关系及软件进行设计。 由于ADC0809具有输出3态锁存器,其八位数据输出引脚可直接与数据总线相连。 地址译码引脚A、B、C分别与地址总线低三位A0、A1、A2相连,以选通IN0~IN7中的一个通道。 在启动A/D转换时,由8088的A口控制A/D转换器的地址锁存和转换启动,由于ALE和START连在一起,因此AD0809在锁存通道的同时,也启动了A/D转换器。 在读取转换结果时,用低电平的读信号RD,产生的正脉冲作为OE信号,用以打开三态输出锁存器。 将转换结果输出。 而低电平的写信号WR则表示转换结束状态信号。 其转换流程图如下: 流图1 3.2、可编程中断控制器8259 ⑴、可编程中断控制器8259功能、内部结构及外部引脚定义 ①、可编程中断控制器8259功能和内部结构 中断请求寄存器 8位寄存器,可寄存储8个请求输入 优先权裁决器: 对请求源与正在被服务的中断级进行比较,裁决出优先级最高者。 中断服务寄存器 8位,与IRR对应,记录正被处理的请求。 IRn被响应,ISRn被置1;IRn处理结束,ISRn置0。 中断屏蔽寄存器 8位,某位置1对应IRR位的请求被屏蔽。 控制逻辑: 寄存8259的命令字,多种工作方式的控制,向处理器发INT,接收 。 级联缓冲器/比较器: 多片8259级联时,对从片的标识码进行寄存与比较。 ⑵、8259的外部引脚信号 图58259外部引脚图 8259的主要引脚信号说明 D7-D0: 双向数据总线,与系统数据总线连接。 : 片选信号,低电平有效,确定芯片在系统I/O空间位置。 A0: 地址线,8259占相邻的2个I/O地址,与CS信号配合,A0=0选偶端口,A0=1选奇端口。 CAS2-CAS0: 双向级联线。 在主从级联结构中,主片输出,从片输入。 主片发从片标识码,从片比较,符合时输出中断类型码。 : 双向信号,低电平有效。 输入时为SP,硬接线确定主从<主片SP接高电平);输出时为EN,作为DB缓冲允许。 INT: 中断请求,输出,与CPU的INTR脚相连,向CPU发出中断请求。 : 中断响应,低电平有效,输入,与8086/88 相连。 ⑶、8259A的工作方式 、优先级方式选择 全嵌套方式: 固定优先级,IR0最高,IR7最低。 特殊全嵌套: 与a>基本相同,响应同级中断请求 优先级自动循环: 某级被响应后,降为最低。 如IR4被响应后,优先级顺序变为: IR5,IR6,IR7,IR0,IR1,IR2,IR3,IR4。 优先级特殊循环方式: 编程指定最低优先级,其它同c>。 ②、屏蔽中断方式选择 普通屏蔽方式选择: 对应IMR为1的位中断请求将被屏蔽。 例如: IMR=00001100,则IR2、IR3的中断请求被禁止。 特殊屏蔽方式: 执行中断程序时,动态改变优先级结构,屏蔽本级,允许较低级请求被服务。 ③、中断结束方式: ISRn被清0,中断结束。 自动结束方式: 8259收到 后自动把中断在服务寄存器ISRn位清0<适用于单片8259和中断无嵌套的情况)。 一般结束方式: 8086发命令清除中断在服务寄存器ISR中的最高的置1位清0,结束中断<在全嵌套方式下使用)。 特殊结束方式: 编程向8259发出一条特殊中断结束命令,将中断在服务寄存器ISR中指定位清0<在非全嵌套方式下使用)。 ④、中断请求信号触发方式选择 边沿触发方式。 8259的IR0-IR7输入端出现低电平到高电平的正跳变信号,表示有中断请求。 出现正跳变信号后,允许高电平保持。 电平触发信号。 8259的IR0-IR7输入端出现高电平信号时,表示有中断请求。 该请求信号必须在中断服务程序中的中断结束命令执行前予以撤消,否则会引起不应有的第二次中断。 ⑷、8259的命令字 8259工作方式设定及运行中的控制,均由8086发来的命令字(1字节代码>决定。 命令字分初始化命令字和操作命令字两种,系统向8259两个端口之一写入。 8259根据接收命令字的端口号,特征位及顺序决定命令字的属性。 ①、初始化命令字(Word,ICW> ICW1-ICW4四个初始化命令字,有接收顺序要求。 8259初始化流程如下: 3.3、并行接口8255 本设计采用8255作为并行接口,其外部引脚如图6. 图68255外部引脚 ⑴、8255的主要性能参数 ①共有4个端口: A口连8位并行PA口线 B口连8位并行PB口线 C口连8位并行PC口线 控制端口 ②三种工作方式。 ③、可提供中断和查询数据传输方式。 ④、可直接与系统总线相连。 ⑵、内部组成及引脚功能如图7 图78255内部组成 ①、与CPU接口部分 缓冲器: 8位双向三态缓冲器。 读写逻辑: 对A口、B口、C口读/写控制,对控制口写控制字。 ②、与外设接口部分 A口: 8位输出锁存、8位输入缓冲。 B口: 8位输出锁存、8位输入缓冲。 C口: 8位输出锁存、8位输入缓冲。 ③、引脚功能 A、CPU与8255交换数据引脚 RESET: 复位输入线,当该输入端外于高电平时,所有内部寄存器<包括控制寄存器)均被清除,所有I/O口均被置成输入方式。 D0~D7: 三态双向数据总线,8255与CPU数据传送的通道,当CPU执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。 CS: 片选信号线,当这个输入引脚为低电平时,表示芯片被选中,允许8255与CPU进行通讯。 RD: 读信号线,当这个输入引脚为低电平时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。 WR: 写入信号,当这个输入引脚为低电平时,允许CPU将数据或控制字写入8255。 A0、A1: 内部寄存器寻址。 A1A0 00读写A口 01读写B口 10读写C口 11写控制寄存器 B、与I/O设备交换数据引脚 PA0~PA7: A口的8位输入/输出线。 PB0~PB7: B口的8位输入/输出线。 PC0~PC7: 有如下用途: 作为8位输入/输出线;作为两个4位输入/输出线: PC0~PC3、PC4~PC7。 可对每一位实现按位“置位”或“复位”控制。 作为8255的状态口。 专用联络信号线。 ⑶、工作方式控制字8255有三种工作方式: 方式0、方式1、方式2。 两组端口可分别指定不同的工作方式。 每组端口在某种工作方式下,并不要求各信号同为输入或同为输出,而是可以分别指定。 方式选择控制字的格式如图8所示 图88255方式选择控制字 ⑷、PC口控制字PC口的各信号线常作为控制线来使用,因此,经常需要单独对每根信号线置1或置0。 这种操作用向PC口控制字寄存器送出PC口控制字来实现。 3.4、CPU8086介绍 ⑴、8086微处理器基本结构 8086的内部结构从功能分成两个单元: 总线接口单元BIU——管理8086与系统总线的接口,负责CPU对存储器和外设进行访问 执行单元EU——负责指令的译码、执行和数据的运算,两个单元相互独立,分别完成各自操作,两个单元可以并行执行,实现指令取指和执行的流水线操作 ⑵、8086CPU寄存器结构 ①.通用寄存器AX/BX/CX/DXBP/SPDI/SI ②.指令指针寄存器IP ③.标志寄存器1PSW ④.段寄存器4CS/SS/DS/ES ⑶、8086总线的工作周期 时钟周期(ClockCycle>: 执行指令的一系列操作都是在时钟脉冲CLK的统一控制下逐步进行的,一个时钟脉冲时间称为一个时钟周期(ClockCycle>。 时钟周期由计算机的主频决定,是CPU的定时基准,例如,8086的主频为5MHz则1个时钟为200ns。 8086CPU与外部交换信息总是通过总线进行的。 CPU从存储器或外设存或取一个字节或字所需的时间称为总线周期(BusCycle>。 一个基本的总线周期由四个时钟周期组成,分别称为T1、T2、T3和T4时钟周期,或T状态(State>。 指令周期: 一条指令的执行包括取指令、分析指令和执行指令。 一条指令从开始取指令到最后执行完毕所需的时间称为一个指令周期。 ⑷、8086微处理器外部基本引脚与工作模式 两种组态构成两种不同规模的应用系统,最小组态模式,构成小规模的应用系统,8088本身提供所有的系统总线信号,最大组态模式构成较大规模的应用系统,例如可以接入数值协处理器8087,。 8088和总线控制器8288共同形成系统总线信号 两种组态利用MN/MX*引脚区别。 MN/MX*接高电平为最小组态模式,MN/MX*接低电平为最大组态模式,两种组态下的内部操作并没有区别。 8086微处理器外部基本引脚: 图138086外部基本引脚 四、整体电路图 根据以上原器件分析,结合需求分析,设计的电路图如下: 图12 五、软件代码设计 5.1、程序流程设计 根据以上硬件连接图,按系统设计要求进行以下程序设计,中断控制器8259端口地址为FFC0-FFC1,可编程并行接口芯片8255的A口、B口、C口和控制口的地址分别为FFC8、FFCA、FFCC、FFCE。 软件编程的程序流程图如流图3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 打印机 接口 数模 转换 电路 方案