上海大学微机实践报告13精品管理资料.docx
- 文档编号:3136293
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:14
- 大小:676.10KB
上海大学微机实践报告13精品管理资料.docx
《上海大学微机实践报告13精品管理资料.docx》由会员分享,可在线阅读,更多相关《上海大学微机实践报告13精品管理资料.docx(14页珍藏版)》请在冰豆网上搜索。
上海大学微机实践报告13精品管理资料
上海大学微机实践报告
实验一:
开关状态显示
【实验目的】
熟悉实验箱和软件开发平台的使用.了解基本I/O端口的操作方法和技巧,掌握编程和调试基本技能。
【实验内容】
利用74LS244作为输入口,读取开关状态,根据给定表格中开关状态对应的输出关系,通过74LS273驱动发光二极管显示出来.
【实验区域电路连接图】
参考上图连线:
Y0~Y1接K1~K2(对应J1、J2);Q0~Q7接L1~L8(对应J3至J10);CS1接8000H孔(对应J12);CS2接9000H孔(对应J11);IOWR→IOWR;IORD→IORD;然后用数据排线连接JX7→JX17(BUS2)。
【程序框图】
【编程】
CODESEGMENT
ASSUMECS:
CODE
ORG1200H
START:
MOVDX,8000H
INAL,DX
TESTAL,01H
JNZY1/测试AL是否等于01H,若不等于,则跳入循环Y1/
TESTAL,02H
JNZY2/测试AL是否等于02H,若不等于,则跳入循环Y2/
MOVDX,9000H
MOVAL,0FFH/点亮所有的灯/
OUTDX,AL
JMPSTART
Y1:
TESTAL,02H
JNZY3/测试AL是否等于02H,若不等于,则跳入循环Y3/
MOVDX,9000H
MOVAL,0AAH/点亮奇数号灯/
OUTDX,AL
JMPSTART
Y2:
MOVDX,9000H
MOVAL,55H/点亮偶数号灯/
OUTDX,AL
JMPSTART
Y3:
MOVDX,9000H
MOVAL,00H/所有灯全灭/
OUTDX,AL
JMPSTART
CODEENDS
ENDSTART
【问答题】
1、I/O端口的寻址方式有哪2种?
在x86系统中,采用哪一种?
解:
I/O端口的寻址方式有:
一种是I/O地址与存储器地址统一编址,一种是I/O地址与存储器地址分别独立编址。
在x86系统中,采用I/O地址与存储器地址分别独立编址.
2、在输入/输出电路中,为什么常常要使用锁存器和缓冲器?
解:
输入/输出按方式分为程序控制和DMA两类,程序控制方式又分为同步方式、异步方式和中断方式.
在程序控制方式中,同步方式的软件编程和硬件实现都十分简单,当需要时,就可以直接在需要输入/输出的地方写输入/输出指令.异步方式由于需要根据状态信息进行输入/输出操作,就需要增加必要的“握手”信号电路,程序设计也要包括对状态信息的判断,根据状态信息再决定是继续等待还是将信息读入或输出。
中断方式在程序控制输入/输出方式中比较复杂,需要有中断控制器等硬件电路和接口芯片,程序也包括了中断处理程序来完成计算机输入、输出。
DMA是另一类输入/输出方式,在进行输入/输出时,不需要CPU直接参加操作,而仅是将总线空出给DMA控制器使用。
当然,DMA方式要求的硬件电路更加复杂。
其优点是响应速度快,缺点是需要增加硬件电路。
【心得体会】
通过本次试验的操作,我熟悉了试验箱和软件开发平台的使用,也了解到了智能芯片接口8255的端口配置方法,掌握了编程和调试基本技能,加深了对课堂上理论知识的学习,将理论与实践动手相结合,更好的掌握了知识的全面性。
实验二模拟交通灯实验
【实验目的】
1.学习在PC机系统中扩展简单I/O接口的方法。
2。
进一步学习编制数据输出程序的设计方法。
3.学习模拟交通灯控制的方法。
【实验内容】
用8255做输出口,控制十二个发光管(4组红绿黄灯)的亮灭,模拟十字路口交通灯管理。
【实验区域电路连接图】
PC0→L3;PC1→L7;PC2→L11;PC3→L15;红灯
PC4→L2;PC5→L6;PC6→L10;PC7→L14;绿灯
PB4→L1;PB5→L5;PB6→L9;PB7→L13。
黄灯
8255数据、控制线内部已线连好。
【程序框图】
【编程】
CODESEGMENT
ASSUMECS:
CODE
ORG1200H
PORTAEQU0FF28H
PORTBEQU0FF29H
PORTCEQU0FF2AH
PORTCNEQU0FF2BH
START:
MOVDX,PORTCN
MOVAL,80H
OUTDX,AL
MOVDX,PORTB
MOVAL,0F0H
OUTDX,AL/黄灯熄灭/
MOVDX,PORTC
MOVAL,0F0H
OUTDX,AL/绿灯熄灭,红灯点亮/
CALLDELAY1/延时1/
MOVDX,PORTC
MOVAL,0A5H
OUTDX,AL/1、3路口绿灯亮,2、4路口红灯亮/
CALLDELAY3/延时3/
MOVDX,PORTC
MOVAL,0F5H
OUTDX,AL/1、3绿灯熄灭(2、4红灯亮)/
MOVCX,8
LOOP1:
MOVDX,PORTB
MOVAL,0A0H
OUTDX,AL/1、3黄灯亮/
MOVDX,PORTC
MOVAL,0F5H
OUTDX,AL/绿灯全灭,2、4红灯亮/
CALLDELAY2/延时2/
MOVDX,PORTB
MOVAL,0FFH
OUTDX,AL/黄灯全部灭/
CALLDELAY2
DECCX
JNZLOOP1
MOVDX,PORTB
MOVAL,0F0H
OUTDX,AL/黄灯全灭/
MOVDX,PORTC
MOVAL,0F0H
OUTDX,AL/绿灯熄灭,红灯点亮/
CALLDELAY1/延时1/
MOVDX,PORTC
MOVAL,5AH
OUTDX,AL/1、3红灯亮,2、4绿灯亮/
MOVDX,PORTB
MOVAL,0F0H
OUTDX,AL/黄灯全灭/
CALLDELAY3/延时3/
MOVDX,PORTC
MOVAL,0FAH
OUTDX,AL/2、4绿灯灭(1、3红灯亮)/
MOVCX,8
LOOP2:
MOVDX,PORTB
MOVAL,50H
OUTDX,AL/2、4黄灯亮/
MOVDX,PORTC
MOVAL,0FAH
OUTDX,AL/1、3红灯亮,绿灯全灭/
CALLDELAY2/延时2/
MOVDX,PORTB
MOVAL,0FFH
OUTDX,AL/黄灯全灭/
CALLDELAY2
DECCX
JNZLOOP2
JMPSTART
DELAY1:
MOVAX,5H
MOVBX,0H
X:
DECBX
JNZX
DECAX
JNZX
RET
DELAY2:
MOVAX,1H
MOVBX,0H
Y:
DECBX
JNZY
DECAX
JNZY
RET
DELAY3:
MOVAX,20H
MOVBX,0H
Z:
DECBX
JNZZ
DECAX
JNZZ
RET
CODEENDS
ENDSTART
【问答题】
1、8255A的哪个端口能实现位操作控制(按位置位/复位)?
执行控制字写入操作的端口是哪个?
解:
8255A的C端口能实现位操作控制(按位置位/复位),执行控制字写入操作的端口是命令字端口.
2、写出下图中Intel8255A占用的4个端口地址。
解:
FFF0H、FFF2H、FFF4H、FFF6H。
【心得体会】
本实验是模拟交通灯工作的实验,通过8255A控制发光二极管,PB4-PB7对应黄灯,PC0-PC3对应红灯,PC4—PC7对应绿灯,以模拟交通路灯的管理。
在实验中不但要满足题目所提出的要求,更要结合实际,考虑到现实问题,比如说绿灯时间要比红灯时间长.通过本次实验,不仅再次熟悉了8255A,更是对自己编程技术一个很好的锻炼。
实验三:
8253定时器/计数器实验
【实验目的】
1。
学会8253芯片与微机接口的原理和方法;
2。
掌握8253定时器/计数器的工作原理和编程方法。
【实验内容】
编写程序,将8253的计数器0设置为方式2(频率发生器),计数器1设置为方式3(方波频率发生器),计数器0的输出作为计数器1的输入,计数器1的输出接在一个LED上,运行后可观察到该LED在不停地闪烁.
1。
编程时用程序框图中的二个计数初值,计算OUT1的输出频率,用表观察LED,进行核对;
2.修改程序中的二个计数初值,使OUT1的输出频率为1Hz,用手表观察LED,进行核对;
3。
上面计数方式选用的是16进制,现若改用BCD码,试修改程序中的二个计数初值,使LED的闪亮频率仍为1Hz.
【实验区域电路连接图】
CS3→0040H;JX8→JX0;IOWR→IOWR;IORD→IORD;A0→A0;A1→A1;
GATE0→+5V;GATE1→+5V+5V;OUT0→CLK1;OUT1→L1;CLK0→0.5MHz;(单脉冲与时钟元)
【程序框图】
【编程】
(最终实验效果程序)
CODESEGMENT
ASSUMECS:
CODE
ORG1000H
START:
MOVDX,43H;写8253控制字
MOVAL,00110101B;计数器0,选16位(先低后高),方式2,
OUTDX,AL;BCD码计数
MOVDX,40H;计数器0
MOVAL,00H;送初值,低8位
OUTDX,AL
MOVAL,05H;送初值,高8位
OUTDX,AL
MOVDX,43H;写8253控制字
MOVAL,01110111B;计数器1,选16位(先低后高),方式3,
OUTDX,AL;BCD码计数
MOVDX,41H;计数器1
MOVAL,00H;送初值,低8位
OUTDX,AL
MOVAL,10H;送初值,高8位
OUTDX,AL
JMP$
CODEENDS
ENDSTART
如要用二进制计数,则修改控制字最后一位为0,并修改相应初值。
问题二:
注释和一基本相同
CODESEGMENT
ASSUMECS:
CODE
ORG1000H
START:
MOVDX,43H
MOVAL,00110100B;控制寄存器的初始化
OUTDX,AL
MOVDX,40H;计数器0
MOVAL,0F4H;写入初值
OUTDX,AL
MOVAL,01H
OUTDX,AL
MOVDX,43H;控制寄存器的初始化
MOVAL,01110110B
OUTDX,AL
MOVDX,41H;计数器1
MOVAL,0E8H;写入初值
OUTDX,AL
MOVAL,03H
OUTDX,AL
JMP$;结束
CODEENDS
ENDSTART
第三个问题:
改成BCD码,注释和二一样。
CODESEGMENT
ASSUMECS:
CODE
ORG1000H
START:
MOVDX,43H
MOVAL,00110101B
OUTDX,AL
MOVDX,40H
MOVAL,00H;写入初值
OUTDX,AL
MOVAL,05H
OUTDX,AL
MOVDX,43H
MOVAL,01110111B
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 上海 大学 微机 实践 报告 13 精品 管理 资料