8088简易低频信号源.docx

上传人:b****4 文档编号:2963114 上传时间:2022-11-16 格式:DOCX 页数:21 大小:246.98KB
下载 相关 举报
8088简易低频信号源.docx_第1页
第1页 / 共21页
8088简易低频信号源.docx_第2页
第2页 / 共21页
8088简易低频信号源.docx_第3页
第3页 / 共21页
8088简易低频信号源.docx_第4页
第4页 / 共21页
8088简易低频信号源.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

8088简易低频信号源.docx

《8088简易低频信号源.docx》由会员分享,可在线阅读,更多相关《8088简易低频信号源.docx(21页珍藏版)》请在冰豆网上搜索。

8088简易低频信号源.docx

8088简易低频信号源

 

微机原理课程设计

简易低频信号源的设计

 

姓名:

学号:

专业:

班级:

指导教师:

 

年月日

内容摘要

函数信号发生源是一种能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路。

函数信号发生器在电路实验和设备检测中具有十分广泛的用途。

现在我们通过对函数信号发生源的原理以及构成,设计一个能输出三角波、正弦波、方波的简易发生器。

通过对电路的分析,参数的确定选择出一种最适合的方案。

在达到课题要求的前提下保证最经济、最方便、最优化的设计策略。

目录

内容摘要2

一.系统方案的设计4

1.1设计要求4

1.2系统基本方案4

1.2.1各模块方案选择4

二.系统的硬件设计5

2.1硬件电路设计系统原理图及其说明5

2.2主要芯片及其各自功能说明6

2.2.1DAC0832功能简介6

2.2.28088功能简介9

2.2.28284功能简介10

三.系统的软件设计11

3.1设计思路11

3.2初始化子程序流程图11

3.3按位扫描子程序流程图12

3.4波形数据产生子程序流程图13

四.程序代码13

五.心得体会20

一.系统方案的设计

1.1设计要求

(1)能够输出方波、正弦波、三角波三种信号。

(2)三种信号的输出可由开关选择切换。

(3)三种波形的频率可调范围为0.5Hz~50Hz。

1.2系统基本方案

本系统用8088系统作为核心部件,低频信号源在设计制作过程中主要考虑其简易实用,通过DAC0832把数字量转换为模拟量,在DAC0832的输出端接运算放大器,由运算放大器产生波形,而DAC0832工作于双缓冲方式,其中输入寄存器受控,而DAC寄存器直通。

显示部分通过使用数码管显示输出波形的频率,示波器以正负电压的形式输出波形。

根据设计要求和初期设想,系统可分为主控模块、波形种类显示模块、波形产生电路模块、频率显示模块和按键控制模块。

1.2.1各模块方案选择

(1)主控模块

采用8088系统作为系统的控制器。

8088系统的使用简单,软件编程灵活。

自由度大,可用软件编程实现各种算法和逻辑控制,并且功耗低、体积小、技术成熟和成本低。

(2)频率显示模块

采用普通的LED数码管作为显示器件。

数码管具有低能耗、低损耗、低压、寿命长、耐老化、防晒、防潮、防火、防高(低)温,对外界环境要求低,易于维护,同时其精度比较高,操作简单;编程容易,资源占用较少。

(3)波形种类显示模块

示波器是一种用途十分广泛的电子测量仪器,示波器利用狭窄的、由高速电子组成的电子束,打在涂有荧光物质的屏面上,就可产生细小的光点。

在被测信号的作用下,电子束就好像一支笔的笔尖,可以在屏面上描绘出被测信号的瞬时值的变化曲线。

利用示波器能观察各种不同信号幅度随时间变化的波形曲线,如本实验所需的方波、三角波和正弦波。

(4)波形产生模块

DAC0832芯片是8位并行、中速(建立时间1us)、CMOS工艺制造的8位单片D/A转换,各支路的电流信号经过电阻网络加权后,由运算放大器求和并变换成电压信号,作为D/A转换器的输出。

