试验七8155可编程并行接口试验

上传人:F****n 文档编号:100181668 上传时间:2019-09-22 格式:DOC 页数:11 大小:103KB
返回 下载 相关 举报
试验七8155可编程并行接口试验_第1页
第1页 / 共11页
试验七8155可编程并行接口试验_第2页
第2页 / 共11页
试验七8155可编程并行接口试验_第3页
第3页 / 共11页
试验七8155可编程并行接口试验_第4页
第4页 / 共11页
试验七8155可编程并行接口试验_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《试验七8155可编程并行接口试验》由会员分享,可在线阅读,更多相关《试验七8155可编程并行接口试验(11页珍藏版)》请在金锄头文库上搜索。

1、2019-9-22 4:26:26 下午实验七 8155可编程并行接口实验实验报告一、 实验目的1 了解8155的内部资源与结构;2 了解8155与单片机的接口逻辑;3 熟悉对8155的初始化编程、输入和输出程序的设计方法;4 掌握8155内部定时/计数器的使用方法。二、实验原理 18155控制字:AD7AD6AD5AD4AD3AD2AD1AD0TM2TM1IEBIEAPC2PC1PBPA设置定时器/计数器是否允许中断请求设置A口、B口和C口的工作方式00:空操作,不影响计数操作0禁止B口中断0禁止A口中断00:A口,B口基本输入输出,C口输入0 B口输入0 A口输入01:停止定时器计数01:

2、A口,B口基本输入输出,C口输出10:若定时器正在计数,计数长度减速为0停止计数1允许B口中断1允许A口中断;1B口输出1A口输出11:启动,置方式和长度后立即启动,若正在运行表示 置新的方式和定时器长度,计数结束后,按新的方式和长度计数10:A口选通输入输出,B口基本输入输出例: 将8155设置为A口输入B口输出 (控制寄存器地址0F100H) MOV DPTR,#0F100H ;将控制器地址给DPTRMOV A, B ;设置控制字 对应上面表格理解MOV DPTR,A;将控制字传送至控制寄存器28155的定时器/计数器 (1) 8155定时器/计数器的计数结构 8155的定时器/计数器是一

3、个14位的减法计数器,由两个8位寄存器构成,如图7.21所示。以其中的低14位组成计数器,剩下的两个高位( , )用于定义计数器输出的信号形式。图7.21 8155定时器/计数器的计数结构 (2) 定时器/数器的使用 8155的定时器/计数器与MCS-51单片机芯片内部的定时器/计数器,在功能上是完全相同的,同样具有定时和计数两种功能。但是在使用上却与MCS-51单片机的定时器/计数器有许多不同之处。具体表现在: 8155的定时器/计数器是减法计数,而MCS-51单片机的定时器/计数器却是加法计数,因此确定计数初值的方法是不同的。 MCS-51单片机的定时器/计数器有多种工作方式,而8155的

4、定时器/计数器只有一种固定的工作方式,即14位计数。通过软件方法进行计数初加载。 MCS-51单片机的定时器计数器有两种计数脉冲。定时功能时,以机器周期为计数脉冲;计数功能时,从芯片外部引入计数脉冲。但8155的定时器/计数器,不论是定时功能还是计数功能都是由外部提供计数脉冲,其信号引脚是TIMERIN。 MCS-51单片机的定时器/计数器,计数溢出时,自动置位TCON寄存器的计数溢出标志位(TF),供用户查询或中断方式使用;但8155的定时器/计数器,计数溢出时向芯片外部输出一个信号(TIMEROUT)。而且这一信号还有脉冲和方波两种形式,可由用户进行选择。具体由 , 两位定义:=00 单个

