文档介绍:青岛农业大学
理学与信息科学学院
微机接口课程设计报告
设计题目函数发生器的设计
专业班级计算机科学与技术08级01班
姓名(学号) 周志刚(20082851)
设计小组其他同学姓名(学号) 王晓庆(20082756)
郑博(20082838)
指导教师徐艳
完成时间 2011年5月14日
实****设计)地点信息楼526
2011年5月15日
一、课程设计目的和任务函数发生器的设计
参考要求:利用D/A设计一个函数发生器,并利用按键选择输出波形,能分别产生锯齿波、脉冲波、三角波、方波等其中的三种以上的波形。并利用按键(自行定义)进行输出波形选择,同时将当前输出波形代号显示在LED上(左边位):0为锯齿波、1为脉冲波、2为三角波、3方波。
二、分析与设计
:
根据题意函数发生器具有将现实世界的一些数字模型转化成计算机能表示和处理的波形的一种仪器,它能控制各种波形的顺序播放和有效调节波形频率和幅度的作用。因为波形要输出到示波器和通过开关的控制输入波形的播放,故需要输入/输出接口部件,计算机处理的是数字信号而示波器处理的是模拟信号,所以在输入/输出接口部件和示波器之间加一个数/模转换器,由于计算机处理和数模转换后的信号很弱,故还要看数/模转换器是否自带放大器,而波形的产生和相关波形的切换和控制调节频率通过相应的程序来实现。当然还要对控制这一系列有序执行提出问题:
各级标题按照模板要求进行修改
硬件部分
软件部分
1)函数选择开关量(输入设备接口)
2)怎样描述这四个函数波形
3)波形输入到输出的转换(即数/模转换)
4)波形的输出,怎样观察输出的波形,四种波形的切换
5) LED灯显示数字代号
:
:
根据题意要求及分析,本程序中用到的硬件器件为:
数/模转换器选用National Semiconductor的DAC0832;
选择8255A作为CPU与DAC0832之间的并行接口芯片。
用四个键盘进行四种波形的切换
用LED显示代表波形的数字
:
根据题义要求及分析,本程序中软件实现部分为:
程序采用键盘控制显示四组波段的方式。
首先对8255A进行初始化,方式0,显示过程中判断PC口高四位值。若为EF,则显示为0锯齿波;若为DF,则显示为1为脉冲波;若为BF,则显示为2为三角波;若为7F,则显示为3方波,四个数据分别对应四个按键被按下时的状况。由上述的判断结果,根据条件进行跳转。
:
图1 8255与8086/8088连接图
片选信号
寄存器
地址
IOY3
A口
60H
B口
61H
C口
62H
控制口
63H
表1 端口及其地址表
图2 DAC0832连接图
图3 数码管图图4 按键图
:
表2 程序流程图
程序源代码:
STACK SEGMENT STACK
DW 64 DUP (?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START: MOV AL,88H ;写入控制字
OUT 63H,AL
MOV AL,00000001B ;置PC0为高电平
OUT 63H,AL
MOV AL,00000011B ;置PC1为高电平
OUT 63H,AL
MOV AL,00000101B ;置PC2为高电平
OUT 63H,AL
MOV AL,00000111B ;置PC3为高电平
OUT 63H,AL
MOV AL,00001001B ;置PC4为高电平
OUT 63H,AL
MOV AL,00001011B ;置PC5为高电平
OUT 63H,AL
MOV AL,00001101B ;置PC6为高电平
OUT 63H,AL
MOV AL,00001111B ;置PC7为高电平
OUT 63H,AL
RD: IN AL,62H
CMP AL,0EFH ;如果是EFH,则跳转到START1
JE START1
CMP AL,0DFH ;如果是DFH,则跳转到START2
JE START2
CMP AL,0BFH ;如果是BFH,则跳转到START3
JE START3
CMP AL,7FH ;如果是7FH,则跳转到START4
JE A
A:JMP START4
START1: MOV AL,40H ;锯齿波程序
OUT 61H,AL ;向PB口送数据,使数码管显示‘0’
MOV AL,00000000B