微机系统与接口技术实验指导书_第1页
微机系统与接口技术实验指导书_第2页
微机系统与接口技术实验指导书_第3页
微机系统与接口技术实验指导书_第4页
微机系统与接口技术实验指导书_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微机系统与接口技术

实验指导书

东南大学电子科学与工程学院

2008年2月

目录

一、概述...........................................................5

二、实验装置基本组成...............................................6

三、实验台结构.....................................................12

I、I/O地址译码电路......................................................12

2、总线插孔..............................................................12

3、时钟电路..............................................................12

4、逻辑电平开关电路.......................................................12

5、LED显示电路.........................................................13

6、七段数码管显示电路..................................................13

7、单脉冲电路............................................................14

8、逻辑笔................................................................14

9、维电器及驱动电路....................................................14

10、复位电路.............................................................14

11、接口集成电路.........................................................15

12、跳线开关(JP).............................................................15

13、+5V电源插针........................................................15

14、通用集成电路插座.....................................................15

15、数字电路实验区.......................................................15

16、接线端子.............................................................15

17、50线总线插座信号安排...............................................16

18、直流电源开关(KI)和存储器地址选择开关(K2).....................16

19、使用外加直流电源注意事项..........................................16

2()、高位地址选择电路....................................................16

四、实验......................................................................18

实验一、I/O地址译码.......................................................20

实验二、简单并行接口......................................................21

实验三、可编程定时器/计数器(8253)..........................................23

实验四、可编程并行接口(一)(8255方式())...............25

实验五、七段数码管.........................................................26

实验六、竞赛抢答器.........................................................29

实验七、交通灯控制实验....................................................31

实验八、中断...............................................................32

实验九、可编程并行接口(二)(8255方式1).................................36

实验十、数/模转换器.......................................................39

实验十一、模/数转换器.......................................................39

实验十二、步进电机控制实验.................................................60

实验十三、数字温度检测实验.................................................79

附录1、查看PCI卡资源的方法........................................97

附录2、汇编语言使用方法...........................................97

一、概述

“TPC-2005通用32位微机接口(PCI)实验系统”是清华大学科教仪器厂推出的微机硬件实验

教学设备。该教学实验系统具有实验项目多、内容全面、开放能力和灵活性强等特点。它不仅适

用于一些典型的微机接口教学实验,而且还是一个为学生在提供了锻炼学生动手能力,发挥创造

才能和开展创新活动的计算机硬件平台。该系统主要有以下特点:

★实验电路连接采用了国家专利、获奖产品“自锁紧”插座及导线,消除了连线接触不良

的现象。

★电路设计中增加了多项保护措施,可有效的避免由于学生实验时错接、错编程损坏主机或

接口集成电路的现象。

★实验台•上增加了逻辑笔、通用IC插座等电路。可作为数字电路实验仪器使用,也可以用于

学生毕业设计、科技创新活动及科研开发。

仪器硬件包括接口卡、实验台(箱)两部分组成,两者之间通过50线扁平电缆相连。接口卡

可以插入PC系列微机中任意一个PCI扩展插槽,它的主要功能是将与实验有关的总线信号加以驱

动后引到实验台上,同时引出信号还有与“中断”和“DMA”实验操作有关的信号及+5V、+12V、

T2V电源。实验台上设有I/O地址译码电路、总线插孔、接口实验常用集成电路、外围电路及通

用IC插座等部分组成。外围电路包括逻用电平开关电路、1ED显示电路、时钟电路、单脉冲电路、

逻辑笔、复位电路、七段数码管显示电路、基本门电路、维电器及步进电机、小直流电机的驱动

电路。

二、实验装置基本组成

(1)硬件:PC机;PCI接口卡;实验箱;50线扁平电缆:自锁紧导线。本实验装置在PC

系统中的位置如图所示(虚线框内):

(2)软件:DOS操作系统的汇编系统;TPC-2003A集成开发环境。

二级

三、实验平台结构CPU缓存

1、I/O地址译码电路

如图-3所示,地址空间cofuj-+zio夕短少vc、其地址分别是280H〜

总线

287H:288H〜28FH;290H~\p“…飞HOST?2B0H〜2B7H:2B8H〜

2BFH,8根译码输出线在实验台“I/O©广处分别由“自锁紧”插孔引出,供实验选用。

2、总线插孔-----

采用插座在P主存);地址总线一不一

显卡主桥网卡

读、写信中断iiA请求怡&DKW;山A响应信号、

信号,供学可下各种接口实验电疗用。

3、•我1由蚣

