硬件课设YHWord文档格式.docx

上传人:b****6 文档编号:16771734 上传时间:2022-11-26 格式:DOCX 页数:27 大小:705.49KB
下载 相关 举报
硬件课设YHWord文档格式.docx_第1页
第1页 / 共27页
硬件课设YHWord文档格式.docx_第2页
第2页 / 共27页
硬件课设YHWord文档格式.docx_第3页
第3页 / 共27页
硬件课设YHWord文档格式.docx_第4页
第4页 / 共27页
硬件课设YHWord文档格式.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

硬件课设YHWord文档格式.docx

《硬件课设YHWord文档格式.docx》由会员分享,可在线阅读,更多相关《硬件课设YHWord文档格式.docx(27页珍藏版)》请在冰豆网上搜索。

硬件课设YHWord文档格式.docx

本系统的波形选择和幅值选择均采用软件选择方式,由不同的按键来选择不同的波形,由文本框的输入来确定波形的频率。

如果没有输入频率,则为缺省值。

然后根据不同波形和幅值调用不同的函数计算后的数据存入数组data(255)(存放有0~255单元共256个数据),一个周期的波形数据,供波形存储阶段使用分别存入SRAM6264的对应的256个单元。

本系统的频率调节采用改变地址产生器的地址信息,输出速率的方法。

使用一片定时器/计数器8254,初始化使之工作在方式3,使其成为一个方波速率发生器,将8254的输出做计数器的输入脉冲。

改变8254的计数初值,即可改变输出波形的频率。

软件是控制硬件系统工作的一部分,起到人机对话的作用。

拟采用美国Microsoft公司出品的VisualBasic6.0或者VisualC++6.0进行编写人机对话的界面。

其实VB和VC他们各自均有特点。

VB和VC都是一种可视化的面向对象的高级程序设计语言,以其各自的优点深受广大Windows用户的青睐。

其关键不同是VC具有直接对硬件接口进行操作的函数,并且可以用汇编语言编写,但是做起界面来就比较复杂一些;

而VB没有直接访问硬件端口的功能,不过,可以通过找一个或者自己编写一个控制输入输出的连接程序,或增加调用一个控制硬件的动态链接库(DynamicLinkLibrary——DLL)文件,而且VB使用起来非常方便,能够大大减少程序员的编程工作量。

因此,本课程设计最后使用VB来进行设计。

三、设计电路分析和完整电路图

3.1控制器的接口控制电路

脱机前:

在控制器的作用下,由CPU的三总线完成波形数据写入6264中。

脱机后:

在控制器的作用下,由分频电路供给地址,将被地址产生器选中的存储单元中的数据送到波形变换器,波形变换器再将数据进行D/A转换。

由上述工作原理可知:

为了实现波形写入和输出,控制8254,SRAM6264和374的微型计算机还要控制写入和输出的切换。

74LS138的

用来作为SRAM6264的片选信号,

作为可编程计数器8254的片选信号,

用来作为地址锁存器74LS374的CLK信号。

由74LS138的

控制74LS74的CLK信号,74LS74的Q端与74LS374的

、第一个74LS244的1

相连,而它的

与第一个74LS244的2

和第二个74LS244的1

和2

相连。

切换控制可由74的输出Q和

来实现,Q=0时,可以通过接口卡对SRAM6264写入数据,即波形写入。

=0时,电路将地址控制权交给了地址产生器,此时将被地址产生输出地址选中的地址单元数据送到波形变换器,即波形输出。

3.2波形存储器电路

波形存储器电路的核心电路是SRAM6264,由微型计算机及其接口控制电路对其进行写入。

由于它的地址线和片选信号

、输出允许信号

、写允许信号

3根控制线要在微型机算计与地址产生器之间切换,因此,上述总线要通过三态缓冲器74LS244与微型计算机相连。

SRAM6264的

可以不与微型计算机的

为了调试该电路,应从波形存储器中将写入的数据读出,检查写入的数据是否正确,所以将SRAM6264的

接了

SRAM6264有

~

共11根地址线,微型计算机的接口保护卡也引出

共16根地址线,其中

这两根地址线要用于I/O端口地址译码。

SRAM6264的高地址接地,

~

为低电平。

而其他地址线

