微机原理实验指导书硬件部分.docx
- 文档编号:12851082
- 上传时间:2023-06-08
- 格式:DOCX
- 页数:26
- 大小:500.64KB
微机原理实验指导书硬件部分.docx
《微机原理实验指导书硬件部分.docx》由会员分享,可在线阅读,更多相关《微机原理实验指导书硬件部分.docx(26页珍藏版)》请在冰点文库上搜索。
微机原理实验指导书硬件部分
微机原理实验指导书
硬件实验部分
东华大学信息学院
信息与控制实验中心
2015.12
关于微机原理硬件部分实验的说明
●硬件实验主要分为基础实验和综合设计实验两部分。
基础实验部分每个实验需完成各自的实验报告。
报告内容以每项实验的思考题内容为主,不需要抄录实验指导书提供的范例程序。
报告内容具体要求为:
1、实验名称、所需设备、实验要求;
2、实验步骤简述
3、思考题解答;
4、有关思考题的程序的流程框图及源程序代码,源程序需加上必要的注释;
5、思考题的程序在调试中出现的问题及解决过程。
综合设计实验须按照设计要求,利用实验设备提供的软硬件条件设计一个简单的红绿灯模拟系统。
要求每小组完成硬件连线设计、连接,软件编程及调试,并提交相关的设计和调试报告。
系统运行情况需进行实际运行检查。
●基础实验必须完成,综合实验部分根据自身能力选做。
●实验中先完成基础实验部分,再做综合设计实验。
●硬件实验成绩按考勤情况(5%)、基本实验情况(85%)和综合设计实验情况(10%)综合评定。
一、实验设备及软件介绍
第1部分硬件系统介绍
1.CPU单元及外围芯片
1)、微处理器:
8086
2)、时钟频率:
6MHz
3)、存储器
6264系统RAM,地址范围0~3FFFH,奇地址有效
6264系统RAM,地址范围0~3FFFH,偶地址有效
27C64系统ROM,地址范围FC000~FFFFFH,奇地址有效
27C256系统ROM,地址范围FC000~FFFFFH,偶地址有效
4)、可提供的对8086的基本实验
(1).简单I/O扩展实验
(2).存储器扩展实验
(3).CPLD地址译码实验
(4).8255可编程并口实验
(5).8253定时/计数器实验
(6).A/D0809实验
(7).D/A0832实验
(8).8250可编程串口实验
(9).8279显示器接口实验
(10).8279键盘扩展实验
(11).8259可编程中断控制器实验
(12).8237DMA控制器实验
5)、系统资源分配
本系统采用可编程逻辑器件(CPLD)EPM7128做地址的编译码工作,可通过芯片的JTAG接口与PC机相连,对芯片进行编程,可完成系统器件,如监控程序存储器、用户程序存储器、数据存储器、系统显示控制器、系统串行通讯控制器等的地址译码功能,同时也由部分地址单元经译码后输出(插孔CS0---CS5)给用户使用,他们的地址固定,用户不可改变。
2.地址资源分配
本系统采用可编程逻辑器件(CPLD)EPM7128作为地址译码器,完成系统器件如存储器、系统显示控制器、系统串行通讯控制器的地址译码功能,同时将部分地址译码后输出片选信号(插孔CS0~CS7)给用户使用。
它们的地址固定,用户不可改变。
详细信息如下所示。
CS0片选信号地址04A0~04AF偶地址有效
CS1片选信号地址04B0~04BF偶地址有效
CS2片选信号地址04C0~04CF偶地址有效
CS3片选信号地址04D0~04DF偶地址有效
CS4片选信号地址04E0~04EF偶地址有效
CS5片选信号地址04F0~04FF偶地址有效
CS6片选信号地址0000~01FF偶地址有效
CS7片选信号地址0200~03FF偶地址有效
8250芯片片选信号地址0480~048F偶地址有效
8279芯片片选信号地址0490~049F偶地址有效
3.内存使用说明
所有实验程序的起始地址为01100H,CS=0100H,IP=0100H,代码段、数据段、堆栈段在同一个64K的地址空间中。
4.六位LED数码管驱动显示电路
(1)、电路原理
该电路由六位LED数码管、位驱动电路、端输入电路组成,数码管采用动态扫描的方式显示。
具体见原理图,图中用75251作数码管的位驱动。
跳线开关用于选择数码管的显示源,可外接,也可选择8279芯片。
(2)、电路测试:
去除短路线,系统加电,将插孔LED-1与GND短接,用电源的VCC端依次碰触插孔LED-A-----LED-DP,观察最左边的数码管的显示段依次发亮,则可断定此位数码管显示正常,否则检查芯片75451、及连线。
依次检查其他各位数码管电路。
5.LCD显示电路
点阵式LCD显示电路是在系统板上外挂电正式液晶显示模块,模块的数据线、状态、控制线都通过插孔引出。
可直接与系统相连。
1、OCM2×8液晶模块介绍及使用说明
OCMJ中文模块系列液晶显示器内含GB231216*16点阵国标一级简体汉字和ASCII8*8(半高)及8*16(全高)点阵英文字库,用户输入区位码或ASCII码即可实现文本显示。
也可用作一般的点阵图形显示器之用。
提供位点阵和字节点阵两种图形显示功能,用户可在指定的屏幕位置上以点为单位或以字节为单位进行图形显示。
完全兼容一般的点阵模块。
OCMJ中文模块系列液晶显示器可以实现汉字、ASCII码、点阵图形和变化曲线的同屏显示,并可通过字节点阵图形方式造字。
本系列模块具有上/下/左/右移动当前显示屏幕及清除屏幕的命令。
一改传统的使用大量的设置命令进行初始
化的方法,OCMJ中文模块所有的设置初始化工作都是在上电时自动完成的,实现了“即插即用”。
同时保留了一条专用的复位线供用户选择使用,可对工作中的模块进行软件或硬件强制复位。
规划整齐的10个用户接口命令代码,非常容易记忆。
标准用户硬件接口采用REQ/BUSY握手协议,简单可靠。
引脚
名称
方向
说明
引脚
名称
方向
说明
1
VLED+
I
背光源正极(LED+5V)
8
DB1
I
数据1
2
VLED-
I
背光源负极(LED-OV)
9
DB2
I
数据2
3
VSS
I
地
10
DB3
I
数据3
4
VDD
I
(+5V)
11
DB4
I
数据4
5
REQ
I
请求信号,高电平有效
12
DB5
I
数据5
6
BUSY
O
应答信号=1:
已收到数据并正在处理中
=0:
模块空闲,可接收数据
13
DB6
I
数据6
7
DB0
I
数据0
14
DB7
I
数据7
表1—1:
OCMJ2X8(128X32)引脚说明
2、OCM2×8液晶模块外部连接原理图及接口说明
图3–478051与OCMJ4X8模块连接图
模块上DB0~DB7插孔对应于位数据线;BUSY、REQ插孔分别对应于图中相应的引脚。
实验箱面板布局
第2部分、工具软件
实验软件“TECH”用于进行汇编程序的编辑、编译、保存和运行调试。
软件窗口主界面如下图所示。
启动程序,建立实验箱和PC机的通信连接的步骤:
双击桌面图标
,弹出对话框:
。
在出现的对话框中单击“确定”后,按一下实验箱的“PRESET”按钮,等到实验箱左上方的LED数码管显示
,表示已建立通信连接,启动完成。
否则实验箱和软件不能正常进行实验!
实验软件的具体操作方法可参考操作的录像文件。
二、基础实验部分
实验1存储器读写实验
一、实验目的
1.掌握PC机外存扩展的方法。
2.熟悉6264芯片的接口方法。
3.掌握8086十六位数据存储的方法。
二、实验设备
微机实验箱、8086CPU模块。
三、实验内容
向02000~020FFH单元的偶地址送入AAH,奇地址送入55H。
四、实验原理介绍
本实验用到存储器电路
五、实验步骤和要求
1、实验接线:
本实验无需接线。
2、编写调试程序
3、运行实验程序,可采取单步、设置断点方式,打开内存窗口可看到内存区的变化。
本实验的主要目的是学会用使用工具软件,掌握用单步执行和断点方式运行程序,观察寄存器和内存中的数据变化等程序调试的手段。
六、实验提示
1、RAM区的地址为02000H,编程时可将段地址设为0100H,则偏移地址为1000H。
2、如果按字节进行存储,则AL为55H或AAH;如果按字进行存储,则AX应为55AAH。
3、6264、62256等是计算机系统扩展中经常用到的随机存储器芯片(RAM),主要用作数据存储器扩展。
本实验所进行的内存置数在程序中经常用到。
计算机系统运行中会频繁地进行内存与外设或者内存与内存之间的数据传输,所以本实验虽然简单但对理解系统程序的运行很关键,望学习和实验时认真对待。
七、实验范例程序框图及源代码(实验程序名:
RAM.ASM)
codesegment
assumecs:
code
org0100h
start:
movax,0100h
movds,ax;数据段地址
moves,ax
movsi,1000h;偏移地址
movcx,0100h;循环次数
moval,0
intram:
mov[si],al
incsi
loopintram
movsi,1000h;设置断点处
movcx,100h
movax,55aah
fil:
mov[si],ax;RAM区循环置数
incsi
;mov[si],ah
incsi
loopfil
nop;设置断点处
jmpstart
codeends
endstart
八、思考题
1、单步执行到“intram”标号的语句时,ds寄存器的数据是什么?
采用断点方式运行时执行到第一个断点处,2000H~202FH内存单元的数据是什么?
执行到第二个断点处,2000H~200FH内存单元的数据是什么?
并根据观察结果和对源程序的判读简述源程序的运行效果。
2、修改程序,实现从2000H到200FH单元依次赋值00H~0FH的功能。
实验2简单I/O口扩展实验
一、实验目的
1、熟悉74LS273,74LS244的应用接口方法。
2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。
二、实验设备
微机实验箱、8086CPU模块。
三、实验内容
逻辑电平开关的状态输入74LS244,然后通过74LS273锁存输出,利用LED显示电路作为输出的状态显示。
四、实验原理介绍
本实验用到两部分电路:
开关量输入输出电路,简单I/O口扩展电路。
五、实验步骤
1、实验接线:
(表示相互连接)
CS0CS244;CS1CS273;平推开关的输出K1~K8IN0~IN7(对应连接);O0~O7LED1~LED8。
2、编辑程序,单步运行,调试程序
3、调试通过后,全速运行程序,观看实验结果。
4、编写实验报告。
六、实验提示
74LS244或74LS273的片选信号可以改变,例如连接CS2,此时应同时修改程序中相应的地址。
七、实验结果
程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。
例如:
K2置于L位置,则对应的LED2应该点亮。
八、实验范例程序框图(实验程序名:
T244273.ASM)
九、程序源代码清单
assumecs:
code
codesegmentpublic
org100h
start:
movdx,04a0h;74LS244地址
inal,dx;读输入开关量
movdx,04b0h;74LS273地址
outdx,al;输出至LED
jmpstart
codeends
endstart
外围接线原理图
十、思考题:
将74LS244的片选信号CS244改接CS2,将74LS273的片选信号CS273改接CS3,修改程序实现与范例程序相同的功能。
实验38255并行口实验
一、实验目的
掌握8255A的编程原理。
二、实验设备
微机实验箱、8086CPU模块。
三、实验内容
8255A的A口作为输入口,与逻辑电平开关相连。
8255A的B口作为输出口,与发光二极管相连。
编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。
四、实验原理介绍
本实验用到两部分电路:
开关量输入输出电路和8255可编程并口电路。
五、实验步骤
1、实验接线
CS0CS8255;PA0~PA7平推开关的输出K1~K8;PB0~PB7发光二极管的输入LED1~LED8。
2、编程并全速或单步运行。
3、全速运行时拨动开关,观察发光二极管的变化。
当开关某位置于L时,对应的发光二极管点亮,置于H时熄灭。
六、实验提示
8255A是比较常用的一种并行接口芯片,其特点在许多教科书中均有介绍。
8255A有三个8位的输入输出端口,通常将A端口作为输入用,B端口作为输出用,C端口作为辅助控制用,本实验也是如此。
实验中,8255A工作于基本输入输出方式(方式0)。
七、实验结果
程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。
例如:
K2置于L位置,则对应的LED2应该点亮。
八、实验范例程序框图及源代码(实验程序名:
t8255.asm)
assumecs:
code
codesegmentpublic
org100h
start:
movdx,04a6h;控制寄存器地址
movax,90h;设置为A口输入,B口输出
outdx,ax
start1:
movdx,04a0h;A口地址
inax,dx;输入
movdx,04a2h;B口地址
outdx,ax;输出
jmpstart1
codeends
endstart
思考题:
1、修改接线CS2CS8255,并要求开关置“H”(下)位置时对应LED亮,修改程序实现相应功能。
实验48253定时器/计数器接口实验
一、实验目的
掌握8253定时器的编程原理,用示波器观察不同模式下的输出波形。
二、实验设备
微机实验箱、8086CPU模块、示波器。
三、实验内容
了解8253计数器的不同工作方式,掌握其初始化控制字对定时/记数效果的影响。
四、实验原理介绍
本实验用到两部分电路:
脉冲产生电路、8253定时器/计数器电路
五、实验步骤
1、实验连线:
CS0CS8253OUT08253CLK2OUT2LED1OUT1LED2
CLK3
8253CLK0,CLK3
8253CLK1
2、编程调试程序
3、全速运行,观察实验结果
六、实验提示
8253是计算机系统中经常使用的可编程定时器/计数器,其内部有三个相互独立的计数器,分别称为T0,T1,T2。
8253有多种工作方式,其中方式3为方波方式。
当计数器设好初值后,计数器递减计数,在计数值的前一半输出高电平,后一半输出低电平。
实验中,T0、T1的时钟由CLK3提供,其频率为750KHz。
程序中,T0的初值设为927CH(37500十进制),则OUT0输出的方波周期为(37500*4/3*10-6=0.05s)。
T2采用OUT0的输出为时钟,则在T2中设置初值为n时,则OUT2输出方波周期为n*0.05s。
n的最大值为FFFFH,所以OUT2输出方波最大周期为3276.75s(=54.6分钟)。
可见,采用计数器叠加使用后,输出周期范围可以大幅度提高,这在实际控制中是非常有用的。
七、实验结果
程序全速运行后,LED1按一定周期闪烁(周期理论值为0.2s),LED2在高频脉冲信号(约15KHz)影响下,有微弱的光亮,但无明显的周期变化现象。
八、实验范例程序框图及源代码(实验程序名:
t8253.asm)
assumecs:
code
codesegmentpublic
org100h
start:
movdx,04a6h;控制寄存器
movax,36h;计数器0,方式3
outdx,ax
movdx,04a0h
movax,7Ch
outdx,ax
movax,92h
outdx,ax;计数值927Ch
movdx,04a6h
movax,76h;计数器1,方式3
outdx,ax
movdx,04a2h
movax,32h
outdx,ax
movax,0;计数值32h
outdx,ax
movdx,04a6h
movax,0b6h;计数器2,方式3
outdx,ax
movdx,04a4h
movax,04h
outdx,ax
movax,0;计数值04h
outdx,ax
next:
nop
jmpnext
codeends
endstart
思考题:
1、为什么说范例程序运行时LED1闪烁周期的理论值是0.2秒?
在范例程序设置LED2的最大闪烁周期是多少?
请分析说明。
2、修改片选信号接线使CS1和CS8253连接,并要求LED1的闪烁周期变为4秒(亮2秒,灭2秒),修改程序实现功能。
实验5 8259中断控制器实验
一、实验目的
1、掌握8259A的工作原理。
2、掌握编写中断服务程序方法。
3、掌握初始化中断向量的方法。
二、实验设备
微机实验箱、8086CPU模块。
三、实验内容
了解中断处理的原理,掌握利用中断控制器进行中断申请和中断操作的方法。
四、实验原理介绍
本实验用到三部分电路:
电平开关电路、简单I/O口扩展电路和8259中断控制器电路。
五、实验步骤
1、实验接线
CS0CS8259CS3CS273O0~O3LED1~LED4K1~K4IR0~IR3INTINT(8086CPU板)INTAINTA(8086CPU板)
2、编译调试程序
3、全速运行程序,拨动某一电平开关,观察LED的亮灭情况。
六、实验提示
1、8259的使用说明请详细阅读教科书。
2、8086的中断系统是向量中断方式。
内存中特定位置有一中断向量表,表内存有不同中断类型的中断向量(中断入口地址)。
不同中断类型的中断向量在表内有对应的偏移地址,其计算方法是:
中断类型*4。
3、中断类型由8259通过数据总线送给8086,8086内部电路会将该类型值自动乘4,而后赋给指令指针,从而转向中断向量表的相应单元取得中断入口地址,之后就进入中断服务程序。
请仔细研读8259的工作时序。
4、中断类型的高5位由8259寄存器ICW2决定,低3位由中断源IRx的编码自动填入。
IR0~IR7的编码分别为000,001,010,011,100,101,110,111。
七、实验结果
全速运行程序,由上往下拨动开关时,相应位置的LED点亮,其余LED全灭。
八、实验范例程序框图及源代码(实验程序名:
t8259.asm)
assumecs:
code
codesegmentpublic
org100h
start:
movcx,0
start1:
cli
movdx,04a0h
movax,13h
outdx,ax;ICW1,ICW4NEEDED
movdx,04a2h
movax,80h
outdx,ax;ICW2中断类型80h
movax,01h;01
outdx,ax;ICW4
movax,00h
outdx,ax;OCW1,开放所有中断
nop;以上为8259初始化
movax,0
movds,ax
movdi,200h;初始化中断向量表
movax,offsetint0
movds:
[di],ax
adddi,2
movds:
[di],100h
adddi,2
movax,offsetint1
movds:
[di],ax
adddi,2
movds:
[di],100h
adddi,2
movax,offsetint2
movds:
[di],ax
adddi,2
movds:
[di],100h
adddi,2
movax,offsetint3
movds:
[di],ax
adddi,2;上述程序为芯片8259的初始化程序
movds:
[di],100h;建议不熟练者不要修改。
main:
movax,0
sti;开中断。
waiting:
cmpax,0h
jewaiting;没发生中断,则等待
nop
nop
movdx,04d0h
outdx,ax;对应LED灯亮
movcx,0
delay:
loopdelay;数字滤波,按键去抖
jmpstart1
int0:
cli;关中断。
以下类推。
nop;此两行为IR0的中断服务程序
movax,0feh;用户可修改。
iret;中断返回,以下类推。
int1:
cli
nop;此两行为IR1的中断服务程序,
movax,0fdh;用户可修改。
iret
int2:
cli
nop;此两行为IR2的中断服务程序,
movax,0fbh;用户可修改。
iret
int3:
cli
nop;此两行为IR3的中断服务程序,
movax,0f7h;用户可修改。
iret
codeends
endstart
九、思考题:
1、说明源代码8259初始化所设置的所有中断控制字的值和含义(按位说明)。
2、修改接线IR3P+(实验箱右下角),并修改源程序,使按实验箱右下角“Pules”键时LED1~LED4全亮。
三、综合设计实验部分
一、设计要求
参考基础实验的实验1~实验5所使用的硬件和范例程序,设计一个简单的红绿灯控制系统,用LED1~LED4表示两组红绿灯,每组红灯、绿灯各1只。
要求实现以下功能:
(1)红绿灯的定时切换(每10秒切换一次)
(2)设置灯光测试开关K1,当K1打开(高电平)时,LED1~LED4全亮,关闭时恢复正常切换。
提示:
(1)定时功能可利用8253实现,利用定时器输出作为中断申请,利用中断处理切换LED的显示;LED状态可用内存保存或用I/O口读取。
(2)测试功能运行可在主循环中通过I/O口读取开关状态后判定,或利用中断处理方式运行。
二、报告要求:
1.外围芯片信号连接原理图(与CPU连接部分可省略)
2.程序的流程图、源代码和源代码行中必要的注释
3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 实验 指导书 硬件 部分