PCI总线

验使用〉

4、逻辑电'①

如图-5所;T声卡下彳扩展总线〜K0,i开关拨至I“1”他J酗部关断升,输出高

平,电路中串投迩仍殿扩艇路不百择

电平,向下打至,开桥J1mH

1

同+5Y、GND相连,可有效地防k声J不IL、误缔程损坏集成电路理%

5、LED显和路

如图《□

ISA总线ISA-like50芯教学实验总线

为“1”时MT,为“0”盯火。

6、七段数码管显示电路

TPC-2005A

微机实验箱

I_______________________________________

如图-7所示,实验台上设有两个共阴极七段数码管及驱动电路,段码为同相驱动器,位码

为反相驱动器,从段码与位码的驱动器输入端(段码输入端:a、b、c、d、e、f、g、dp,位码

输入端:si、s2)输入不同的代码即可显示不同数字或符号。

7、单脉冲电路

如图-8所示,采用RS触发器产生,实验者每按一次开关即可以从两个插座上分别输出一个

正脉冲及负脉冲,供“中断”、“DMA”、“定时器/计数器”等实验使用。

8、逻辑笔

如图-9所示,当输入端Ui接高电平时红灯(D2)亮:接低电平时绿灯亮。

9、继电器及驱动电路

如图10所示,实验台上设有一个+5V直流继电器及相应的驱动电路,当其开关量输入端

输入数字量“1”时,继电器动作:常开触点闭合、常闭触点断开。通过相应的实验使学生了解

开关量控制的一般原理。

10、复位电路

如图T1所示,能在上电时,或按下复位开关S2后产生一个高电平的复位信号供8255、8251

等接口芯片使用。

11、接口集成电路

实验台上有微机原理硬件实验最常用接口电路芯片,包括:可编程定时器/计数器(8253)、

可编程并行接I」(8255)、数/模转换器(DACO832)、模/数转换器(ADC0809),这里芯片与CPU

相连的引线除片选信号CS外都已连好,与外界连接的关键引脚在芯片周围用“自锁紧''插座引出,

供学生实验时使用。其中数/模转换器附有双极性输出,模/数转换器附有双极性输入插座。具体

电路可见下面重验说明.

12、跳线开关(JP)

实验台上共有5个跳线开关,其中Ja、Jb、Jc在实验台的左上角,50线总线插座的左方。

Ja用来选择用主机电源还是用外加电源的,当用主机电源时,应将JA上+5V、+12V、-12V三个短

路片插好。若想使用外加电源,必须首先将JA上的三个短路片全部拔掉,才能将外接电源加入。

JB和JC是在使用ISA卡时来选择实验类型的,I/O实验时JB、JC上的短路片都应插在标有“T/O”

的位置。做存储器实验时,短路片应插在标有“MEM”的位置。做DMA实验时JB应插在“I/O”位

置,JC应插在DMA位置。实验台出厂时短路片在I/O实验位置。

实验台上另外两个跳线开关为JP2和JP3,在实验台的左下角,分别用于模/数转换器模拟量

输入极性选择,将JP2的1、2短路时IN2(J2)可输入双极性电压(一5V〜+5V),2、3短路为

单极性(0〜+5V),JP3用于选择IN1的输入极性,方法与JP2相同。

13、+5V电源插针

为了减少主机+5V电源的负担和各主要芯片的安全,在主要接口芯片的左上角都有相应的电

源连接插针(标记为+5V)当实验需要该芯片时,用短路块短接插针即可接通+5V电源。对用

不到的芯片可将短路片拔掉,以确保芯片安全。

14、通用集成电路插座

实验台上设有4个通用数字集成电路插座,其中插座A、B为20P,插座D为40P,插座D可

以插入一个24〜40脚的集成电路芯片或者2个8〜20脚的集成电路芯片。每个插座引脚附近都有

相应的“自锁紧”插座,部分实验(简单并行接口、DMA、串行通讯、集成电路测试)电路是利用

这些插座搭试的。要求高的学校可以让学生自己搭试更多的实验,以提高学生动手能力。利用这

些插座可以开发新的实验,也可以进行数字电路实验,及学生毕业设计。自锁紧插座插入导线时,

应稍加力并延顺时针方向旋转一卜,才能保证接触良好,拔出时,应先逆时针方向旋转待插头完

全松开后,再向上拔出。

15、数字电路实验区

实验台上有一块数字电路实验区,设有三种基本门电路(与、或、非)及D触发器,供学生

在接口实验或数字电路实验时直接使用。

16、接线端子

实验台上设有J7,J8共2个接线端子。"用于外接用户开发的实验板,J7是一个20芯通用

插座,用于外接用户开发的实验板,本系统中8279键盘显示实验板就从此插头引出。J8为用户

外接开发实验板时外接板的片选信号端。J7各引脚信号安排如下:

17、50线总线插座信号安排

18、直流电源开关(K1)和存储器地址选择开关(K2)

实验台上有一直流电源开关(K1),在实验台的左上角。在主机电源打开后,再打开

实验台上开关K1,实验台才会加电。另外,实验台上还有一个四位拨动开关K2,在实验

台8255芯片的右方。K2是在做存储器实验时选择存储器地址使用的。

19、使用外加直流电源注意事项:

《1》用户可以使用主机电源,也可以使用外加直流电源,主机电源通过总线扩展卡引入到

文睑台的50芯插座上,再通过短路子JA接到电源开关上。该文验台山厂时是按使用主机电源

连接的。

《2》用户若想使用外加电源。必须首先将JA上的三个短路片全部拔掉,将主机电源断开,

才能将外部电源接入。

《3》用户电源通过外接电源插座J0接到实验台上。插入以前应仔细检查电源插头上各路

电源与.J0上标注的是否相同,如不相同应修改电源插头,否则会损坏实验台。

《4》外接电源插入以前,应检查各路电源输出是否正确,如不正确应修改或更换电源。

《5》以上各项都正常后,打开电源即可进行实验。

20、高位地址选择电路

如图所示,实验台上设有一高位地址选择电路,将高位地址线A19、A18、A17、

.A16与设置开关K2的设置值进行比较,都相同时MEMCS输出低电平。因此可以选择出16

个64K的地址空间。

译码表如下:

1234译码地址1234译码地址

10NONONON00000H9OFFONONON80000H

2ONONONOFF10000H10OFFONONOFF9000011

3ONONOFFON20000H11OFFONOFFONAOOOOII

4ONONOFFOFF30000H12OFFONOFFOFFBOOOOH

5ONOFFONON400001113OFFOFFONONCOOOOII

6ONOFFONOFF50000H14OFFOFFONOFFDOOOOH

7ONOFFOFFON600001115OFFOFFOFFONEOOOOH

8ONOFFOFFOFF70000H16OFFOFFOFFOFFFOOOOII

四、实验

实验一I/O地址译码

一、实验目的

掌握I/O地址译码电路的工作原理。

二、实验原理和内容

实验电路如图11所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D

触发器,74LS138为地址译码器。译码输出端Y0-Y7在实验台上“I/O地址''输出端引出,每个

输出端包含8个地址,Y0:280H〜287H,Yl:288H〜28FH,……当CPU执行1/0指令且地址在

280H〜2BFH范围内,译码楷选中,必有•根译码线输出负脉冲。

例如:执行下面两条指令,Y4输出一个负脉冲;

MOVDX,2A0H

OUTDX,AL(或INAL,DX)

执行下面两条指令,Y5输出一个负脉冲。

MOVDX,2A8H

OUTDX,AL(或INAL,DX)

利用这个负脉冲控制L7闪烁发光(凫、灭、克、灭、一),时间间隔通过软件延时实现。

三、编程提示

1、实验电路中D触发器CLK端输入脉冲时、上升沿使Q端输出高电平L7发光,CD端加低电平L7

灭。

2、山于TPC卡使用PCI总线,所以分配的10地址每台微机可能都不同,编程时需要了解当前

的微机使用那段10地址并进行设置.,获取方法请参看本书附件1文章中的介绍。

四、思考题:

I、若使用地址A2控制74LS138的E2端。试写出Y0〜Y7的地址范围。

2、试编写一段程序,使L1〜L7轮流发光循环显示并以实验验证。

实验二简单并行接口

一、实验目的

掌握简单并行接口的工作原理及使用方法。

二、实验内容

1、按下面图12简单并行输出接口电路图连接线路(74LS273插通用插座,74LS32用实验台

上的“或门”)o74LS273为八D触发器,8个D输入端分别按数据总线D0〜D7,8个Q输出端接

LED显示电路L0〜L7。

2、编程从键盘输入一个字符或数字,将其ASCH码通过这个输出接口输出,根据8个发光二

极管发光情况验证正确性。

3、按下面图13简单并行输入接口电路图连接电路(74LS244插通用插座,74LS32用实验

台上的“或门”)。74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关输出K0-K7,8

个数据输出端分别接数据总线DO〜D7。