是采用间接端口地址译码电路8D触发器74LS374的输出来选择。

这样,SRAM6264只使用了256个单元。

波形存储器写入电路(波形存储器与微型计算机的连接电路)如图3-2所示。

只要接口控制电路对74LS374的

和74LS244的1

输出低电平,即可实现微型计算机对SRAM6264的写入和读出。

将地址存储器中的波形数据送波形变换器,不能采用程序传送的方式,因为程序传送速度太低。

输出波形存储器中的波形数据要提高SRAM6264的地址线变化的速率。

所以要自行设计一个地址产生器,由地址产生器来控制SRAM6264的地址线和

这3根控制线。

在进行波形输出时,接口控制电路将SRAM6264的上述信号线切换给地址产生器,SRAM6264中的波形数据在地址产生器的控制下脱机输出。

在进行波形输出时,仅对SRAM6264执行读操作,不执行写操作,为简化地址产生器的电路,可将

接高电平,

接低电平,即SRAM6264工作在常选通的输出状态。

波形输出电路如图3-3所示。

只要接口控制电路对74LS244的

输出低电平,即可将SRAM6264中的波形数据在地址产生器的控制下进行输出。

3.3地址产生器电路

地址产生器的核心器件是使74LS393计数器,74LS393每输入一个脉冲,其输出增1,使得SRAM6264的地址产生增1的变化,即可将SRAM6264的数据逐个单元地进行输出。

改变计数器输入脉冲的速率,即可实现SRAM6264地址线增1变化的频率,也就是可改变SRAM6264的输出速率,即改变输出波形的频率。

使用一片定时器/计数器8254,初始化它工作在方式3,使其成为一个方波速率发生器,将8254的输出做计数器的输入脉冲。

改变8254的技术处置,即可改变输出波形的频率。

3.4波形变换器及放大输出电路

波形变换器的核心电路是D/A转换器,它将波形存储器中的波形数据转换为模拟量,供放大电路进行输出。

D/A转换器选用DAC0832,使其工作在直通方式。

写入波形时,将DAC0832的

接高电平,DAC0832不对数据线上的数据进行转换,即无输出信号。

波形输出时,将DAC0832的上述4个信号接低电平,DAC0832将数据线上的数据直通输出。

由于接口保护卡上74LS245的隔离作用,波形输出时的数据线上的数据也不干扰微型计算机的数据总线,因而整个系统的数据线没有添加三态缓冲器来切换。

DAC0832是电流型输出的数模转换器件,在输出端需要借以运算放大器使其输出模拟电压信号。

为简化电路设计,放大器仅采用单一5V电源的放大电路。

放大器应征且选择工作点,并加滤波处理,减小失真。

本设计中使用的运放为NE5532。

3.5完整电路图

四、设计软件分析和完整程序清单

本系统应用软件的结构框图如图4-1所示。

图4-1波形发生器软件设计框图

完整的VB程序如下:

PrivateDeclareSubOutportLib"

vbio32.dll"

(ByValportIDAsInteger,ByValnByteAsInteger)

PrivateDeclareFunctionInportLib"

(ByValportIDAsInteger)AsInteger

PrivateDeclareSubSleepLib"

kernel32"

(ByValdwMillisecondsAsLong)

PrivatexxAsInteger

PrivatemaxVAsInteger

PrivatemaxFAsDouble

PrivateoriginalAsInteger

PrivatetAsInteger

Privatedata(0To255)AsInteger

PrivateSubCommand4_Click()

Fori=0To127

data(i)=0

Nexti

Fori=128To255

data(i)=255

Out

EndSub

PrivateSubForm_Load()

xx=0

maxV=255

maxF=500000

Picture1.AutoRedraw=True

PrivateSubgetVal(i)

Ifi<

>

0Then

ret0

Ifdata(i-1)<

retgetVal(i-1)

retdata(i-1)

PrivateSubOut()

Fori=0To255

data(i)=Text1.Text*(data(i))/5

Ifi>

Ifdata(i)<

1Then

data(i)=data(i-1)

EndIf

EndIf

DimfAsDouble

f=(maxF/Text3.Text)

'

f=f/256'

recalcthefluence

MsgBoxf

Fori=0To255'

writedata

Outport&

HB840,i

HB800,data(i)'

