1.实验目的
(1)掌握I/O口的基本输入、输出功能。
(2)掌握开关量输入、输出的接口技术及编程方法。
(3)掌握延时子程序的编写和使用。
2.实验说明
P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。由准双向口结构可知,当P1口用作输入口时,必须先对端口的输出锁存器写“1”,若不先对它写“1”,读入的数据是不正确的。
3.实验电路图
本实验需要用到单片机最小应用系统模块,8位逻辑电平显示模块及8位逻辑电平输出模块。I/O口输入输出实验电路原理如图14-2所示。
4.实验内容及步骤
(1)开关控制LED实验 用P0口做输入口,接8位逻辑电平输出;用P1口做输出口,接8位逻辑电平显示,程序功能为8位开关控制对应发光二极管亮灭。
1)用8P数据线将单片机最小应用系统模块的P0口、P1口分别连接到8位逻辑电平输出模块的JD4和8位逻辑电平显示模块的JD10。
图14-2 I/O口输入输出实验原理图
2)用串行数据通信线连接计算机与仿真器,把仿真器40P插头连接到单片机最小应用系统模块的40P锁紧插座中,请注意仿真器插头的方向,缺口朝上。
3)打开Keil u Vision4仿真软件,首先建立本实验的项目文件,在程序编辑区域输入程序代码,进行编译,直到编译无误。
4)进行软件设置,选择硬件仿真,选择串行接口,设置波特率为38400bit/s。(www.xing528.com)
5)打开电源总开关及对应模块电源开关,本实验所用到的相关模块的电源指示灯VCC亮。单击开始调试按钮,单击RUN按钮运行程序。
6)拨动开关K0~K7,观察对应的发光二极管显示情况。
注:每次实验,上述步骤2~5都是相同的,因此在下面的实验步骤中不再重复叙述。
(2)P1口控制8位LED流水灯实验 用P1口做输出口,接8位逻辑电平显示,程序功能使发光二极管从右到左轮流循环点亮。
1)用8P数据线连接单片机最小应用系统模块的P1口到8位逻辑电平显示模块的JD10。
2)运行程序,观察发光二极管显示情况。发光二极管单只从右到左轮流循环点亮。
5.程序框图及源程序
(1)程序框图 开关控制LED实验程序框图如图14-3a所示,P1口控制8位LED流水灯实验程序框图如图14-3b所示。
图14-3 I/O口输入输出实验程序框图
(2)源程序
6.思考题
在实验中晶振为12MHz,试计算实验2中延时程序的延时时间为多少?
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。