我的实验指导书09本Word文档下载推荐.docx
- 文档编号:15958743
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:63
- 大小:1.25MB
我的实验指导书09本Word文档下载推荐.docx
《我的实验指导书09本Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《我的实验指导书09本Word文档下载推荐.docx(63页珍藏版)》请在冰豆网上搜索。
要在程序中显示结果,方便的方法是调用操作系统中的I/O子程序。
操作系统的核心是由许多有关I/O驱动、磁盘读写以及文件管理等子程序构成。
这些子程序都编了号,可由汇编语言的源程序调用。
在调用时,把子程序的号(或称系统功能调用号)送至AH,把子程序规定的入口参数,送至指定的寄存器,然后由中断指令INT21H来实现调用。
在这里通过几个程序例子介绍少量的有关I/O的功能调用,便于读者在程序中使用。
DOS的功能调用2就是向CRT输出一个字符的子程序,它要求把要输出的字符的ASCII码送至寄存器DL。
即:
MOVDL,OUTPUT_CHAR
MOVAH,2
INT21H
在微型计算机系统上常常可以显示实时时钟,这就要求能输出数码00~59。
要输出多于一个字符时,要利用功能调用9,它是向CRT输出字符串的子程序,要求在调用前使DX指向字符串的首地址,字符串必须以字符“$”结束,则功能调用9能把字符“$”之前的全部字符向CRT输出。
四.实验程序框图
实验示例程序流程框图如下:
实验示例程序见配套盘片中的09.ASM。
五.实验步骤:
1.编写程序
2.汇编程序,改正程序中出现的语法错误。
3.观看现象,如果现象不正确,回到步骤1。
4.有能力的同学,实现思考题中要求的内容。
六.思考:
1.如何在同一个位置循环显示0-9。
2.如何分别使用功能调用2和功能调用9实现本题目。
实验二定时器实验
利用并行扩展口74LS273的输出接8只发光二极管,用定时器1作为中断源,每一秒循环熄灭一只发光二极管。
1、掌握定时器1的工作原理。
2、掌握定时器1的使用和中断程序的设计方法。
三.实验电路及连线
CS273接8000H,PO0~PO7接L0~L7。
四.实验说明
1.定时器1作为80196的实时时钟来同步其他事件。
它自由运行,每八个状态周期其计数值加1。
计数值可在任何时候读出,但在一般情况下不可改写,且除芯片复位外无其它手段使其恢复为零。
定时器1可用来产生高速输入单元HSI和高速输出单元HSO的基准时间。
当定时器1计数到FFFFH并恢复到0时可引起定时器1溢出中断。
定时器2实际上是一个事件计数器,其利用外部时钟源。
可与HSO单元配合使用。
溢出时也可产生中断。
2.两个定时器中断由I/O控制器IOC1的IOC1.2和IOC1.3两位分别控制,溢出标志分别建立在I/O状态寄存器IOS1的IOS1.5和IOS1.4两位上。
3.定时器溢出中断向量地址为2000H。
4.80C196KB的定时器1与8096的唯一差别在于:
后者只能读,不能写;
前者在窗口0中可读(0A),在窗口15中可写。
5.本实验采用的晶振频率是11.0592MHz,所以定时器1溢出的周期是:
3×
8×
65536÷
11059200=142.2ms
五.实验程序框图
实验示例程序见配套盘片中的Tt1.ASM。
实验三模拟交通灯实验
以74LS273作为输出口,控制4个双色LED灯(可发红,绿,黄光),模拟交通灯管理。
1.学习在单片机系统中扩展简单I/O接口的方法。
2.学习数据输出程序的设计方法。
3.学习模拟交通灯控制的方法。
4.学习双色灯的使用。
PO0-PO3接DG1-DG4,PO4-P07接DR1-DR4。
CS273接8300H。
1.交通灯控制是:
假设一个十字路口为东西南北走向。
初始状态0为东西红灯,南北红灯。
然后转状态1南北绿灯通车,东西红灯。
过一段时间转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍然红灯。
再转状态3,东西绿灯通车,南北红灯。
过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯。
最后循环至状态1。
2.双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。
当红色正端加高电平,绿色正端加低电平时,红灯亮;
红色正端加低电平,绿色正端加高电平时,绿灯亮;
两端都加高电平时,黄灯亮。
五.实验程序框图
示例程序见配套盘片中的TLed1.ASM。
程序框图:
TLED1.ASM主程序框图
实验四外部中断实验(急救车与交通灯)
在实验三内容的基础上增加允许急救车优先通过的要求。
有急救车到达时,两向交通信号为全红,以便让急救车通过。
假定急救车通过路口时间为10秒,急救车通过后,交通灯恢复中断前状态。
本实验以触发开关为中断申请,表示有急救车通过。
学习外部中断技术的基本使用方法和中断处理程序的编程方法。
K7接P2.2(EXTINT)。
1、通过设置IOC1.1位,选P2.2(EXTINT)或P0.7(ACH0.7)作为外部中断源。
2、中断屏蔽寄存器INT_MASK位于0008H单元,用来控制是否允许某种中断源。
当某位为1时,相应的中断开放,否则禁止。
另外,必须设定中断总控制位(PSW.9)为1,开放所有中断。
3、中断服务程序的关键是保护进入中断时的状态,并在退出中断之前恢复进入时的状态。
一般中断程序进入时应保护PSW,以及中断程序所用且非其专用的寄存器。
4、在80C196中,有2个外部中断向量:
EXTINT(200EH)和EXTINT1(203AH)。
EXTINT可供两个中断源使用,一个是外部中断引脚P2.2(EXTINT),另一个是P0.7(ACH7),由IOC1.1确定选择;
中断向量EXTINT1只供外部中断引脚P2.2使用。
本例中使用了P2.2(EXTINT)中断作为中断源,通过拨动开关K7提供中断请求输入。
示例程序见配套盘片中的Tled2.ASM。
程序框图:
实验五软件代请中断实验
用软件方法使中断登记寄存器INT_PENDING的外部中断位置1,代替外接的触发开关,重做实验四的实验,表示定时来一辆急救车。
1.掌握MCS96用软件申请中断的方法。
2.学习软件申请中断处理程序的编写。
1、8096中断系统中有个中断挂号寄存器(INTPENDING)位于0009H单元。
当硬件检测到某中断源上出现正跳变时,即把中断挂号寄存器中相应位置成1,单片机响应中断,并取得中断向量后该位清0。
2、由于可用指令来读写该寄存器,故可靠对该寄存器的某位置1来产生软件申请中断,也可靠清除相应位来撤消已挂号的中断。
3、该寄存器不能按位寻址,所以相应的位操作可用ORBINT_PENDING,#XXH来实现位操作。
4、为了模拟产生中断,本实验程序采用定时器1中断定时往INT_INTPENING的最高位置1来产生外部中断。
示例程序见配套盘片中的Tled3.ASM。
实验六HSI测脉冲周期、脉宽实验
用HSI.0引脚作为高速输入部件使用,用它测量脉冲的上升沿和下降沿,从而计算出脉冲宽度和周期。
1.掌握高速输入部件原理及使用方法。
2.学习并掌握高速输入部件的编程方法。
HSI.0分别接
模块中的150,300,600孔,将得到不同的周期和脉冲宽度值。
1.高速输入单元HSI不仅反映输入线状态变化,而且还记录状态发生的时刻,其时间基准由定时器1提供。
2.HSI内设FIFO(先进先出)寄存器,它和保持器一起可以记录8个事件,因而它有记忆功能。
3.用HSI测量脉冲信号时,下降沿时间减上一个上升沿时间得到高电平时间,上升沿时间减上一个下降沿为低电平时间。
高电平时间加低电平时间得脉冲周期。
或两个正(或负)跳变之间的时间为脉冲周期。
4.对频率较高的脉冲测量时,应注意清除HSI队列。
方法是连续读HSI队列,并把结果舍弃。
这是因为HSI队列中8个事件后即不再记录后续事件时间。
如果处理时间长,就会造成有些事件记录不进HSI对列。
清除HSI队列,可避免此种错误。
5.本书提供的程序最小时间约2.2s(单片机晶振11.0592MHz)。
6.本书提供的程序对脉冲宽度和脉冲周期的测量范围限制在65536个最小时间单位之内。
7.HSI输入引脚由IOC0控制,工作模式由HSI_MODE寄存器(03H)控制,HSI的工作状态由HSI_STATUS寄存器(06H)控制。
8.在I状态下,用监控命令SW观察4000H单元脉冲周期、脉宽的值。
示例程序见配套盘片中的Thsi.ASM。
实验七HSO输出脉冲实验
1.从HSO.0通道输出一个单脉冲,单脉冲宽度应大于8us,小于256ms。
2.从HSO.0和HSO.1通道上输出两组连续脉冲。
1.掌握HSO通道原理和基本应用方法。
2.学习HSO通道输出脉冲的编程方法。
1.HSO内部有专门按内容寻址的存储器CAM,控制事件的命令送入该存储器后,HSO内部硬件将自行按设定的时间触发一个或多个事件,而无须CPU干涉。
2.为向CAM寄存器输入命令,应首先向HSO_COMMAND(地址06H)寄存器写入7位命令,而后再向HSO_TIME(地址04H)寄存器写入该命令所指定的操作应发生的时间。
一般写法如下:
LDBHSO_COM,WHAT_TO_DO;
ADDHSO_TIME,TIME1,WHEN_TO_DO
3.一条命令由保持寄存器送入CAM需8个状态周期,因此,连续两次向CAM寄存器组合写命令时,必须有8个状态周期以上的时间间隔。
4.在不知保持寄存器是否为空的情况下,不应向HSO写入命令,否则,新写入值可能覆盖掉保持寄存器中尚待进入CAM的原写入值。
5.写HSO_TIME时应以当前的定时器1的值为基准。
6.实验要求1产生的波形是个单脉冲。
可以把输出接到LED灯上可观察LED的闪动情况。
也可用示波器探头接触HSO0,观察波形。
示例程序见THSO0.asm。
7.实验要求2产生两组连续脉冲。
用示波器观察HSO0,HSO1的波形。
示例程序见THSO1.asm。
8.在80C196KB专用寄存器窗口15中,可以写HIS_TIME和HIS_SAT寄存器。
时间值是写到保持寄存器中的。
示例程序见配套盘片中的ThsOo.ASM和ThsO1.ASM。
ThsO1.ASM程序框图如下:
实验八软件定时器实验
1.利用软件定时器0和并行输出口
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 指导书 09
![提示](https://static.bdocx.com/images/bang_tan.gif)