4、用逻辑电平开关预置某个字母的ASCI【码,编程输入这个ASCH码,并将其对应字母在

屏幕上显示出来。

三、编程提示

1、卜述并行输出接口的地卅为2A8H,并行愉入接口的地加为2A0H.通过卜述并行接口电路输

出数据需要3条指令:

MOVAL,数据

MOVDX,2A8H

OUTDX,AL

通过上述并行接口输入数据需要2条指令:

MOVDX,2ADH

TNAL,DX

2、参考流程图

实验三可编程定时器/计数器(8253)

一、实验目的

掌握8253的基本匚作原理和编程方法。

二、实验内容

1.按图16虚线连接电路,将计数器0设置为方式0,计数器初值为N(NWOFH),用手动逐个

输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUTO电平变化(当输入N+1个脉

冲后0UT0变高电平)c

2.按图17连接电路,将计数器0、计数器1分别设置为方式3,计数初值设为1000,用逻辑笔

观察om输出电平的变化(频率1HZ)。

三、编程提示

1、8253控制寄存器地址283H

计数器0地址280H

计数器1地址281H

CLKO连接时钟1MH2

2、参考流程图(见图18、19):

四、思考题:

1、在实验内容一的基础匕修改程序,使屏幕上仅显示奇数(即只是显示F、D、B、9、7、5、

3、1),并以实验验证。

实验四、可编程并行接口(一)(8255方式0)

一、实验目的

掌握8255方式0的工作原理及使用方法。

二、实验内容

1.实验电路如图20,8255c口接逻辑电平开关K0〜K7,A口接LED显示电路L0〜L7。

2.编程从8255c口输入数据,再从A口输出.

三、编程提示

1、8255控制寄存器端口地址28BH

A口的地址288H

C口的地址28AH

2、参考流程图(见图21):

实验五七段数码管

一、实验目的

掌握数码管显示数字的原理

二、实验内容

1.静态显示:按图22连接好电路,将8255的A口PAO〜PA6分别与七段数码管的段码驱动输

入端a〜g相连,位码驱动输入端S1接+5V(选中),SO、dp接地(关闭)。编程从键盘输入一位十

进制数字(。〜9),在七段数码管上显示出来。

2.动态显示:按图23连接好电路,七段数码管段码连接不变,位码驱动输入端SI,SO接

8255C口的PCI,PCOo编程在两个数码管上显示“56”。

3.动态显示(选作):使用图23的电路,编程在两个数码管上循环显示“00-99”。

三、编程提示

1、实验台上的七段数玛管为共阴型,段码采用同相驱动,输入端加高电平,选中的数码管

亮,位码加反相驱动器,位码输入端高电平选中。

_____________________________________________________2、七段数码管的字型

显示字形gefdcba段码

001111113fh

1000011006h

210110115bh

310011114fh

4110011066h

511011016dh

611111017dh

7000011107h3、参考流程图(见图

811111117fh24)

四、思考题:

911011116fh

1、在共阴极条件

下,编程从键盘输入一个字母(A〜F),在七段数码管上显示出来,并以实验验证之,

2、动态显示过程中,能否不通过延时来保证56稳定显示。

3、请写出方式1输入时A口和B口的STB、IBF、INTR信号分别书由哪几个引脚提供。

4、动态扫描间隔时间的长短对显示效果有何影响?

实验六竞赛抢答器

一、实验目的

1、了解微机化竞赛抢答器的基本原理。

2、进一步学习使用并行接口。

二、实验内容

图27为竞赛抢答器(模拟)的原理图,逻辑开关K0〜K7代表竞赛抢答按钮0〜7号,当某

个逻辑电平开关置“1”时,相当某组抢答按钮按下。在七段数码管上将其组号(0〜7)显示出来,

并使微机扬声器响一下。

三、编程提示

设置8255为C口输入、A口输出,读取C口数据,若为0表示无人抢答,若不为0则有人抢

答。根据读取数据可判断其组号。从键盘上按空格键开始F•轮抢答,按其它键程序退出。

四、参考流程图(见图28)

实验七交通灯控制实验

一.实验目的

通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用。

二.实验内容

如图-29,L7、L6、L5;乍为南北路口的交通灯与PC7、PC6、PC5相连,L2、LI、L0作为东西

路口的交通灯与PC2、PCI、PC0相连。编程使六个灯按交通灯变化规律亮灭。

三.编程提示:十字路口交通灯的变化规律要求:

(1)南北路口的绿灯、东西路口的红灯同时亮30秒左右。

