单片机实验
8155 并口扩展实验
一、实验目的
熟悉并口扩展芯片8155 的内部结构,学会使用8155 扩展并口和片外RAM 和14
位减法定时/计数器。
二、实验设备及器件
IBM PC 机 一台
DP-51PROC 单片机综合仿真实验仪 一台
8155 PACK 模块(选配件) 一套
三、实验内容
通过片外总线方式访问并口扩展芯片8155,并使它的PA 口闪烁点亮8 个LED。
四、实验要求
理解掌握并口扩展芯片8155 的原理和该芯片的编程方法,学会使用并口扩展芯片
8155H 进行8 位并行接口的扩展。
五、实验步骤
1. 将8155 PACK 模块(选配件)插入PARK2 区;
2. 使用导线连接A7 区的P2_IO2、P2_IO5 和P2_CS 分别至A2 区的A8、
P10 和A15;
3. 使用排线连接8155 PACK 模块上的J1 接口(PA 口)至D1 区的J52 接口;
4. 运行编写好的程序,观察8 个LED 的点亮情况。
六、实验预习要求
认真预习本节实验内容,按照实验的要求提前做好实验准备工作,认真阅读8155
的数据手册。
七、实验参考程序
1.汇编语言程序:
ORG 8000H
LJMP MAIN
ORG 8100H
MAIN: MOV SP,#60H
SETB P1.0
NOP
NOP
NOP
NOP
NOP
CLR P1.0
MOV DPTR,#7F00H
MOV A,#01H
MOVX @DPTR,A
INC DPTR
DEC A
MOVX @DPTR,A
LOOP: LCALL DELAY
CPL A
MOVX @DPTR,A
LJMP LOOP
DELAY:MOV R7,#0FFH
DEL1: MOV R6,#0FFH
DJNZ R6,$
DJNZ R7,DEL1
RET
END
2.C51 程序:
#include
#include
#include
#define _Nop() _nop_()
#define PAC XBYTE[0x7f00]
#define PA XBYTE[0x7f01]
typedef unsigned char byte;
sbit RST=P1^0;
void ini_cpu(void)
{
RST=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
RST=0;
PAC=0x01;
}
void delay(void)
{
byte m,n;
for(m=0;m<255;m++)
for(n=0;n<255;n++);
}
void main(void)
{
ini_cpu();
while(1)
{
PA=0x00;
delay();
PA=0xff;
delay();
}
}
八、实验思考
1. 请练习使用8155 的扩展RAM 功能;
2. 请练习使用8155 的定时/计数器功能。
全部0条评论
快来发表一下你的评论吧 !