微机原理实验指导书(无程序-最新)(5)

2019-01-27 16:03

实验七 P1口实验

实验学时:2

实验类型:设计/研究 实验要求:必修

一、实验说明

1、学习P1 口的使用方法。 2、学习延时子程序的编写和使用。

3、学习用‘与’‘或’运算对MCS96系列 CPU的变量进行位操作。

二、实验目的

1、P1 口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。 2、P1.0,P1.1作输入口接两个拨动开关,P1.2,P1.3作输出口,接两个发光二极管,编写程序读取开关状态,将此状态,在发光二极管上显示出来。编程时应注意 P1.0,P1.1作为输入口时应先置 1,才能正确读入值。

三、实验电路及连线

四、实验说明

1、P1 口是准双向口。它作为输出口时与一般的双向口使用方法相同。由准双向口结构可知当P1口用为输入口时,必须先对它置“1” 。若不先对它置“1” ,读入的数据是不正确的。

2、由于80C196系列CPU没有位操作,所以要对P1.0,P1.1进行与运算,以判断该 位为高还是为低,然后再用‘与’和‘或’运算将 P1.2,P1.3的相应位置高或

19

低。 这与80C51系列CPU不同。80C51可以将位变量通过 C标志位赋值给其它位。 3、8051延时子程序的延时计算问题,对于程序

Delay:

MOV R6,#0H MOV R7, #0H DelayLoop:

DJNZ R6,DelayLoop DJNZ R7,DelayLoop RET

查指令表可知MOV,DJNZ指令均需用两个机器周期,在6MHz晶振时,一个机器周期时间长度为12/6MHZ,所以该段程序执行时间为:

(256×255+2)×2×12÷6 ≈ 261ms

五、实验框图

20

六、参考程序 程序一: Loop:

mov a, #01h

mov r2, #8 ;设移位次数 Output:

mov P1, a

rl a ;左移一位 call Delay

djnz r2, Output ljmp Loop

Delay:

mov r6,#0 mov r7, #0 DelayLoop:

djnz r6,Delayloop djnz r7, DelayLoop ret

end

程序二:

KeyLeft equ P1.0 KeyRight equ P1.1 LedLeft equ P1.2 LedRight equ P1.3

SETB KeyLeft SETB KeyRight Loop:

MOV C,KeyLeft MOV LedLeft,C MOV C,KeyRight MOV Ledright,C LJMP Loop

END

21


微机原理实验指导书(无程序-最新)(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2012年GCT考试数学辅导:解题方法及练习题三

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: