微机原理与接口技术课程设计之三角波发生器.docx

上传人:b****6 文档编号:6091971 上传时间:2023-01-03 格式:DOCX 页数:20 大小:75.82KB
下载 相关 举报
微机原理与接口技术课程设计之三角波发生器.docx_第1页
第1页 / 共20页
微机原理与接口技术课程设计之三角波发生器.docx_第2页
第2页 / 共20页
微机原理与接口技术课程设计之三角波发生器.docx_第3页
第3页 / 共20页
微机原理与接口技术课程设计之三角波发生器.docx_第4页
第4页 / 共20页
微机原理与接口技术课程设计之三角波发生器.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

微机原理与接口技术课程设计之三角波发生器.docx

《微机原理与接口技术课程设计之三角波发生器.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术课程设计之三角波发生器.docx(20页珍藏版)》请在冰豆网上搜索。

微机原理与接口技术课程设计之三角波发生器.docx

微机原理与接口技术课程设计之三角波发生器

课程设计任务书

学生姓名:

专业班级:

指导教师:

工作单位:

题目:

设计一简单信号发生器

初始条件:

1.选用8088CPU最小工作模式;

2.选择DAC0832芯片完成模拟信号输出,确定芯片地址范围;

3.输出三角波的电压范围为0〜+2.5V,能够实现频率调节功能。

要求完成的主要任务:

(包括课程设计工作量及其技术要求,以及说明书撰写等具体要

求)

1.查阅参考资料,自学相关可编程接口芯片的内部结构、工作方式和初始化编程

过程;

2.根据设计系统的具体功能和性能参数,明确设计目标;

3.微机基本系统及其扩展接口电路设计,绘制微机系统硬件原理图;

4.编制扩展接口电路工作的汇编源程序,绘制汇编源程序流程图,包括初始化和

监控工作程序;

5.撰写设计说明书(包括参考资料目录,字数不少于5000字)

时间安排:

序号

内容所

斤用时间(天)

1

查阅资料,学习相关芯片知识

1.5

2

系统及扩展电路硬件设计

3

3

初始化程序和应用程序设计

2

4

r相关硬件电路和程序调试

2

5

编写课程设计说明书和答辩

1.5

合计

10

指导教师签名:

2010年12月12日

系主任(或责任教师)签名:

(一)概述

设计内容及要求

本设计综合应用8088CPUD/A转换器、定时器/计数器电路,中断技术:

通过PC

机定时,产生三角波模拟信号输出,信号频率可通过PC机键盘调节。

输出电压范围在

0~2.5V之间。

课程设计要求

设计要求画出电路原理图,说明工作原理,编写程序及程序流程图。

设计目的

通过该课程的学习使学生对微机系统有一个全面的了解、掌握常规芯片的使用方法、掌握简单微型计算机应用系统软硬的设计方法,进一步锻炼同学们在微型计算机应用方面的实际工作能力。

本设计主要能够完成对制定波形的形成,可以通过输入来改变频率。

此信号发生器可以很好的运用于有需要的场合。

(二)系统总体设计

1、设计思想及方案论证

由于要求达到模拟信号波形发生,因此要由D/A转换芯片0832来来完成此项任

务,由0832形成波形的主要做法是:

先输出一个下限电平,将其保持t然后输出一

个稍高的电平,再保持t,然后重复此过程,因此需要改变0832输入数据的时间间隔

t来改变频率。

如图3-1信号发生波形图所示。

0832输入的数据的延时可以通过软件完成,也可以通过硬件完成。

由于实验要求输出的波的频率可以改变,且精确,所以选用硬件延时。

图3-1信号发生波形图

硬件延时主要由计时器8253和中断控制器8259来实现。

由8253输出的方波的高低电平,来触发8259的IR0端,8259给CPU中断信号,CPU中断来执行相应的中断子程序,中断子程序为向0832输出数据的程序,通过此程序可以产生三角波。

由于8253产生的方波的频率可以控制,所以每次中断执行波形发生程序的时间间隔可以精确控制。

以此来控制0832输出的波形频率。

功能框图,1页

2、硬件系统总体布局(画一简图)1页

