单片机实验指导书(2)

2019-03-09 18:15

实验二 单片机I/O口控制实验

一.实验目的

利用单片机的P1口作I/O口,学会利用P1口作为输入和输出口. 二.实验设备和器件

IBM PC机 一台

DP-51PRO.NET单片机仿真器,编程器,实验仪三合一综合开发平台 一台 三.实验内容

1. 编写程序,用P1口作为控制端口,使D1区的LED轮流亮.从D1到D8,再从D8回到D1,不断循环。 四.实验要求

学会使用单片机的P1口作为IO口.也可以利用P3口完成该实验.完成实验报告. 五.实验步骤

1.用导线把A2区的J61接口与D1区的J52接口相连. 2.先编写一个延时程序.

3.将LED轮流亮的程序编写完整并使用TKStudy ICE 调试运行.

4.使用导线把A2区的J61接口的P1.0~P1.6与D1区的J52接口的LED1~LED7相连,另外A2区J61接口的P1.7与D1区的J53的KEY1相连.

5.编写P1.7控制LED的程序,并调试运行.(按下K1看是否全亮)

6. A2区J61接口的P1.7与D1区的J54的SW1相连.然后再使用TKStudy ICE运行程序,查看结果. 六.实验原理图:

4

七.实验参考程序

程序1如下: ORG 8000H ;此为硬件仿真调试程序,如果用户使用软件仿真或直接运行,应改为0000H LJMP Main ORG 8100H ;此为硬件仿真调试程序,如果用户使用软件仿真或直接运行,应改为0100H

Main: MOV A,#0FFH CLR C MainLoop: CALL Delay RLC A MOV P1,A SJMP MainLoop

Delay: MOV R7, #0 Loop: MOV R6, #0 DJNZ R6, $ DJNZ R6, $ DJNZ R6, $ DJNZ R7, Loop RET END

八.实验思考

1.试用本节知识,用P1口完成流水灯,左移,右移,闪烁,全亮的程序。

5

实验四 中断实验

一.实验目的

利用单片机的中断INT0控制8个LED,进而熟练掌握单片机中断的应用. 二.实验设备及器件

IBM PC机 一台

示波器 一台

DP-51PRO.NET单片机仿真器,编程器,实验仪三合一综合开发平台 一台

三.实验内容

编写主程序,用P1口作为控制端口,使D1区的LED轮流亮.从D1到D8,再从D8回到D1,不断循环。编写中断服务程序,中断时(按INT0时)使P1的8个LED有依次显示三种不同的花样(花样自定义),循环三次后返回主程序。 四.实验要求

通过实验熟练地掌握单片机系统中断在应用开发过程中的各种应用。

五.实验步骤

1. 用导线连接A2区的J61接口P1与D1区的J52接口的LED. 2. 用导线连接A2区的J58接口INT0与D1区的KEY1相连.

3. 运行程序,观察实验现象.并随机地按KEY1,使主程序进入中断服务程序.

六.实验原理如图

七.实验参考程序

ORG 0000H ;起始地址

JMP START ;跳到主程序START

ORG 0003H ;INT0中断子程序起始地址

6

JMP EXT0 ;中断子程序 START: MOV IE,#10000001B ;INT0中断使能 MOV IP, #00000001B ;INT0中断优先 MOV TCON, #00000000B ;INT0为电平触发 MOV SP, #70H ;;设定堆栈指针 LOOP: MOV A, #0FFH ;左移初值

CLR C MOV R2, #08 LOOP1: RLC A MOV P1, A CALL DELAY DJNZ R2, LOOP1 MOV R2, #07 LOOP2:

RRC A MOV P1, A CALL DELAY DJNZ R2, LOOP2 JMP LOOP EXT0:

PUSH ACC PUSH PSW SETB RS0 CLR RS1 MOV A, #0 MOV R2, #10 LOOP3:

MOV P1, A CALL DELAY CPL A DJNZ R2, LOOP3 POP PSW POP ACC RETI DELAY: MOV R5, #20 D1: MOV R6, #20 D2: MOV R7, #248 DJNZ R7,$ DJNZ R6, D2

;C=0

;设定左移8次 ;含C左移一位 ;输出至P1 ;延时0.2秒 ;左移8次

;设定右移7次 ;含C右移一位 ;输出至P1 ;延时0.2秒 ;左移7次 ;重复 ;将累加器的值压入堆栈保存 ;将PSW的值压入堆栈保存 ;设定工作寄存器组1 ;为使P1全亮 ;闪烁5次(全亮,全减10次) ;将A输出至P1 ;延时0.2秒 ;将A的值取反 ;闪烁5次(亮减10次)? ;从堆栈取回PSW的值 ;从堆栈取回A的值 ;返回主程序 ;0.2秒 ;10毫秒 ;0.5毫秒

7

DJNZ R5, D1

RET END

八.实验思考

通过修改程序,怎样可以使中断程序改为8个LED的流水灯。

8


单片机实验指导书(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2017-2022年中国海上巡逻艇行业市场发展预测与投资咨询报告

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

马上注册会员

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