DAC0832换器转换控制容易等优点,在单片机应用系统中得到了广泛的应用。

二.系统的硬件设计

2.1硬件电路设计系统原理图及其说明

根据系统要求及各模块所实现功能,设计出主控电路系统如图2.1

如图2.1主控电路

2.2主要芯片及其各自功能说明

2.2.1DAC0832功能简介

采用DAC0832转换芯片来进行数模转换。

DAC0832是一个8位D/A转换器,单电源供电,从+5V到+15V均能正常工作,电流的建立时间是1μS,COMS工艺,低功耗20MW。

它由一个8位输入寄存器,一个8位DAC寄存器和一个8位的D/A转换器及逻辑控制电路组成,其电压模拟量通过一个TL082运放芯片,来输出三种波形。

一、DAC0832引脚如图2.3:

图2.2DAC0832引脚图

D0~D7:

8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错);

ILE:

数据锁存允许控制信号输入线,高电平有效;

 CS:

片选信号输入线(选通数据锁存器),低电平有效;

 WR1:

数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。

由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;

 XFER:

数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效;

 WR2:

DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。

由WR1、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。

 IOUT1:

电流输出端1,其值随DAC寄存器的内容线性变化;

 IOUT2:

电流输出端2,其值与IOUT1值之和为一常数;

Rfb:

反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度;

 Vcc:

电源输入端,Vcc的范围为+5V~+15V;

 VREF:

基准电压输入线,VREF的范围为-10V~+10V;

 AGND:

模拟信号地

DGND:

数字信号地

二、DAC内部逻辑图如图2.4:

图2.3DAC0832内部逻辑图

如图所示,待转换的8位数字量由芯片的8位数据输入线D0~D7输入,经DAC0832转换后,通过2个电流输出端IOUT1和IOUT2输出,IOUT1是逻辑电平为"1"的各位输出电流之和,IOUT2是逻辑电平为"0"的各位输出电流之和。

另外,ILE、WR1、WR2、CS和Xfer是控制转换的控制信号。

DAC0832由8位输入寄存器、8位DAC寄存器和8位D/A转换电路组成。

输入寄存器和DAC寄存器作为双缓冲,因为在CPU数据线直接接到DAC0832的输入端时,数据在输入端保持的时间仅仅是在CPU执行输出指令的瞬间内,输入寄存器可用于保存此瞬间出现的数据。

有时,微机控制系统要求同时输出多个模拟量参数,此时对应于每一种参数需要一片DAC0832,每片DAC0832的转换时间相同,就可采用DAC寄存器对CPU分时输入到输入寄存器的各参数在同一时刻开始锁存,进而同时产生各模拟信号。

控制信号ILE、WR2、WR1用来控制输入寄存器。

当ILE为高电平,CS为低电平,WR1为负脉冲时,在LE1产生正脉冲;其中LE1为高电平时,输入寄存器的状态随数据输入线状态变化,LE1的负跳变将输入数据线上的信息存入输入寄存器。

控制信号和用来控制8位A/D转换器。

当XFER为低电平,WR2输入负脉冲时,则在LE2产生正脉冲;其中LE2为高电平时,DAC寄存器的输入与输出的状态一致,LE2负跳变,输入寄存器内容存入DAC寄存器。

三、D/A转换器原理及主要技术指标

D/A转换器按工作方式可分为并行D/A转换器、串行D/A转换器和间接D/A转换器等。

在本次设计中我们运用的是一个8位D/A转换器。

VREF为外加基准电源,Rfb为外接运算放大器的反馈电阻。

D7~D0为控制电流开关的数据。

图2.4D/A转换器原理电路

图2.5示的电路是一个3位二进制数的D/A转换电路,每位二进制数控制一个开关S。

当第ι位的数码为“0”时,开关Sι打在左边;当第i位的数码为“1”时,开关Si打在右边。

当数字量某位为1时,电子开关就将基准电压源VREF介入电阻网络的相应支路;若为0时,则将该支路接地。