5、方波=01 连续方波=10 单个脉冲=11 连续脉冲这四种输出形式如图7.22所示。图7.22 8155信号输出形式3. 定时器/计数器的控制 8155定时器/计数器的工作方式由命令字中的最高两位 进行控制(见图7.18)。具体说明如下: D7D6=00 不影响计数器工作。 D7D6=01 停止计数。如计数器未启动则无操作,如计数器正运行则停止计数。 D7D6=10 达到计数值(计数器减为0)后停止。 D7D6=11 启动,如果计数器没运行,则在装入计数值后开始计数;如果计数器已运行,则在当前计数值计满后,再以新的计数值进行计数。三、实验设备微型计算机 一台单片机仿真器 一台实验仪 一台示波器

6、 一台实验连线 若干四、 实验内容1.使用8155内部的14位定时器,编程从“TMROUT”引脚输出连续方波。思路: 设定 PA口为输入方式,PB口为输出方式,PC口为输入方式,禁止中断。则命令字为0C2H()。 由于要连续方波,两个高位(M2M1)=01。其他14位装入初值。 计数初值设为十进制数1000,十六进制数为03E8H。 8155的定时器/计数器,不论定时或者计数,都由外部提供计数脉冲,其信号引脚TIMIN。 实验程序:COM_8155 XDATA 0F100H ;控制/状态寄存器PA_8155 XDATA 0F101H ;PA口地址PB_8155 XDATA 0F102H ;PB

7、口地址RAM_8155 XDATA 0F000H ;8155内部RAM00单元地址 ORG 0000H LJMP START ORG 0100H START: MOV SP,#60H ;堆栈 MOV DPTR,#COM_8155 ;控制口地址 MOV A,#0C2H ;命令字 MOVX DPTR,A ;装入命令字 START1: MOV DPTR,#0FD04H ;计数器低8位地址 MOV A,#99H ;低8位计数值 MOVX DPTR,A ;写入计数值低8位 INC DPTR ;计数器高8位地址 MOV A,#40H ;高8位计数值 MOVX DPTR,A ;写入计数值高8位 SJMP S

8、TART1 END连线:B4区CS,IO/M A3区 CS1,A8 B4区 TMRIN B2区 1M B4区TMROUT示波器 观察方波2. 用8155实现键盘扫描和数码管显示,将由键盘键入的数字显示在数码管上。 思路:本程序使用2行*8列组成的矩阵键盘,PA口作为输出口,接键盘列线。PC口为输入,接键盘行线。PB口输出,接数码管段选,P1口选择数码管的位选。键盘扫描:行扫描法 行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法 (1)判断键盘中有无键按下 将全部行线PC0PC1置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与

9、2根行线相交叉的8个按键之中。若所有列线均为高电平,则键盘中无键按下。 (2)判断闭合键所在的位置 在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。流程图:实验程序:COM_8155 XDATA 0F100H ;控制/状态寄存器 PA_8155 XDATA 0F101H ; PA口地址 PB_8155 XDATA 0F102H ; PB口地址 PC_8155 XDATA 0F103H ; PC口地址

10、 RAM_8155 XDATA 0F000H ; 8155内部RAM00单元地址 ORG 0000H LJMP START ORG 0100H START: MOV SP,#60H MOV DPTR,#COM_8155 MOV A,#3 MOVX DPTR,A KEY1: ACALL KS1 ;检查有键闭合否 JNZ LK1 ;A非“0”则转移 ACALL DIR ;显示一次(延时6ms) AJMP KEY1 LK1: ACALL DIR ;有键闭合二次延时 ACALL DIR ;共12ms去抖动 ACALL KS1 ;再检查有键闭合否 JNZ LK2 ;有键闭合,转LK2 ACALL DIR AJMP KEY1 ;无键闭合,延时6ms后转KEY1 LK2: MOV R2,#0FEH ;扫描初值送R2 MOV R4,#00H ;扫描列号送R4 LK4: MOV DPTR,#PA_8155 ;建立A口地址 MOV A,R2 MOVX DPTR,A ;扫描初值送A口 INC DPTR INC DPTR ;指向C口 MOVX A,DPTR ;读C口 JB ACC.0,LONE ;ACC.0=1,第0行无键闭合,转LONE MOV A,#00H ;装第0行行值 AJMP LKP LONE: JB ACC.1,NEXT

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号