disablereaddata

data(i)=0'

cleardata

Sleep(5)

HB863,&

H16'

set825400110111

DimtAsInteger

t=f

HB860,t

HB880,0

PrivateSubCommand1_Click()

DimtAsString

t=t&

"

&

data(i)

MsgBoxt

PrivateSubCommand10_Click()

Fori=0To1000000

HB840,255

PrivateSubCommand2_Click()

PrivateSubCommand3_Click()

Picture1.Cls

PrivateSubCommand5_Click()

DimpiAsDouble

pi=3.14159265358979

data(i)=maxV*Sin(2*pi*i/256)/2+maxV/2

Next

PrivateSubCommand6_Click()

Fori=0To5

HB800,i

PrivateSubCommand7_Click()

HB840,1'

read1addr

Inport(&

HB800)

PrivateSubCommand8_Click()

Fork=0To1000

HB800,i'

Nextk

PrivateSubCommand9_Click()

Inport(&

PrivateSubLabel3_Click()

PrivateSubPicture1_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)

DimstepAsInteger

step=Picture1.Width/256

DimvolAsInteger

vol=255

IfButton>

IfX>

xxThen

DimiAsInteger

i=X*255/Picture1.Width

data(i)=255-Y*255/Picture1.Height

xx=X

Picture1.PSet(X,Y)

PrivateSubtri_Click()

Fori=0To127

data(i)=i*2

Nexti

data(127+i)=255-i*2

Out

窗口界面如下所示:

任意轨迹波形如下所示:

五、调试故障的检测与分析

5.1实验扩展板的检测

在进行硬件调试之前,首先要对接口卡及插件板的各个信号进行检测,排除故障,以保证接口及应用电路调试的顺利进行。

(1)检测方法

将插件板通过2芯,4芯和8芯的电缆与微机原理实验箱的各接口相连,运行检测程序,用示波器检测插件板上所有信号线是否对位接通、信号是否正常。

如发现故障,首先应检查插件板上该位连线是否接错,是否开路,是否短路。

如果插件板上排针上该位连线已接通,再检查2芯、4芯和8芯的各电缆是否接通,查出故障,予以排除。

(2)检测程序

要在示波器上观察到插件板上个信号的波形,必须执行循环程序。

如果只执行几条指令,则由于计算机速度很高,在示波器上无法观测到信号波形。

计算机执行无控制的循环程序后无法退出循环,称之为“死循环”。

为防止“死循环”,必须在循环程序内插入退出循环的命令,一般采用系统11号功能调用来退出循环。

11号功能调用用来检查键盘有无输入,无输入则将0送入AL;

有输入则将FFH送至AL。

在循环程序中嵌入11号功能调用,用来判别有无键入,即判断AL的内容。

有键入则退出循环,无键入则继续循环。

使用DEBUG的汇编命令建立的检测程序如下:

DEBUG

-a

0B03:

0100MOVDX,B880

0103INAL,DX

0104MOVAL,F

0106OUTDX,AL

0107MOVAH,B

0109INT21

010BCMPAL,0

010DJE100

010FINT20

0111

-n

-rcx

cx0000

:

f

-w

Writing000Fbytes

在调试硬件时经常要使用该程序。

(3)地址线、数据线及有关控制信号的波形

i.端口选择信号(IOY4)

执行检测程序时,由于反复执行OUT和IN指令,不断地选通B880H地址且输出

信号,故IOY4应为负脉冲选通信号,如图3-6所示。

注意:

测试所有的数字信号,要么为“1”,要么为“0”。

若出现非“1”、非“0”的不确定状态,则为非正常信号,由此可找到故障。

图5-1选通信号波形