各支路的电流信号经过电阻网络加权后,由运算放大器求和并变成电压信号,作为D/A转换器的输出。

2.2.28088功能简介

8088是一个Intel以8086为基础的微处理器,拥有16位单元暂存器和8位元外部资料总线。

内部由两个独立的功能部件组成,分别为BIU和EU,EU负责指令的执行,并进行算术逻辑运算等。

EU从BIU中的指令队列中取得指令。

当指令要求将数据放在寄存器或输出到外部设备,或者要从寄存器或外部设备读取数据时,EU就向BIU发出请求,BIU根据EU发来的请求完成这些操作。

它包括一个算术逻辑单元(ALU)、一组通用寄存器和标志寄存器组成,它们均是16位的。

执行部件中含有8个16位的寄存器,这些寄存器属于CPU的专用寄存器,按其用途可将它们分成两组:

数据寄存器组和指示器变址寄存器组。

总线接口部件BIU包括一组段寄存器、一个指令指示器、指令队列(8086长6个字节,8088长4个字节)、地址产生器和总线控制器等。

BIU根据执行部件EU的请求,完成CPU与存储器或I/O设备之间的数据传送。

在EU执行指令的过程中,BIU根据需要从存储器中预先取一些指令,保存到指令队列中。

如果EU执行一条转移指令,使程序发生转移,那么存放在指令队列中的预先取得的指令就不再有用,BIU会根据EU的指示从新的地址重新开始取指令。

管脚图如下:

图2.58088引脚图

2.2.28284功能简介

8284在8086/8088CPU内部没有时钟信号发生器,当组成微机系统时,所需的时钟信号需由外部时钟发生器电路提供。

8284就是为8086/8088设计的时钟发生器/驱动器。

在8284中,除具有时钟信号产生电路外,还有RESET复位信号和READY准备就绪信号同步控制电路。

这些电路分别向8086/8088系统提供时钟信号CLK,以及被CLK同步的复位信号RESET和准备就绪信号READY。

此外,还可向外提供晶振时钟OSC,以及外设电路所需的时钟信号PCLK。

引脚图如下:

如图2.68284引脚图

3.系统的软件设计

3.1设计思路

以8088作为控制器,用中断查表法完成波形数据的输出,控制键控制单片机往DAC0832送波形数据实现数模转换,再用D/A转换器输出规定的波形信号由示波器显示,方波信号直接由8088的端口输出。

整个程序可分成初始化子程序,按键扫描子程序,波形数据产生子程序三大部分。

程序清单见附录。

3.2初始化子程序流程图

初始化子程序的主要工作是设置定时器的工作模式、处置预置、开中断和开定时器等。

在这里定时器T1工作于16位定时模式,8088系统按定时时间重复地把波形数据送到DAC0832的寄存器。

其流程图如图3.1:

图3.1初始化子流程图

3.3按位扫描子程序流程图

键位扫描子程序的任务是检查4个按键是否有键按下,若有键按下,则执行相应的功能。

在这里,4个按键分别用于频率增加、频率减小和三角波、正弦波的选择功能。

其流程图

图3.2键位扫描子程序流程图

3.4波形数据产生子程序流程图

波形数据产生的子程序是定时器T1的中断程序。

当定时器溢出时,发生一次中断。

当发生中断时,8088系统将按波形数据表中的波形数据一一送入DAC0832,DAC0832再根据输入的输入数据大小输出对应的电压。

流程图如图3.3:

图3.3波形数据产生子程序流程图

四.程序代码

TIM_CTLEQU22BH

TIMER0EQU228H

TIMER1EQU229H

TIMER2EQU22AH

MODE03EQU00110110B

MODE12EQU01110100B

MODE22EQU10110100B

DATASEGMENT

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

PUSHDS

MOVAX,0

PUSHAX

MOVAX,DATA

MOVDS,AX

CLI;关中断

MOVDX,TIM_CTL;定时器0工作在方式3

MOVA

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1