3、线路图(大图)

U2

13

14

1

15

U1

F/C

EFI

REA

VCC

CSYNC

ASYNC

DY

SC

RESET

17

X1

X2

A

8284

RE

Y?

1

1.0OOM

B7

B6

B5

B4

B3

B2

B1

B0

8286

TOE

A7

A6

A5

A4

A3

A2

A1

A0

11

c

8

6

5

4

2

1

1

2

3

4

5

6

7

8

16

15

14

13

12

11

10

9

17

18

32

29

31

30

33

34

23

22

DI0

DO0

DI1

DO1

DI2

DO2

DI3

DO3

DI4

DO4

DI5

DO5

DI6

DO6

DI7

DO7

OE

STB

J48282

AD0

1

NMI

INTR

RD

WR/LOC

H~

HL)A

MN/MX

SSO

TEST

READY

8088

19

18

17

16

15

14

13

12

A8

A9A10A11A12A13A14A15

8

7

6

5

4

3

2

39

A16/S3

A17/S4

A18/S5

A19/S6

S0/DEN

S1DT/RS2IO/MALEQS0INAQS1

CLK

RESET

38

37

36

35

26

28

25

24

19

21

0987654354132

12222

20

22

27

1

012

0123456789111

AAAAAAAAAAAAA

D0D1D2D3D4D5D6”

CE

OE

PGMI

VPP—

2764

8

7

6

5

4

3

2

1

21

22

23

8

D0

D1

D2

D3

D4

D5

D6

D7

CS

RD

WFl

OUT0

GATE0

CLK0

OUT1

GATE1

CLK1

19

20

A0

A1

8253

10

11

9

13

14

15

OUT2

GATE2

CLK2

17

16

18

 

(1)据8级优先级控制,通过联级可以扩展到64级优先控制。

(2)每一级中断可由程序单独屏蔽或允许。

(3)可提供中断类型号传送给CPU

(4)可以通过编程选择多种不同工作方式。

引脚功能:

D7-D0:

双向数据线,三态,与数据总线相连。

IR7-IR0:

外设的中断请求信号输入端,输入,中断请求:

可以是电平触发,或者边缘

触发。

RD读命令信号,输入,低电平有效,用来控制数据由8259A读

WR写命令信号,输入,地点平有效,用来控制写到8259

CS:

片选信号,输入,通过译码器与地址总线相连

INT:

向CPU发出中断请求信号,输出,与CPU的INTR相连

INTA:

CPU给8259的中断响应信号,输入。

4.1.2DAC0832:

NSC公司生产的DAC0832,是一种内部带有数据输入寄存器的8位D/A转化器,采用

CMO工艺制成,芯片内部R-2R梯形电阻网络,用于对参考电压产生的电压进行分流,完成模数转换,转换结果以一组差动电流IOUT1OUT2输出。

0832具有8位分辨率,如果输出电压范围在0~5V间的话,当输入数字量为0时,输出电压为0V;输入数字量为255(0FFH)时,输出电压为5V。

各引脚的功能分述如下:

Vref:

参考电压输入端。

根据需要一定大小的电压,由于它是转换的基准,要求数值正确,稳定性好。

Vcc工作电压输入端。

Agan为模拟地,DGAN为数字地。

在模拟电路中,所有的模拟地要连在一起然后将模拟地,数字地连接到一个公共接地点。

DI7-DI0:

数据输入。

可直接连接到数据总线。

IOUT1OUT2互补的电流输出端。

为了输出模拟电压,需加转换电路。

4.1.38253

inter8253是一种能够完成定时和计数的芯片,8253内部有3个16位计数器通道,

通过对他们编程,每个计数器可以按照6种工作方式工作,并且都可以按2或10进

制格式进行计数。

,最高频率为2MHZ8253还可以用于许多其他场合,比如可作编程方波发生器,分频器等。

引脚:

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引脚上的门控制信号,决定他是否允许计数。

4.1.48284

时钟发生器8284的引出线如图6-8所示。

其引线功能叙述如下:

CLK:

为CPU提供时钟信号,频率为4.77MHz

READY:

