单片机I/O口控制实验

单片机实验

28人已加入

描述

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

一. 实验目的
利用单片机的P1 口作IO 口,使用户学会利用P1 口作为输入和输出口。
二. 实验设备及器件
IBM PC 机 一台
DP-51PROC 单片机综合仿真实验仪 一台
三. 实验内容
1. 编写一段程序,用P1 口作为控制端口,使D1 区的LED 轮流亮。
2. 编写一段程序,用P1.0~P1.6 口控制LED,P1.7 控制LED 的亮和灭(P1.7 接按
键,按下时LED 亮,不按时LED 灭。)
四. 实验要求
学会使用单片机的P1 口作IO 口,如果有时间用户也可以利用P3 口作IO 口来做
该实验
五. 实验步骤
1. 用导线把A2 区的J61 接口与D1 区的 J52 接口相连。原理如图3.2A 所示。

控制

图3.2 实验2 原理图
2. 先编写一个延时程序。
3. 将LED 轮流亮的程序编写完整并调试运行。
4. 使用导线把A2 区的J61 接口的P1.0~P1.6 与D1 区的 J52 接口的LED1~LED7
相连,另外A2 区J61 接口的P1.7 与D1 区的J53 的KEY1 相连。原理如图3.2B
所示。
5. 编写P1.7 控制LED 的程序,并调试运行。(按下K1 看是否全亮)
6. A2 区J61 接口的P1.7 与D1 区的J54 的SW1 相连。然后再运行程序,查看结果。

六. 实验预习要求
阅读本书的2.8.2 节内容,理解该实验的硬件结构。还可以先把程序编好,然后在
Keil C51 环境下进行软件仿真。
七. 实验参考程序
程序1:
ORG 8000H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0000H
LJMP Main
ORG 8100H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0100H
Main:
MOV A,#0FFH
CLR C
MainLoop:
CALL Delay
RLC A
MOV P1,A ;把A 的值输出到P1 口
SJMP MainLoop
Delay: ;延时
MOV R7, #0
Loop:
MOV R6, #0
DJNZ R6, $
DJNZ R6, $
DJNZ R6, $
DJNZ R7, Loop
RET

END
程序2:
ORG 8000H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0000H
LJMP Main
ORG 8100H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0100H
Main:
JB P1.7,SETLED ;按键没有按下时,跳转到SETLED
CLRLED:
CLR P1.0
CLR P1.1
CLR P1.2
CLR P1.3
CLR P1.4

CLR P1.5
CLR P1.6
SJMP Main
SETLED:
SETB P1.0
SETB P1.1
SETB P1.2
SETB P1.3
SETB P1.4
SETB P1.5
SETB P1.6
SJMP Main;
END
八. 实验思考题
(1) 请用户思考一下,想出几个实现以上功能的编程方法。
(2) 请用户再思考一下,第二个程序中如果使用KEY1 作为外部中断控制LED 的亮
和灭时,程序应如何修改。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分