ii.地址线信号(

执行测试程序时,由于反复选通地址B880H,不断地输出

,选通时

为0,不选通时为1,所以,

有如图3-7所示的波形输出。

若将MOVDX,B880改为MOVDX,B881,再执行检测程序,则

的输出波形不变,

的输出波形变为一条直线(高电平)。

图5-2地址线信号波形

iii.数据线信号(

执行检测程序时,在IOY4为低电平时才允许输出(或输入),平常为隔离状态,所以

的信号波形如图3-8所示,

为1电平(高电平)。

若将MOVAL,F改为MOVAL,F0,再执行检测程序,则

有如图3-8的波形,

为高电平。

图5-3数据线信号波形

iv.I/O写信号(

)和I/O读信号(

执行检测程序时,由于反复执行OUT指令和IN指令,故

都有脉冲输出,脉冲波形如图3-9所示。

图5-4

信号波形

v.1MHz信号

1MHz的震荡信号为方波信号。

5.2硬件调试时的注意事项

电路在通电前,首先必须检查电源与地线之间的电阻值,在排除短路现象后才能进行通电调试,长时间短路可能会烧坏主机电源。

将设计好的电路安装在插件板上,一般不可能一次成功。

连线错误引起的故障占很大的比例,所以在设计好电路后,进行硬件电路调试是非常重要的步骤。

通过调试,可排除错线,漏线、短路、虚接等故障,保证电路的软硬件联调顺利进行。

硬件电路调试一般采取分级调试,可以从前往后,亦可由后向前。

下面介绍硬件电路的调试方法:

①根据设计要求,编写硬件调试程序。

②首先测试每个集成块Vcc和GND两端是否有+5V电压,然后执行调试程序,用示波器检测集成块引脚上有关的地址线、数据线、控制线的信号是否正常。

若出现异常现象,则仔细沿该连线逐一检查,可发现该连线因错接、漏接、短路或被后面电路接错而锁死,导致信号波形不正常。

断电后排除其故障。

5.3控制器的接口电路的调试

要想电路工作正常,74LS74必须工作正常,在DEBUG下用O和I命令测试74LS74。

程序如下

-OB8980

-OB8981

74LS74的CLK地址为B898H,Q端接示波器,当执行第一条命令,Q端应输出高电平,当执行第二条命令时,示波器应输出低电平。

如果不是这种情况,说明74LS138和74LS74的连线有问题,需要重新查线。

5.4调试SRAM6264

调试6264的关键是看它每个单元能不能正确读写数据,这个测试程序先写入256个数据,紧接着再读出刚刚写进去的256个数据,将他们进行对比,如果写入的预读出的完全一致则说明SRAM6264工作正常;

如果有一部分不一样说明可能部分数据线或地址线有连错的或SRAM6264的部分单元已损坏;

如果完全没有输出说明SRAM6264没有选通,此时需要仔细检查SRAM6264和与之相连的电源线和控制线是否正确。

调试程序如下:

stacksegmentstack'

satck'

dw32dup(?

stackends

datasegment

I1DB'

WriteandRead6264:

0ah,0dh,'

$'

IBUFDB32DUP(31H)

DB32DUP(32H)

DB32DUP(33H)

DB32DUP(34H)

DB32DUP(35H)

DB32DUP(36H)

DB32DUP(37H)

DB32DUP(38H)

OBUFDB256DUP(?

),'

dataends

codesegment

beginprocfar

assumess:

stack,cs:

code,ds:

data

pushds

subax,ax

pushax

movax,data

movds,ax

MOVAH,9

MOVDX,OFFSETI1

INT21H

CALLW6264

CALLR6264

MOVDX,OFFSETOBUF

ret

W6264PROC

MOVAX,0

MOVBX,0

MOVCX,256

MOVDX,0B898H;

74LS74

OUTDX,AL

AG1:

PUSHAX

MOVDX,0B890H;

74LS374

OUTDX,AL

MOVDX,0B880H;

SRAM6264写地址

MOVAL,IBUF[BX];

写数据

INCBX;

调整数据单元

POPAX

INCAL;

调整地址单元

LOOPAG1

RET

W6264ENDP

R6264PROC

AG2:

MOVDX,0B890H

MOVDX,0B880H

INAL,DX;

读数据

MOVOBUF[BX],AL

INCBX

INCAL

LOOPAG2

R6264ENDP

beginendp

codeends

endbegin

也可以在DEBUG下用输入/输出命令I/O来检查SRAM6264的读写功能,判断SRAM6264的好坏。

具体调试过程如下:

-OB8900

-OB88056

-IB880

56

这表明000单元的内容被写入后,读出的内容与写入的内容相同,则SRAM6264是好的。

5.5调试地址产生器

(1)8254工作原理

当计数

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

当前位置:首页 > 法律文书 > 调解书

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

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