接CPU的READY引脚

RESET:

接CPU的RESET引脚,为CPU提供复位信号

PCLK:

为外设提供时钟信号,频率为2.38MHzVCC:

工作电压输入端。

有一些引线在使用中没有用到,如OSCEFI等可空着不接。

外设或其他电路

板上的速度慢的器件在工作过程中需要CPU等待时,是通过向8284的RDY1端提

供控制信号来实现的。

4.1.58282

4.1.68286

4.1.66264

4.1.72764

5、译码方式及地址范围计算

包括存储器地址(RAM和ROM勺地址)和端口地址。

端口地址有8259(两个地址),8253(四个地址),0832(—个地址?

)均需译码器译码分配CS

(三)接口扩展电路设计

接口电路的设计、原理和工作方式

使用8253产生定时中断,故8253使用方式3以产生方波信号,以方波信号的上升沿触发中断达到定时目的。

8253的计数初值根据所需输出地三角波频率计算得到。

8253的输入时钟频率来

自8284芯片的PCLK引脚,频率为2.38MHz。

8259芯片在此次应用中只负责产生定时中,没有设置从片及,所以使用一般嵌套,根据8253

的输入波形,选择上升沿触发方式。

列写端口地址表

8259的工作方式及初始化程序

MOVDX,8259AD0;初始化8259,设置为单片,上升沿触发,完全

MOVAL,00010011B;非自动EOI方式,03H

OUTDX,AL

MOVDX,8259AD1

MOVAL,10000000B..ICW2,10H,中断向量码IR0——10H

OUTDX,AL

MOVAL,00000001B..ICW4,01H,

OUTDX,AL

8253的工作方式及初始化程序

OUTDX,ALMOVDX,316H初始化8253,计数器地址,写计数器1

MOVAL,01110110B;通道1方式字,方式3,二进制记数

OUTDX,AL方波发生器,用以产生中断

MOVDX,312H写计数值

••计数值弹到CX

••写低八位

POPCX••…

MOVAL,CL

OUTDX,AL

MOVAL,CH写高八位

OUTDX,AL

0832的工作方式及初始化程序

工作方式单缓冲模式,没有初始化程序

(四)系统程序设计

1流程图主要进行系统初始化和外围接口芯片初始化,及开中断,等待中断产生,

其流程图所示。

三角波频率控制的实现

计时器初始输入频率来自8284芯片PCLK引脚,频率为2.385MHz。

本程序要实现三角波

控制,每周期取步进值为511次,每步进值增1或减1。

前半周期为增1,后半周期减1,输出

量分别由0到255和255到0。

设分频后频率为F,输入频率为f,步进值为N,三角波周期为T,中断间隔t,计数初值CX

有:

CX*1/F=t

Nt=T

T=N*CX/F

CX=F*T/N=F/(N*f)

故在本程序中,CX=2.385MHz/(511*f)=4667/f

由于CX取值在1~25536之间,所以f可取0.18HZ~4667.3HZ,本程序供用户可选频率为100Hz~4KHz

2、中断向量表

中断向量地址指针

8259A引脚

中断类型号

优先级

中断源

00020H

主片IR0

08H

0

定时器

00024H

主片IR1

09H

1

键盘

3、程序清单

DATASEGMENT定义数据段

MESSDB'输入发生频率(100Hz~4000Hz)',ODH,OAH,'$'•提示信息

CUNCHUDB?

暂存量存储位置

JISHUDW0

PINLVDW?

DATAENDS

STACKSEGMENTSTACK堆栈段定义

STDW20DUP(?

)••堆栈空间大小为20字节

TOPLABELWORD…定义栈顶指针为TOP

STACKENDS堆栈段结束

CODESEGMENT-..定义指令段

ASSUMECS:

CODE,DS:

DATA,SS:

STACK,ES:

DATA初始化段基地址

MAINPROCFAR定义远调用MAIN函数

MOVAX,DATA..初始化段基地址

MOVDS,AX

MOVAX,STACK

MOVSS,AX

MOVAX,CODE

MOVCS,AX

MOVDX,8259AD0;初始化8259,设置为单片,上升沿触发,完全

