微机原理课程设计波形发生器

1.4系统硬件设计

硬件设计电路图

XD7 XD6 XD5 XD4 XD3 XD2 XD1 XD0 XIOW XIOR

IOY0 XA2

INTR XD7 XD6 XD5 XD4 XD3 XD2 XD1 XD0 XIOW XIOR IOY3 XA3 XA2 XD7 XD6 XD5 XD4 XD3 XD2 XD1 XD0

XIOW IOY2

D7 D6 D5 D4 D3 D2 D1 D0 WR RD CS A0 INT D7 D6 D5 D4 D3 D2 D1 D0 WR RD CS A1 A0 PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PA0 PA1 PA2 PA3 PA4 PA5 D7 A B C D E F G DP X1 X2 X3 X4 X5 X6 D7 D6 XD7 XD6

系 统 总 线 系 统 总 线 系 统 总 线 系 统 总 线 IR0 OUT0 D5 D4 D3 D2 D1 D0 WR XD5 XD4 XD3 XD2 XD1 XD0 XIOW XIOR IOY1 XA3 XA2 1.8432MHZ CLK0 +5V GATE0 RD 8259A 8254 CS A1 A0 LED显示器 8255A D6 D5 D4 D3 D2 D1 D0 DAC0832 WR CS OUT 示波器 图3 硬件设计电路图

第4页

1.5系统软件设计

软件设计流图

开始 初始化8259、8255、8253、0832 输入频率并将计算所得计数初值 写入相应的8253控制字 主程序(无限循环程序) N 有中断 Y 响应中断,保护断点 进入中断程序,向0832输出波 结束中断 关电源,退出系统 图4 软件设计流图

第5页

二 实践部分

2.1系统硬件原理简介

(一)可编程并行I/O接口芯片8255A

8255A可编程并行I/O接口芯片,为40个引脚的双列直插芯片 8255A具有3个相互独立的输入/输出通道端口,三种工作方式。 方式0——基本输入输出方式; 方式1——选通输入/出方式;

方式2——双向选通输入/输出方式;

图5 8255A引脚图

引脚功能:

RESET:复位信号,高电平有效,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。

RD:读命令信号输入,低电平有效,用来控制数据由8255A读 WR:写命令信号输入,地点平有效,用来控制写到8255A CS:片选信号输入,通过译码器与地址总线相连

D0~D7:三态双向数据总线,8255与CPU数据传送的通道,实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。

(二)可编程定时/计数器Intel8253

Intel8253是一种能够完成定时和计数的芯片,8253内部有3个16位计数器通道,通过对他们编程,每个计数器可以按照6种工作方式工作,并且都可以按2或10进制格式进行计数,最高频率为2HZ。8253还可以用于许多其他场合,比如可作编程方波发生器,分频器等。

第6页

图6 8253引脚图 引脚功能:

1、数据缓冲总线

数据总线缓冲器是8253与系统总线相连时使用的接口电路,它由8位双相三态缓冲器构成,CPU用输入输出指令对8253进行读写操作的信息都由8位数据总线传输: (1)CPU在对8253进行初始化编程时,向他写入控制字。 (2)CPU向某一计时器写入计数初值。 (3)从计数器读出计数值。 2、读写控制逻辑

读写控制逻辑接受系统控制总线送来的输入信号,经由组合后形成控制信号,对各部分操作进行控制。可接受的信号有:

(1)CS片选,低电平有效,由数据总线经由IO端口译码电路产生。只有CS低电平时,CPU才能对8253进行读写操作。

(2)RD读信号,低电平有效,当RD位地电平时,表示CPU正在读取所选定的计数器的通道的内容。

(3)WR写信号,低电平有效。当WR为低电平时,表示CPU正在将计数器初值写入所选中的通道口中,或者将控制字写入内部寄存器中。

(4)A1A2 端口选择信号,改变它的值,来选择8253内三个计数器通道。

如果8253和与8位数据总线的微机相连,只要将A1A0分别与地址总线相联。如果系统采用的是8086CPU,则数据总线为16位,传输数据时,总是将低8位数据送往偶地址,将高8位送往奇地址。 3、计数器

8253内部包含三个完全相同俄计数器定时器通道,对3个通道的操作是完全独立的。每个通道都包含1个8位的控制字寄存器,1个16位的减寄存器,和一个锁存器,执行部件是一个16位的减法计数器。每个通道工作时,对输入到CLK引脚上的脉冲按2进制或10 进制格式进行计数。每当输入一个时钟脉冲,计数器减1,当计数器的值减为0时从,从OUT引脚输出一个脉冲信号。GATE引脚上的门控制信号,决定他是否允许计数。

第7页

联系客服:779662525#qq.com(#替换为@)