(2)南北路口的黄灯闪烁若干次,同时东西路3的红灯继续亮。

(3)南北路口的红灯、东西路口的绿灯同时亮30秒左右。

(4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次。

(5)转(1)重复。

四、参考流程图

四、思考题:

1、讨论延时时间的长短对显示效果有何影响?。

2、在方式I时,INTA、INTB作为中断使能信号,在输入输出时,分别有由C口的哪二位进

行置位何复位的。

实验八中断

一、实验目的

1、掌握PC机中断处理系统的基本原理。

2、学会编写中断服务程序。

二、实验原理与内容

1、实验原理

PC机用户可使用的硬件中断只有可屏蔽中断,由8259中断控制器管理。中断控制器用于接

收外部的中断请求信号,经过优先级判别等处理后向CPU发出可屏蔽中断请求。TBMPC、PC/XT

机内有一片8259中断控制器对外可以提供8个中断源:

中断源中断类型号中断功能

IRQO08H时钟

IRQ109H键盘

IRQ2OAII保留

IRQ3OBH串行口2

IRQ4OCH串行口1

IRQ5ODH硬盘

IRQ6OEH软盘

IRQ7OFH并行打印机

8个中断源的中断请求信号线IRQ0-IRQ7在主机的62线ISA总线插座中可以引出,系统已

设定中断请求信号为“边沿触发”,普通结束方式。对于PC/AT及286以上微机内乂扩展了一片

8259中断控制,IRQ2用于两片8259之间级连,对外可以提供16个中断源:

中断源中断类型号中断功能

IRQ8070H实时时钟

IRQ9071H用户中断

IRQ1007211保留

IRQ11073H保留

IRQ12074H保留

IRQ13075H协处理器

IRQ14076H硬盘

IRQ15077H保留

PCI总线中的中断线只有四根,INTA#、TNTB#、INTC#、INTD#,它们需要通过P&P的设置来

和某一根中断相连接才能进行中断申请。

2、实验内容

实验电路如图31,直接用手动产单脉冲作为中断请求信号(只需连接一根导线)。要求每按

一次开关产生一次中断,在屏幕上显示一次“TPCpcicareInterrupt",中断10次后程序退出。

三、编程提示

1.由于9054的驱动程序影响直写9054芯片的控制寄存器,中断实验需要在纯DOS的环境中才

能正常运行。这里指的纯DOS环境是指微机启动时按F8键进入的DOS环境。WINDOWS重启进入MSDOS

方式由丁系统资源被重新规划过,所以也不能正常实验。

2.由十TPC卡使用PCI总线,所以分配的中断号每台微机可能都小同,编程时需要了解当前的

微机使用那个中断号并进行设置,获取方法请参看汇编程序使用方法的介绍。(也可使用自动获

取资源分配的程序取得中断号)

3.在纯DOS环境下,有些微机的BIOS设置中有将资源保留给TSA总线使用的选项,致使在纯DOS

环境(WINDOWS环境下不会出现此问题)下PCI总线无法获得系统资源,也就无法做实验,这时需

要将此选项修改为使用即插即用。

4.在纯DOS环境下,有些微机的BIOS设置中有使用即插即用操作系统的选项,如果在使用即

插即用操作系统状态下,BIOS将不会给TPC卡分配系统资源,致使在纯DOS环境(WINDOWS环境下

不会出现此问题)下PCI总线无法获得系统资源,也就无法做实验,这时需要将此选项修改为不

使用即插即用操作系统。

5.由于TPC卡使用9054芯片连接微机,所以在编程使用微机中断前需要使用9054的中断功能,

代码如下:

movdx,ioport_cer.t+68h;设置tpc卡中9054芯片io口,使能中断

inax,dx

orax,0900h

outdx,ax

其中IOPORT一CENT是9051芯片寄存器组的I/O起始地址,每台微机可能都不同,编程时需要了

解当前的微机使用哪段并进行设置.,获取方法请参看本书结尾部分的介绍。(也可使用自动获取

资源分配的程序取得),+68H的偏移是关于中断使能的寄存器地址,设置含义如下:

设置INTCSR(68H)寄存器,中断模式设置

BITS功能

81:能够产生PCI中断

0:禁止产生PCI中断

111:能够LOCAL端输入的中断送到PCI端

0:禁止LOCAL端输入的中断送到PCI端

其它位为零即可,更多内容参看9054芯片数据手册

程序退出前还要关闭9054的中断,代码如下:

movdx,ioport_cent+68h;设置tpc卡中9054芯片io口,关闭中断

inax,dx

andax,Of7ffh

outdx,ax

6.PC机中断控制器8259的地址为20H、21H,编程时要根据中断类型号设置中断矢量,8259

中断屏蔽寄存器IMR对应位要清零(允许中断),中断服务结束返回前要使用中断结束命令:

MOVAL,20H

OUT2011,AL

中断结束返回DOS时应将IMR对应位置1,以关闭中断。

四、参考流程图

实验九可编程并行接口(二)(8255方式1)

一、实验目的

1.掌握8255工作方式1时的使用及编程。

2.进一步掌握中断处理程序的编写。

二、实验内容

1.按图33(A)8255方式1的输出电路连好线路。

2.编程:每按一次单脉冲按钮产生一个正脉冲使8255产生一次中断请求,让CPU进行一

次中断服务:依次输出01H、02H,04H,08H,10H,20H,40H,80H使L0〜L7依次发光,中断8

次结束。

3.按图33(B)8255方式1输入电路,连好线路。

4.编程:每按一次单泳冲按钮产生一个正脉冲使8255产生一次中断请求,让CPI.进行一次

中断服务:读取逻辑电平开关预置的ASCH码,在屏幕上显示其对应的字符,中断8次结束。

三、参考流程图:(如图34,35)

实验十数/模转换器

一、实验目的

了解数/模转换器的基本原理,掌握DAC0832芯片的使用方法。

二、实验内容

1、实验电路原理如图26,DAC0832采用单缓冲方式,具有单双极性输入端(图中的Ua、Ub),

利用debug输出命令(Out290数据)输出数据给DAC0832,用万用表测量单极性输出端Ua及

双极性输出端Ub的电压,验证数字与电压之间的线性关系。

2、编程产生以下波形(从Ub输出,用示波器观察)

(1)锯齿波

(2)正弦波

三、编程提示

1、8位D/A转换器DAC0832的口地址为290H,输入数据与输出电压的关系为:

(UREF表示参考电压,N表示数数据),这里的参考电压为PC机的+5V电源。

2、产生锯齿波只须将输出到DAC0832的数据由0循环递增。产生正弦波可根据正弦函数建一

个下弦数字量表,取值范围为一个周期,表中数据个数在16个以上。

四、参考流程图:

实验十一模/数转换器

一、实验目的

了解模/数转换的基本原理,掌握ADC0809的使用方法。

二、实验内容

1、实验电路原理图如图38。通过实验台左下角电位器RW1输出0〜5V直流电压送入AK0809

通道O(INO),利用debug的输出命令启动A/D转换器,输入命令读取转换结果,验证输入电压与

转换后数字的关系。

启动IN0开始转换:Out02980

读取转换结果:In0298

2、编程采集INO输入的电压,在屏幕上显示出转换后的数据(用16进制数)。

3、将JP3的1、2短接,使IN2处于双极性工作方式,并给IN1输入一个低频交流信号(幅

度为±5V),编程采集这个信号数据并在屏幕上显示波形。

三、实验提示

1、ADC0809的INOPl地址为298H,IN1口地址为299H。

2、IN0单极性输入电压与转换后数字的关系为:

其中Ui为输入电压,UREF为参考电压,这里的参考电压为PC机的+5V电源。

3、一次A/D转换的程序可以为

MOVDX,口地址

OCTDX,AL;启动转换

;延时

INAL,DX;读取转换结果放在AL中

四、参考流程图(见图39,40)

实验十二步进电机控制实验

一、实验目的

1、了解步进电机控制的基本原理。

2、掌握控制步进电机转动的编程方法。

二、实验内容

1、按图53连接线路,利用8255输出脉冲序列,开关K0〜K6控制步进电机转速,K7控制

步进电机转向。8255CS接288H〜28FH。PAO〜PA3接BA〜BD;PCO〜PC7接K0〜K7。

2、编程:当K0〜K6中某一开关为“1”(向上拨)时步进电机启动。K7向上拨电机正转,

向下拨电机反转。

三、实验说明

步进电机驱动原理是通过对每相线圈中的电流的顺序切换来使电机作步进式旋转。驱动电

路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速。

如图54所示:本实验便用的步进电机用直流+5V电压,每相电流为,电机线圈由四相组成:

即:e1(BA):62(BB);63(BC);4>4(BD)

驳动方式为二相激磁方式,各线圈通电顺序如下表.

顺序相616263(1)4反时针方向回转

01100正时针方向回转

10110

20011

31001

表中首先向61线圈一。2线圈输入驱动电流,接着62—63,63—64,64一小1,又返回

到小1一62,按这种顺序切换,电机轴按顺时针方向旋转。

实验可通过不同长度的延时来得到不同频率的步进电机输入脉冲,从而得到多种步进速度。

四、参考流程图

实验十三数字温度检测实验

一、实验目的

了解数字温度传感器工作原理及使用方法。

二、实验内容:

1.查看资料了解DS18E20的测温原理、内部结构和使用方法。

2.实验电路如图所示:图中DO为DS18B20数据输出,DI为数据输入。实验前DO接8255的PA7,

DI接8255的PC7,8253的CLKO接1UHZ时钟,GATEO接PCO,OUTO接非门输入A,非「1输出Y接IRQ,K7

用短路子短接。

3.DS19B2测温原理:DS18B20是美国DALLAS公司生产的单总线接口数字温度传感器,只需一

根线即可与主机通信。接口电路简单,但通信过程中对时序的要求非常严格。在我们的实验方案

中,8253定时器是为了产生DS18B20读写过程中定时需要设定的,8253的GATEO接8255的PCO,这

样就可以由软件控制8253计数的开始和停止,从而得到所需要的延时时间长度。写入数据(ID)

由8255的PC7通过一个集电极开始的缓冲门7407送至IJDS18B20的2脚(DO),DS18B20的3脚直接接

VCCo

4.编程利用DS18B20测温,测试结果在屏幕上显示。

三、参考流程图

<一〉主程序流程序

〈三〉写DS18B20子程序

〈四》读DS18B20子程序

附录1、查看PCI卡资源的方法

汇编程序支持win9x系统

因为PCI总线结构支持p&p即插即用功能,每台微机分配给PCI扩展板的资源是动态浮动

的,不像ISA总线是固定死的,因此分配给设备的I/O基地址、mem基地址空间及int中新号会

囚为不同的微机而变化,所以实验前需要确定当前微机中PCI卡的资源,并用其替换程序中的相

应值,重新编译链接后才能实现实验效果。

如果发现您的微机中PCI卡的设置与以下内容所描述的不一致,这应该是系统没有分配好资

源导致的,实验可能做不了,您可以将驱动卸掉再重新安装,看看还出现这种情况否,或是换一

台机席试一下,确认是ipc卡的问题还是操作系统安装驱动程序时出现的问题。

需要替换的基地址值为每个汇编程序头中的定义行:

io基地址为:

ioponequ0d400h-0280h;TPC卡中设备的io地址

ioport_dataequ0d4(M)h-0280h;TPC卡中设备的沁地址

ioport_ccntcquOd8(X)h:TPC卡中PCI接口芯片的io地址

mem基地址为:

mem_dataequOfTPC卡中设备的mem地址

其中”0d400h”是pci接口在微机中被动态分配的i。基地址,即需要替换的地址,相当于设备中的

地址()28()ho

”0d800h”是TPC卡中PCI接口芯片上的设置寄存器组占用的io地址,因为某些实验需要设置该

芯片的寄存器。

,是pci接口在微机中被动态分配的mcm基地址,也是需要替换的地址,相当于设备存储器的

起始地址Oho

替换方法如下:

步骤1:

参照实验指导书安装接口卡及其驱动程序

步骤2:

启动微机并打开“控制面板”->“系统”->“设备管理器”并存到“微机原理教学

实验装置”

打开“TPC”

找到两个输入/输出范围(数值可能不会与图中相同),其中一个范闱大小是Offh的是PCI接

口芯片卜的设置寄存器组占用的io地址空间.另一个范围大小是07fh的是TPC设备的io地址空

间:两个内存范围(数值可能不会与图中相同),一个范围大小是Offh的是PCI接口芯片占用的

mem地址空间,另一个范围大小是Offfffh的是TPC设备的mem地址空间。

它们的起始地址即为我们需要的基址值,图中PCI接口芯片输入输出范围是cOOO-cOff,基址

为cOOO;TPC设备的输入输出范围是c400-c47ff

记录下基址值。

步骤3:

用记录下的基址值替换每个汇编程序头中的定义行中的值,并重新编译链接后即可。

io基地址为:

ioporiequ0d4()0h-0280h;TPC长中设备的io地址

♦•••

••••

ioport_dataequ0d400h-0280h;TPC卡中设备的沁地址

••••

••••

ioport_ccntcqu0d800h;TPC卡中PCI接口芯片的io地址

mem基地址为:

mem_da(aequOfTPCR中设备的mem地址

即替换“0d400h”为“0c400h”,“0d800h”为“OcOOOh”,“Of”为“Of”,并重新编译逑接后

即可。

如果程序中使用了中断,则需要根据TPC属性窗口中的中断请求号码来修改程序中的中断

向量、中断掩码的参数,并重新编译链接后即可。

附录2、汇编语言使用方法

汇编语言程序的开发过程

用汇编语言编制的程序称为汇编语言源程序,它必须经过汇编、连接,生成二进

制代码的目标程序,才能直接由计算机执行。汇编语言程序的开发过程如下图所示。

编辑程序

A汇编语言使用

所谓汇编就是把用汇编吾言编写语言目标代码程序的过程.汇

编程序一般使用宏汇编程序(MASM)o

A.1运行汇编程序必的条件源程序

运行汇编程序必备的软彳旭4*文件

汇编系统盘应包含如下交件:

MASM宏汇编程序文件

N

LINK连接程序文件

CREF索引程序文件(也可不用)宏汇编程序MASM

EDIT文本编辑程序(或PE等文本

用户通过屏幕编辑程序键人源程序,检查,可将源程序存到硬盘或软盘二,程

序扩展名为.ASMo'

目标程

A.2编写汇编源程序

序文件

用汇编语言编写的源程必须是一个:用户通过屏幕编辑程序键人源

程序,检查无误,可将源程手存盘,程序.ASM.

1)源程序的书写格式

当CPU访问内存时,是把存储器分成若干通过4个段寄存器中存放的地珏对内

存储器访问,因此在编源程序时迦须L由于每个段的物理空间为:

有语法错?

5:64KB,所以程序中各段石书写一般有如下形式:

逻辑堆栈段堆栈段名SEGMENISTAC

用变量定夕预置的堆栈空间N

逻辑数据段

逻辑代码段

ASSUME定义各段寻址关系

过程名PROC•••

程序

过程名

代码段名

END

在源程序中最少要有一个代码段,数据段根据需要确定用否,也可以增设附加段。对

于堆栈段也可以根据需要确定用否,但在连接(LINK)时计算机将显示警告性的错误。在程

序中如果没有用到堆栈时,该错误提示不影响程序的运行;如果程序中用到堆栈时必须设

置堆栈段。・

SEGMENT.ASSUME.PROC・・・ENDP为伪指令,伪指令是发给汇编程序M.ASM的,而不和

微处理器打交道,在汇编时不产生目标代码,只是把源程序中各种设置情况告诉汇编程序。

2)段寄存器的段地址的装入

Assume伪指令语句只是建立了当前段与段寄存器的联系,但不能把各段的段地址装入

相应的段寄存器中,段寄存器的段地址的装入是在程序中完成的。

(1)DS、ES、SS的装入

由于段寄存器不能用立即数寻址方式直接传送,所以段地址装入可通过通用寄存器传

送给段寄存器。

MOVAX,逻辑段名

MOV段寄存器,AX

其中逻辑段名为程序中定义各逻辑段的名字,(不包括代码段),段寄存器是指与各逻

辑段相对应的各段寄存器(DS、ES、SS)o

(2)CS的装入

代码段寄存器是装当前执行目标代码的段地址,IP是提供下一条要执行的目标代码的

偏移量。为了保证程序的正确执行,CS和IP装入新值时是一起完成的。

对CS和IP的装入有如下几种情况:

①根据用户程序中的伪指令END后的标号为CS和TP提供代码段的段地址和目标代码的

偏移地址。

②在程序运行过程中,当执行某些指令和操作时,CPU自动修改CS和IP的值,使它们

指向新的代码段。

3)程序中的数据与变量

在汇编源程序中的数据除了立即数,由指令产生的数和通过键盘输入的数以外,还有

大量的数据是通过伪指令语句进行预置酚配的。也就是在某逻辑段中(除代码段),将所需

的数据以某种形式存放起来,在程序中可任意调用。在数据定义的同时还可以定义变量,

将变量与数据结合在一起。可以为某个变量分配存储空间以便在程序执行过程中存放中间

结果和最终结果,使用起来极为方便。

(1)变量与数据的定义

变量与数据的定义大以通过符号定义伪指令EQU、=和数据定义伪指令DB或DW或DD来

实现。

七(^和=可以出现在程序的逻辑段内,也可出现在逻辑段外。

(2)汇编程序中数据的提供方法

①用数据定义伪指令提供数据如果程序要求原始数据为一批数据时,用数据

定义伪指令DB、DW和DD来提供较为方便。

②用立即数的形式提供

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论