MOVAL,00010011B;非自动EOI方式,03H

OUTDX,AL

MOVDX,8259AD1

MOVAL,10000000B.」CW2,10H,中断向量码IR0——10H

OUTDX,AL

MOVAL,00000001B.」CW4,01H,

OUTDX,AL

LEADX,MESS;输入频率

MOVAH,09H

INT21H

LEADX,PINLV将输入频率存到PINLV中

MOVAH,01H

INT21H

XORCX,CX.CX清零

XORAX,AX

MOVBX,10

KEY:

MULBX乘法。

AX=BX*AX

MOVCX,AX

MOVAL,[DX]

CMPAL,0DH••输入字符等于回车?

JEENTER相等则跳至UENTER

SUBAL,30HACSII变成数字

ADDCX,AL

MOVAX,CX

MOVPINLV,CX将算得的频率值存在PINLV中

INCDX

JMPKEY

ENTER:

MOVAX,4667•将输入的频率计算,得出写入8253的时间数

MOVCX,PINLV

MOVBX,CX

DIVBX

MOVCX,AX

PUSHCX

•-压栈

MOVDX,316H

初始化8253,计数器地址,写计数器1

MOVAL,01110110B

;通道1方式字,方式3,一进制记数

OUTDX,AL

方波发生器,用以产生中断

MOVDX,312H

写计数值

POPCX

••计数值弹到CX

MOVAL,CL

..写低八位

OUTDX,AL

MOVAL,CH

…写冋八位

OUTDX,AL

MOVCUNCHU,0H

;将存储单元清零

MOVJISHU,0H

MOVDX,OFFSETSANJIAOBO

取偏移地址赋DX

MOVAX,SEGSANJIAOBO••…

……•取段地址

MOVDS,AX

••段地址赋DS

MOVAL,08H

.•…中断向量08H

MOVAH,25H

••…DOS的功能调用,设置中断程序入口地址

INT21H

CIR:

JMPCIR…无限循环程序,等待中断

RET

MAINENDP

三角波子程序

SANJIAOBOPROCNEAR

PUSHAX

PUSHBX

PUSHCX

PUSHDX

STI

MOVDX,228H•…MOVAL,CUNCHU

OUTDX,CUNCHUCMPJISHU,511JAECN

JMPCM

CN:

MOVJISHU,0

CM:

CMPJISHU,OFFH-

JAEJINAG

JMPSHENG

JIANG:

DECAL

MOVCUNCHU,ALJMPINTRETURN-SHENG:

INCAL

MOVCUNCHU,ALJMPINTRETURN-INTRETURN:

CLI

POPDX

POPCX

POPBX

POPAX

MOVAL,20H……OUT20H,ALIRET

SANJIAOWOENDP

CODEENDS

••保护现场

..开中断

••0832地址

..步进值达到最大值时,跳转CN

•没到最大值,跳转CM

.步进值与255比较

步进值大于255时,跳转到下降沿程序

••否则跳到上升沿程序

•下降沿程序

..去往结束中断

•上升沿程序

去往结束中断

•恢复现场

••EOI命令

••结束中断

(五)参考资料

[1]周荷琴•微型计算机原理与接口技术•合肥:

中国科学技术大学出版社,2004.12

[2]刘全忠•汇编语言实用程序•天津:

天津大学出版社,1991.6

 

3高福祥,张君.接口技术.沈阳:

东北大学出版社,1999.12

4葛玻.微机接口及实际应用.武汉:

武汉理工大学出版社,2000.9

5冯博琴,吴宁.微型计算机原理及接口技术.北京:

清华大学出版社,2007.8

(六)总结

在这两周的实习中,我再次的巩固了微机课中所学的知识,了解了各种芯片的的用法,各个接

口的名称,作用。

明白了微机系统在生产生活中最基本的用处

在两周的实习中,我也感到所学的知识不是很深,动手的能力不是很强,面对问题解决问题的能力还有待加强。

总的来说,《微型计算机原理与接口技术》对于我以后学习,工作的影响是很

大的。

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

当前位置:首页 > PPT模板 > 中国风

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

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