实验一 IO口输入、输出实验
单片机io口实验[单片机IO口控制实验实验报告]
![单片机io口实验[单片机IO口控制实验实验报告]](https://img.taocdn.com/s3/m/7470e10d77c66137ee06eff9aef8941ea76e4bd4.png)
单片机io口实验[单片机IO口控制实验实验报告]一、实验目的1、熟悉MCS-51的I/O结构;2、掌握MCS-51I/O的使用方法;3、掌握MCS-51的中断机制。
二、实验原理1、MCS-51单片机的硬件结构片内结构:2、内部数据存储器:3、SFR的名称及其分布:4、I/O端口地址:5、P0P3端口功能总结:P0P3口都是并行I/O口,但P0口和P2口,还可用来构建系统的数据总线和地址总线,所以在电路中有一个MU某以进行转换。
而P1口和P3口无构建系统的数据总线和地址总线的功能,因此,无MU某P0口的MU某的一个输入端为“地址/数据〞信号。
P2口的MU某勺一个输入信号为“地址〞信号。
在4个口中只有P0口是一个真正的双向口,P1P3口都是准双向口。
原因:P0口作数据总线使用时,需解决芯片内外的隔离问题,即只有在数据传送时芯片内外才接通;不进行数据传送时,芯片内外应处于隔离状态。
为此。
P0口的输出缓冲器应为三态门。
P0口中输出三态门是两只场效应管组成,所以是一个真正的双向口。
P1P3口,上拉电阻代替P0口中的场效应管,输出缓冲器不是三态的一准双向口。
P3口的口线具有第二功能,为系统提供一些控制信号。
因此P3口增加了第二功能控制逻辑。
这是P3口与其它各口的不同之处。
6、P0口结构及特点:⑴P0口结构与运作1个输出锁存器,用于进行输出数据的锁存;2个三态输入缓冲器,分别用于锁存器和引脚数据的输入缓冲;1个多路开关MU某它的一个输入来自锁存器,另一个输入是地址/数据信号的反相输出。
在控制信号的的控制下能实现对锁存器输出端和地址/数据线之间的切换;两只场效应管组成的输出驱动电路。
⑵P0口的特点P0口是一个双功能的端口:地址/数据分时复用口和通用I/O口;具有高电平、低电平和高阻抗3种状态的I/O端口称为双向I/O端口。
P0口作地址/数据总线复用口时,相当于一个真正的双向I/O口。
而用作通用I/O口时,于引脚上需要外接上拉电阻,端口不存在高阻状态,此时P0口只是一个准双向口;为保证引脚上的信号能正确读入,在读入操作前应首先向锁存器写1;单片机复位后,锁存器自动被置1;一般情况下,如果P0口已作为地址/数据复用口时,就不能再用作通用I/O口使用;P0口能驱动8个TTL负载。
io流实验报告心得

io流实验报告心得在进行io流实验的过程中,我学到了很多关于输入输出流的知识,也对其使用方法有了更深入的了解。
通过这次实验,我不仅巩固了之前学到的知识,还学到了一些新的技巧和注意事项。
我了解到io流是用于处理输入输出的一种机制,它把数据从一个地方传输到另一个地方。
在实验中,我通过使用FileInputStream和FileOutputStream类来创建输入输出流对象,并使用它们来读取和写入数据。
通过使用这些类,我可以操作各种类型的文件,包括文本文件和二进制文件。
在实验的过程中,我发现输入输出流的使用是非常灵活的。
无论是读取文件还是写入文件,都可以根据具体的需求选择合适的方法和参数。
例如,通过使用BufferedReader类,我可以一次读取一行文本,而不是逐个字符读取。
这样可以提高效率,并且使代码更加简洁易读。
我还学到了一些关于异常处理的知识。
在实验中,我发现在使用io 流时,很容易出现各种异常,例如文件找不到、文件权限不足等。
为了避免程序崩溃,我学会了使用try-catch语句来捕获和处理这些异常。
通过使用这些语句,我可以在出现异常时进行相应的处理,例如输出错误信息或者进行重试操作。
在实验中,我还学到了关于流的关闭操作。
在使用io流时,一定要记得在使用完毕后关闭流,以释放系统资源。
我学会了使用try-finally或try-with-resources语句来确保流的正确关闭。
这样可以避免资源泄漏的问题,同时也可以提高程序的性能。
通过这次实验,我还了解到了一些关于文件的操作。
在实验中,我学会了如何创建文件和文件夹,如何遍历文件夹中的文件,以及如何删除文件和文件夹。
这些知识对于日常的文件操作非常有用,可以帮助我们更好地管理和处理文件。
总的来说,通过这次io流实验,我对输入输出流有了更深入的了解,学到了一些新的技巧和注意事项。
我相信这些知识将在我的编程生涯中发挥重要的作用。
同时,这次实验也让我更加熟悉了Java编程语言,提高了我的编程能力。
io实验原理

io实验原理
IO实验(Input/Output Experiment)是一种实验方法,主要用
于研究和验证物理学或工程学中的特定问题。
该实验旨在对待研究对象进行输入和/或输出的相应变化进行测量和记录。
IO实验的原理可以概括为以下几点:
1. 输入和输出变量:IO实验中,研究对象通常有一些输入变
量和输出变量。
输入变量是通过实验操作员或外部装置输入给系统的参数,而输出变量是系统响应的参数。
2. 实验设备:IO实验通常依赖于一系列的实验设备,例如传
感器、计算机或数据采集设备等,用于测量和记录输入和输出变量的值。
3. 变量控制:为了研究特定的问题,IO实验往往需要对一些
变量进行控制。
这可以通过调整实验设备的设置、改变输入变量的数值或使用不同的输入信号等方式来实现。
4. 数据分析:IO实验的目标是获得输入和输出变量之间的关系,因此在实验结束后,需要对所获得的数据进行分析和解释。
这可以通过统计学方法、数学模型或图表等方式来实现。
总之,IO实验通过测量和记录输入和输出变量之间的关系,
来研究和验证物理学或工程学中的特定问题。
它是研究和解决问题的重要工具,在科学和工程领域中得到广泛应用。
实验一 发光二极管实验

实验一发光二极管实验一、实验目的1、掌握AT89C51 单片机IO 口的输入输出。
2、掌握用查表方式实现AT89C51 单片机IO 口的控制。
3、练习单片机简单延时子程序的编写。
4、熟练运用Proteus 设计、仿真AT89C51 系统。
二、实验原理1、单片机最小系统由单片机芯片、时钟电路以及复位电路构成。
2、I/O 口P0 口:8 位双向I/O 口。
在访问外部存储器时,P0 口可用于分时传送低8 位地址总线和8 位数据总线。
能驱动8 个LSTTL 门。
P1 口:8 位准双向I/O 口(“准双向”是指该口内部有固定的上拉电阻)。
能驱动4 个LSTTL门。
P2 口:8 位准双向I/O 口。
在访问外部存储器时,P2 口可用于高8 位地址总线。
能驱动4 个LSTTL 门。
P3 口:8 位准双向I/O 口。
能驱动4 个LSTTL 门。
P3 口还有第二功能。
P1 口作为输出口时与一般的双向口使用方法相同。
当P1 口用为输入口时,必须先对它置“1”。
若不先对它置“1”,读入的数据可能是不正确的。
三、设计步骤:【PROTEUS 电路设计】在ISIS 中进行电路图设计,发光二极管流水灯实验装置电路原理图如下图所示。
图一1、按照元件清单从PROTEUS 库中选取元器件,进行第2、3、4、5、6 步,完3、放置电源和地;4、连线;5、参照原理图进行元件属性设置;6、电气检查。
【源程序设计】1、流程图:2、在KeilC 中进行源程序设计:3、编译、生成目标代码【PROTUES 仿真】1、在AT89C51 属性页中加载KeilC 中生成的目标代码;2、仿真、调试代码3、注意使用观察窗口四、实验内容1、编写延时子程序,延时时间为0.1S。
2、见图一。
通过AT89C51 单片机控制8 个发光二极管发光,实现亮点以由上到下循环移动,间隔时间为0.1S。
3、见图一。
通过AT89C51 单片机控制8 个发光二极管发光,循环实现亮点由上到下移动1 次(间隔时间为0.2S),由下到上移动1 次(间隔时间为0.2S),闪烁1 次(即先全亮0.1S,再全灭0.1S)。
实验一 IO开关量输入输出实验

单片机原理实验报告实验一:IO开关量输入输出实验学院: 物理与机电工程学院专业: 电子科学与技术班级: 2013 级 2 班学号: 201310530208姓名: 何丽丽指导老师: 柳妮实验一IO开关量输入输出实验目的:学习单片机读取IO引脚状态的的方法。
内容:编程读取IO引脚状态。
设备:EL-EMCU-I试验箱、EXP-89S51/52/53 CPU板。
编程:首先要把相关的引脚设置在IO的输入状态,然后写一个循环,不停地检测引脚的状态。
步骤:1、将CPU板正确安放在CPU接口插座上,跳线帽JP2短接在上侧。
2、连线:用导线将试验箱上的的IO1--- IO8分别连接到SWITCH 的8个拨码开关的K1---K8的输出端子K1---K8上,连接好仿真器。
3、实验箱上电,在PC机上打开Keil C环境,打开实验程序文件夹IO_INPUT下的工程文件IO_INPUT.Uv2编译程序,上电,在程序注释处设置断点,进入调试状态,打开窗口Peripherals-->IO-Port-->P0,改变开关状态,运行程序到断点处,观察窗口的数值与开关的对应关系。
程序:ORG 0000HLJMP MAINORG 0030HMAIN:MOV P0,#0FFHMOV A,P0SWAP AMOV P0,ASJMP MAINEND程序分析:从上面的程序可以看出我们需要用导线将试验箱上的的IO1--- IO8分别连接到SWITCH的8个拨码开关的K1---K8的输出端子K1---K8上,连接好仿真器。
在通过SWAP A MOV P0,A这组指令来对P0口所接的对应的发光二极管对应的状态通过拨码开关的开关来控制发光二极管。
结论:通过上面这段程序,我们实现了用拨码开关来控制P0口所接的发光二极管的亮灭。
通过I\O口P0.0—P0.3接拨码开关,P0.4—P0.7一一对应的接发光二极管。
实验一简单IO口扩展实验

8255a是比较常用的一种并行接口芯片,其特点在许多教科书中均有介绍。8255a有三个8位的输入输出端口,通常将a端口作为输入用,b端口作为输出用,c端口作为辅助控制用,本实验也是如此。实验中,8255a工作于基本输入输出方式(方式0)
七、实验结果
程序全速运行后,逻辑电平开关的状态改变应能在led上显示出来。例如:
四、实验原理介绍
本实验用到两部分电路:开关量输入输出电路和8255可编程并口电路
五、实验步骤
1.实验接线
cs0 cs8255;pa0~pa7平推开关的输出k1~k8;pb0~pb7发光二极管的输入led1~led8
2.编程并全速或单步运行
3.全速运行时拨动开关,观察发光二极管的变化。当开关某位置于l时,对应的发光二极管点亮,置于h时熄灭。
四、实验原理介绍
本试验用到两部分电路:脉冲产生电路、8253定时器/计数器电路
五、实验步骤
1.试验连线
CS0<->CS8253OUT0<->8253CLK2OUT2<->LED1CLK3<->8253CLK0,
2.编程调试程序
3.全速运行,观察试验结果
六、实验提示
8253是计算机系统中经常使用的可编程定时器/计数器,其内部有三个相互独立的计数器,分别称为T0,T1,T2。8253有多种工作方式,其中方式3为方波方式。当计数器设好初值后,计数器递减计数,在计数值的前一半输出高电平,后一半输出地电平。试验中,T0、T1的时钟由CLK3提供,其频率为750KHz。程序中,T0的初值设为927CH(37500十进制),则OUT0输出的方波周期为(37500*1/750000=0.05s)。T2采用OUT0的输出为时钟,则在T2中设置初值为n时,则OUT2输出方波周期为n*0.05s。n的最大值为FFFFH,所以OUT2输出方波最大周期为3276.75s(=54.6分钟)。可见,采用计数器叠加使用后,输出周期范围可以大幅度提高,这在实际控制中是非常有用的。
io的原理及应用单片机实验

IO的原理及应用单片机实验1. IO简介IO(Input/Output)是指计算机与外界设备进行信息交互的接口。
在单片机中,IO端口是与外部设备进行数据输入和输出的重要通路。
它充当着信息传输的桥梁,实现单片机与外部设备的连接和数据的交互。
了解IO的原理及应用对于进行单片机实验和开发非常重要。
2. IO的原理IO端口主要包括输入端口和输出端口。
通过配置相应的寄存器和引脚状态,可以实现外部设备与单片机的数据输入和输出。
•输入端口:将外部设备的信号输入到单片机中。
输入端口通常和外部器件的开关量信号相连,如按钮、开关等。
•输出端口:将单片机中的数据输出给外部设备。
输出端口通常和外部器件的执行元件相连,如LED灯、马达等。
3. IO的应用IO的应用非常广泛,涵盖了很多领域。
下面以单片机实验为例,介绍IO的常见应用。
3.1 LED闪烁实验LED闪烁实验是单片机实验中最基础的实验之一。
通过控制IO口的电平,可以控制LED的亮灭。
实验步骤: 1. 连接硬件电路,将LED的正极连接到单片机的输出口,负极连接到地。
2. 在单片机的程序中配置输出端口为高电平或低电平。
3. 运行程序,观察LED的亮灭情况。
3.2 数码管显示实验数码管显示实验是单片机实验中常见的应用之一。
通过IO口的输出控制,可以实现数字的显示。
实验步骤: 1. 连接硬件电路,将数码管的引脚连接到单片机的输出端口。
2.在单片机的程序中配置输出端口的电平,根据不同的情况控制数码管的显示。
3.运行程序,观察数码管的显示结果。
3.3 温度传感器实验温度传感器实验是单片机实验中涉及到模拟信号输入的应用之一。
通过IO口的输入控制,可以获取温度传感器的模拟信号,并进行处理。
实验步骤: 1. 连接硬件电路,将温度传感器的输出引脚连接到单片机的模拟输入端口。
2. 在单片机的程序中配置输入端口为模拟转换模式,并进行相应的模拟信号转换。
3. 运行程序,获取温度传感器的模拟信号,并进行显示或者其他处理。
接口实验一 IO口输入、输出实验

贵州大学实验报告纸系别电科班级电科091班姓名学号课程名称微机接口技术成绩评定教师签名实验时间2012年 5 月11日实验一 I/O口输入、输出实验一、实验目的学习单板方式下扩展简单I/O接口的方法。
学习微处理器的编程技术。
二、实验内容数据口扩展74LS244输入数据,数据口扩展74LS273输出数据。
输入端接八位逻辑电平输出,输出端接八位逻辑电平显示,编写一个程序,读入开关状态并输出显示。
三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明和电路原理图1、74LS244介绍:74LS244是三态输出的八缓冲器,由2组、每组四路输入、输出构成。
每组有一个控制端,由控制端的高或低电平决定该组数据被接通还是断开。
74LS244的引脚如图1-1A所示。
图1-1A 74LS244 图1-1B 74LS2732、74LS273介绍:74LS273是八D型触发器,带清除端。
本实验用74LS273输出数据,通过片选信号和写信号将数据总线上的值锁存在74LS273中,同时在74LS273的输出端口输出数据,当数据总线上的值撤消以后,由于74LS273能锁存信号,74LS273的输出端保持不变,直到有新的数据被锁存。
74LS273的引脚如图1-1B所示。
图1-2 74LS244扩展输入电路本实验需要用到CPU模块(F3区)、八位逻辑电平输出模块(E4区)、八位逻辑电平显示模块(B5区)、扩展输入模块(F2区)、扩展输出模块(F1区)。
扩展输入电路原理图参见图1-2,扩展输出电路原理图参见图1-4,八位逻辑电平输出电路原理图参见图1-3,八位逻辑电平显示电路原理图参见图1-5。
图1-3 八位逻辑电平输出图1-4 74LS273扩展输出电路图1-5 八位逻辑电平显示五、实验程序1、实验修改后程序:;//**************************************************************** ;文件名: In_Out for 8088;功能: I/O口输入、输出实验;接线: 用8位数据线连接八位逻辑电平输出模块的JD1E到扩展输入模块的JD2C;; 八位逻辑电平显示模块的JD4B到扩展输出模块的JD1C;; 用导线连接CPU模块的8000H到扩展输入模块的CS_244;; 8100H到扩展输出模块的CS_273。
51单片机-IO口实验报告

《信息技术综合实践》课程实验报告
1.打开KeiluVision2应用程序,新建一个工程,将IO.c文件添加到新建的工程中(将头文件中的头文件中的regx修改为reg),在输出中选择生成相应的HEX文件并保存到相应文件夹中
2.打开KeiluVision2应用程序,新建一个工程,将IO.c文件添加到新建的工程中(将头文件中的头文件中的regx修改为reg),在输出中选择生成相应的HEX文件并保存到相应文件夹中,进行文件的编译和调试。
3.进行实验箱的连线。
4.打开下载器,擦除并将生成的HEX文件调入Flash,然后选择“自动”。
5.通过示波器观察实验现象
5.1 示波器波形图
5.1.1(i的范围是小于500,波形图如下所示)
由图可知:当不修改i的范围时,波形的频率比较高,约在150Hz左右。
5.1.2(将代码中i的范围修改为小于20000,波形图如下所示)
由图可知:将i的范围变大以后,波形的频率变低并且稳定在5Hz左右。
5.2 小灯闪烁视频
(灯亮时的图片)。
单片机开发环境及基本IO设备操作实验报告

北京XXXX学院实验报告课程:单片机原理与应用班级:XXXX 姓名:XXXX 学号:XXXXXXXX 成绩:指导教师:XXX 实验日期及时间:2017.4.4 10:00-13:00 座位号:04 必修/选修:必修实验序号:实验一实验名称:单片机开发环境及基本IO设备操作一、实验目的1.掌握单片机嵌入式开发环境的使用2.熟悉开发板硬件实验环境及资源3.掌握通用数字I/O端口的输入输出设置和应用二、实验内容与要求功能:按键控制LED灯。
利用按键key1和key2控制LED灯闪烁点亮。
Key1按下时单号灯闪烁,Key2按下时双号灯闪烁。
实验要求:1.在ICCAVR中编写程序;2.下载到实验板中进行调试;3.实验成功后进行课堂验收。
三、实验方案设计1. 实验的方案的论述和分析本次实验所需的器件:电源、ATmega16单片机、LED灯、按键开关、电阻。
把PA0配置成输出,PA4、PA5配置成输入,并使能PA4、PA5的上拉电阻。
与PA4、PA5相连的是两个按键开关key1和key2。
在按键检测时,当PA0输出低电平时,读PA4、PA5引脚寄存器,若PA4引脚为低电平说明Key1被按下,若PA5引脚为低电平说明Key2被按下。
把PD口配置为输出,控制8个LED灯。
2.硬件电路原理图2.软件流程图、重要数据结构、重要控制参数设计等(1)软件流程图:(2)重要数据结构及重要控制参数设计:初始化配置:DDRA配置为0X0f,PA0为输出。
PA4、PA5配置成输入,并使能PA4、PA5的上拉电阻。
按键扫描部分:通过PINA和0B00110000的按位读取PA4和PA5口是否按下。
当PA4按下时key_value==2,当PA5按下时key_value==1,并分别执行相应语句。
四、实验结果Key1按下时单号灯闪烁Key2被按下时双号灯闪烁五、实验分析及体会1.实验过程中遇到的主要问题、(拟)解决方法。
由于是第一次做单片机实验,对实验过程和代码编写不是很熟悉。
fgIO口的使用

实验一 I/O口的使用一、实验目的1、掌握P3口、P1口简单使用。
2、学习延时程序的编写和使用。
二、实验内容1、实验原理图:2、实验内容(1)P3.3口做输入口,外接一脉冲,每输入一个脉冲,P1口按十六进制加1。
(2)P1口做输出口,编写程序,使P1口接的8个发光二极管L1—L8按16进制加1方式点亮发光二极管。
3、实验说明(1)P1口是准双向口,它作为输出口时与一般的双向口使用方法相同,由准双向口结构可知:当P1口作为输入口时,必须先对它置高电平,使内部MOS管截止,因内部上拉电阻是20KΩ—40KΩ,故不会对外部输入产生影响。
若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
(2)延时子程序的延时计算问题。
对于延时程序DELAY :MOV R6, #00HDELAY1:MOV R7, #80HDJNZ R7, $DJNZ R6, DELAY1查指令表可知MOV、DJNZ指令均需用两个机器周期,而一个机器周期时间长度为12/ 6.0MHZ,所以该段指令执行时间为:((80+1)×256+1)×2×(12÷6000000)=132.1ms三、程序程序清单:ORG 0540hHA1S: MOV A,#00HHA1S1: JB P3.3,HA1S1MOV R2,#20HLCALL DELAYJB P3.3,HA1S1HA1S2: JNB P3.3,HA1S2MOV R2,#20HLCALL DELAYJNB P3.3,HA1S2INC APUSH ACCCPL AMOV P1,APOP ACCAJMP HA1S1DELAY: P USH 02HDELAY1: PUSH 02HDELAY2: PUSH 02HDELAY3: DJNZ R2,DELAY3POP 02HDJNZ R2,DELAY2POP 02HDJNZ R2,DELAY1POP 02HDJNZ R2,DELAYRETEND四、实验步骤①P3.3用插针连至K1, P1.0—P1.7用插针连至L1—L8。
简单io实验报告

简单io实验报告简单IO实验报告引言:IO(Input/Output)是计算机领域中的一个重要概念,它指的是计算机与外部设备之间的数据交互过程。
在本次实验中,我们将通过一个简单的IO实验来深入了解IO的基本原理和应用。
实验目的:通过实验,掌握IO的基本概念和使用方法,了解IO在计算机系统中的重要性和应用场景。
实验材料:1. 一台计算机2. 一个键盘3. 一台打印机实验步骤:1. 输入输出设备的连接:将键盘通过USB接口连接到计算机的主机上,将打印机通过USB接口连接到计算机的主机上。
2. 输入设备的使用:打开计算机,进入操作系统界面。
通过键盘输入一段文字,并观察文字在屏幕上的显示效果。
尝试使用不同的按键和组合键,观察屏幕上的反应。
3. 输出设备的使用:打开一个文本编辑器,输入一段文字。
将文字保存为文本文件,并选择打印机作为输出设备,点击打印按钮,观察打印机的工作状态和输出结果。
4. IO的原理解析:IO的实现依赖于计算机系统的硬件和操作系统的支持。
当用户通过键盘输入时,键盘会将输入的信号转换为电信号,并通过USB接口发送给计算机主机。
计算机主机接收到信号后,将信号解析为对应的字符,并通过显示器将字符显示在屏幕上。
当用户选择打印机作为输出设备时,计算机主机将要打印的内容转换为打印机可识别的指令,并通过USB接口发送给打印机。
打印机接收到指令后,将指令解析并执行,最终将内容打印在纸张上。
5. IO的应用场景:IO广泛应用于计算机系统中的各个领域。
在个人电脑中,键盘和鼠标是最常见的输入设备,显示器和打印机是常见的输出设备。
在工业自动化领域,传感器常用于采集环境数据,并通过IO接口将数据传输给计算机进行处理。
在网络通信领域,网卡和路由器等设备通过IO接口与计算机连接,实现数据的传输和交换。
实验结论:通过本次实验,我们深入了解了IO的基本原理和应用。
IO在计算机系统中起着至关重要的作用,它实现了计算机与外部设备之间的数据交互。
io口实验报告

io口实验报告IO口实验报告引言:IO口(Input/Output Port)是计算机硬件中的一种通信接口,用于与外部设备进行数据交互。
本实验旨在通过对IO口的实际应用,深入了解IO口的原理和使用方法。
一、实验目的通过本次实验,我们的目标是掌握IO口的基本原理和操作方法,了解IO口在计算机系统中的重要性,并能够熟练地使用IO口进行数据输入和输出。
二、实验装置本次实验所需的装置包括一台计算机、IO口接口板、连接线和外部设备(如LED灯、按钮等)。
三、实验过程1. 连接IO口接口板将IO口接口板与计算机通过连接线连接好,并确保连接稳固。
接口板上通常会有标识,根据标识将连接线插入正确的接口。
2. 配置IO口参数打开计算机,并进入操作系统。
根据计算机型号和操作系统的不同,配置IO口参数的具体步骤可能会有所不同。
一般来说,可以通过设备管理器或者控制面板中的设备设置选项来进行配置。
3. 进行IO口输入实验将一个按钮连接到IO口接口板的输入端口上。
通过编写简单的程序代码,实现当按钮按下时,计算机能够读取到IO口的输入信号,并作出相应的反应,如显示一个提示信息或者改变屏幕上的图像。
4. 进行IO口输出实验将一个LED灯连接到IO口接口板的输出端口上。
通过编写程序代码,实现当计算机发出IO口的输出信号时,LED灯能够亮起。
可以尝试不同的输出信号模式,如闪烁、渐变等,以观察LED灯的不同反应。
5. 拓展实验除了按钮和LED灯,还可以尝试连接其他外部设备,如蜂鸣器、温度传感器等,以进一步探索IO口的应用。
通过编写相应的程序代码,实现与这些设备的交互,并观察其效果。
四、实验结果与分析通过以上实验操作,我们可以得到以下实验结果:1. IO口输入实验:当按下按钮时,计算机能够读取到IO口的输入信号,并作出相应的反应。
这说明IO口能够实现数据的输入,为计算机提供外部信息。
2. IO口输出实验:当计算机发出IO口的输出信号时,LED灯能够亮起。
IO口输入、输出实验

实验一I/O口输入、输出实验2010.04.20一、实验目的:了解LED二极管的工作原理。
掌握LED二极管亮灭左右移的编程方法。
二、实验原理:八个发光二极管L1-L8分别接在单片机的P1.0-P1.7接口上,输出“0”时,发光二极管亮。
我们可以运用输出端口指令MOV P1,A或MOV P1,#DATA,只要给累加器值或常数值,然后执行上述的指令,即可达到输出控制的动作。
表1三、实验电路原理图四、程序框图实验程序:START: MOV ACC,#0FEH ;ACC中先装入LED1亮的数据(二进制的11111110)MOV P1,ACC ;将ACC的数据送P1口MOV R0,#7LOOP1: RL A ;将ACC中的数据左移一位MOV P1,A ;把ACC左移后的数据送p1口显示ACALL DELAY ;调用延时子程序DJNZ R0,LOOP1 ;没有移动够7次继续移动MOV R1,#7LOOP2: RR A ;将ACC中的数据右移一位MOV P1,A ;把ACC右移后的数据送p1口显示ACALL DELAYDJNZ R1,LOOP2AJMP START ;移动完7次后跳到开始重来,以达到循环流动效果;----- 延时子程序 -----DELAY: MOV R2,#255D1: MOV R3,#255DJNZ R3,$DJNZ R2,D1RET ;延时子程序结束,返回到调用处的下一句END ;程序结束实验现象:实验实现了单一灯的左移右移。
开始时P1.0口的LED点亮,然后P1.1→P1.2→P1.3→┅→P1.7的LED依次点亮,实现了右移。
当P1.7的LED点亮后,P1.6→P1.5→P1.4→┅→P1.0口的LED又依次点亮,实现了左移。
然后循环,从而实现灯的循环左右移。
实验结论:通过单片机对P1口赋值,然后利用移位RL和RR指令使相应的LED点亮,可以实现灯的左右移。
单片机实验报告(相当不错,有具体实验结果分析哦)

学生姓名:学号:专业班级:实验类型:□ 验证□ 综合□ 设计□ 创新实验日期:实验成绩:实验一 I/O 口输入、输出实验地点:基础实验大楼A311一、实验目的掌握单片机P1口、P3口的使用方法。
二、实验内容以P1 口为输出口,接八位逻辑电平显示,LED 显示跑马灯效果。
以P3 口为输入口,接八位逻辑电平输出,用来控制跑马灯的方向。
三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明和电路原理图P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止。
因为内部上拉电阻阻值是20K~40K,故不会对外部输入产生影响。
若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
本实验需要用到CPU模块(F3区)和八位逻辑电平输出模块(E4区)和八位逻辑电平显示模块(B5区)。
2学生姓名:学号:专业班级:实验类型:□ 验证□ 综合□ 设计□ 创新实验日期:实验成绩:五、实验步骤1)系统各跳线器处在初始设置状态。
用导线连接八位逻辑电平输出模块的K0 到CPU 模块的RXD(P3.0 口);用8 位数据线连接八位逻辑电平显示模块的JD4B 到CPU 模块的JD8(P1 口)。
2)启动PC 机,打开THGMW-51 软件,输入源程序,并编译源程序。
编译无误后,下载程序运行。
3)观察发光二极管显示跑马灯效果,拨动K0 可改变跑马灯的方向。
六、实验参考程序本实验参考程序:;//******************************************************************;文件名: Port for MCU51;功能: I/O口输入、输出实验;接线: 用导线连接八位逻辑电平输出模块的K0到CPU模块的RXD(P3.0口);;用8位数据线连接八位逻辑电平显示模块的JD2B到CPU模块的JD8(P1口)。
单片机io口实验结论

单片机io口实验结论单片机IO口实验结论单片机IO口是单片机与外部设备交互的重要接口,通过IO口可以实现输入输出功能。
在进行单片机IO口实验的过程中,我们得出了以下几点结论。
1. 单片机IO口具有输入和输出功能。
通过设置相应的寄存器,可以将IO口配置为输入或输出模式。
输入模式时,可以读取外部信号的状态;输出模式时,可以向外部设备发送信号。
2. 单片机IO口具有高低电平控制能力。
通过设置相应的寄存器,可以将IO口输出高电平或低电平信号。
高电平一般表示逻辑1,低电平表示逻辑0。
通过控制IO口的高低电平,可以与其他设备进行通信。
3. 单片机IO口具有上拉和下拉功能。
当IO口配置为输入模式时,可以通过上拉或下拉电阻来确保输入信号的稳定性。
上拉电阻使得输入信号在未连接时保持高电平,下拉电阻使得输入信号在未连接时保持低电平。
4. 单片机IO口具有中断功能。
通过配置相应的寄存器和中断向量表,可以使IO口在特定条件下触发中断。
当IO口输入信号满足中断触发条件时,可以立即响应中断并执行相应的中断服务程序。
5. 单片机IO口的电流限制。
在使用IO口时,需要注意IO口的电流限制。
如果连接的外部设备需要较大的电流驱动能力,可以通过外部电流放大器或继电器等方式来实现。
6. 单片机IO口的电压范围。
在使用IO口时,需要了解IO口的电压范围。
不同的单片机IO口电压范围可能有所不同,需要根据具体的需求选择合适的单片机型号和IO口。
7. 单片机IO口的电平转换。
当单片机与其他设备进行通信时,可能存在电平不匹配的情况。
可以通过电平转换电路来实现不同电平之间的转换,以确保通信的稳定性。
8. 单片机IO口的使用限制。
在使用IO口时,需要遵守单片机的使用规范和限制。
例如,不同的IO口可能有不同的功能限制、电流限制和电压范围限制,需要根据具体的芯片手册进行配置。
总结:单片机IO口是单片机与外部设备交互的重要接口,通过IO 口可以实现输入输出功能。
单片机《输入输出口》实验报告

实验一I/O口输入输出实验一、实验目的1. 掌握单片机的并行I/O口的接口结构、驱动能力特点和应用处理方法;2. 掌握单片机I/O引脚作为输出引脚的使用方法;3. 掌握单片机I/O口配置方法4. 掌握利用单片机I/O口设计单片机应用程序用输入控制输出的方法;5. 掌握单片机控制程序的结构。
二、实验原理及实验内容实验要求:利用单片机并行口做不规则花样流水灯,流水花样不低于16个。
实验原理:1.LED原理图2.STC15的IO口原理P6m0为0时,P6m1为0时,IO口模式为准双向口(传统8051 I/O口模式,弱上拉)灌电流可达20mA,拉电流为270微安,由于制造误差,实际为270~150微安* P6m0为0时,P6m1为1时,为推挽输出(强上拉输出,可达20mA,要加限流电阻)* P6m0为1时,P6m1为0时,(为高阻输出电流既不能流入也不能流出)P6m0为1时,P6m1为1时,为开漏(Open Drain),内部上拉电阻断开。
开漏模式即可读取外部状态也可以对外输出(高低电平)。
按照表格寄存器内容,我们对8个LED1,也就是P6口进行配置,当P6输出低电平时LED被点亮。
所以配置如下:P6M1 &= 0x00;P6M0 &= 0x00; //作为普通IO口,为弱上拉sbit KEY1=P2^0;sbit KEY2=P2^1;//定义两个按键由于STC15F2K60S2寄存器初始化时默认是:P6M1=0x00;P6M0 = 0x00;3.程序流程图主循环程序流程图三、实验程序#include <STC15.h>#include <intrins.h>#define Uchar unsigned char#define Uint unsigned intint LED[]={0xfc,0xf3,0xcf,0x3f,0xe7,0xdb,0xbd,0x7e,0x7e,0xbd,0xdb,0xe7, 0xfe,0xfb,0xef,0xbf,0xfd,0xf7,0xdf,0x7f};void P6Init()//IO口初始化函数{P6M0=0X00;P6M1=0X00;}void delay3s(void) //误差0us{unsigned char a,b,c;for(c=189;c>0;c--)for(b=230;b>0;b--)for(a=33;a>0;a--);}void main(){Uchar i=0;P0Init();while(1){for(i=0;i<20;i++){P6=LED[i];delay3s();}}}四、实验仪器和设备4.使用了keil软件Proteus 8 Professional软件。
单片机实验IO口的输入输出实验

单片机实验IO口的输入输出实验单片机实验是一种很好的学习方式,通过对单片机的实验可以快速地提高对单片机的了解,这对于工程师来说是非常有用的。
本文将主要介绍单片机实验中的IO口的输入输出实验。
IO口是单片机上一个非常重要的部分,在单片机实验中,IO口的输入输出是一个非常常见的实验。
IO口可以接收和发送电信号,它可以连接到开关、LED灯、继电器等,可以实现很多功能。
当我们需要将一个信号输入到单片机中时,我们需要使用IO口的输入功能。
当我们需要从单片机中输出一个信号时,我们需要使用IO口的输出功能。
在单片机实验中,我们需要测试IO口的输入功能是否正常。
测试IO口的输入功能有很多方法,其中一个方法是使用开关。
我们需要将一个开关连接到单片机的某个IO口上,当开关打开时,单片机能够获取到一个高电平信号,当开关关闭时,单片机能够获取到一个低电平信号。
通过这种方法我们可以测试单片机的IO口的输入功能是否正常。
我们可以通过编写一个程序,来判断单片机是否正常地读取到开关状态。
下面是一个范例程序:上面的程序中,我们通过判断P2口的高低电平状态,来控制P0口的输出状态。
当P2口接到高电平时,P0口的输出引脚变为高电平,LED灯就会亮。
当P2口接到低电平时,P0口的输出引脚变为低电平,LED灯就会灭。
与IO口的输入实验类似,我们也可以测试IO口的输出功能。
我们可以将一个LED灯连接到单片机的某个IO口上,当我们需要将信号输出时,单片机会控制IO口的输出引脚,从而控制LED灯的亮灭。
下面是一个范例程序:四、总结IO口的输入输出实验是单片机实验中非常常见的实验。
通过这个实验,我们能够测试单片机的IO口的输入输出功能是否正常。
在实际工作中,我们也经常需要控制开关、LED 灯、继电器等,这时候就需要使用IO口来实现控制。
因此,对于工程师来说,掌握IO口的输入输出实验是非常重要的。
java输入输出实验报告

java输入输出实验报告Java输入输出实验报告引言:Java是一种广泛应用的编程语言,其输入输出(Input/Output,简称I/O)功能对于程序的交互和数据处理至关重要。
本实验旨在通过实际操作,探索Java中的输入输出机制,并深入了解其原理和应用。
一、实验目的通过本次实验,我们的目标是:1. 理解Java中的输入输出概念和基本原理;2. 掌握Java中的标准输入输出流(System.in和System.out)的使用;3. 学会使用Java中的文件输入输出流,实现对文件的读写操作;4. 熟悉Java中的异常处理机制,处理输入输出过程中的异常情况。
二、实验环境本次实验所需的环境和工具如下:1. Java开发工具(如Eclipse、IntelliJ IDEA等);2. 一台配置良好的计算机。
三、实验过程1. 标准输入输出流的使用在Java中,标准输入流(System.in)用于接收用户的输入,标准输出流(System.out)用于向屏幕输出信息。
我们可以通过Scanner类来实现对标准输入流的读取,通过System.out.println()方法实现对标准输出流的输出。
下面是一个示例代码:```javaimport java.util.Scanner;public class StandardIOExample {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.print("请输入您的姓名:");String name = scanner.nextLine();System.out.println("您好," + name + "!欢迎使用Java输入输出功能。
"); }}```2. 文件输入输出流的使用除了标准输入输出流,Java还提供了FileInputStream和FileOutputStream类,用于实现对文件的读写操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
贵州大学实验报告纸
实验一I/O口输入、输出实验
一、实验目的
掌握单片机P1口、P3口的使用方法。
二、实验要求
根据实验内容编写一个程序,并在实验仪上调试和验证。
三、实验内容
以P1口为输出口,接八位逻辑电平显示,LED显示跑马灯效果。
以P3口为输入口,接八位逻辑电平输出,用来控制跑马灯的方向。
四、实验说明和电路原理图
P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止。
因为内部上拉电阻阻值是20K~40K,故不会对外部输入产生影响。
若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
本实验需要用到CPU模块(F3区)和八位逻辑电平输出模块(E4区)和八位逻辑电平显示模块(B5区),八位逻辑电平输出电路原理图参见图1-1。
八位逻辑电平显示电路原理图参见图1-2。
图1-2 八位逻辑电平显示
图1-1 八位逻辑电平输出
五、实验步骤
㈠实验程序编写
1、实验程序:
;//******************************************************************
;文件名: Port for MCU51
;功能: I/O口输入、输出实验
;接线: 用导线连接八位逻辑电平输出模块的K0到CPU模块的RXD(P3.0口),K1
;到CPU模块的P3.1口;
;用8位数据线连接八位逻辑电平显示模块的JD4B到CPU模块的JD8(P1口)。
;//****************************************************************** DIR BIT P3.0
ORG 0000H
LJMP START
ORG 0100H
START:
Output1:
mov a, #0fEH
mov r5, #8
loop1:
CLR C
mov C,DIR
JC Output2
mov P1, a
rl a
Acall Delay
djnz r5, loop1
Sjmp Output1
Output2:
mov a, #07fH
mov r5, #8
loop2:
CLR C
mov C,DIR
JNC Output1
mov P1, a
rr a
Acall Delay
djnz r5,loop2
Sjmp Output2
Delay:
mov r6,#0
DelayLoop1:
mov r7,#0
DelayLoop2:
NOP
NOP
djnz r7,DelayLoop2
djnz r6,DelayLoop1
ret
end
2、修改后的程序为:
ORG 0000H
LJMP START
ORG 0100H
START:
Output1:
mov a, #0fEH
mov R5, #8
loop1:
MOV R2,P3
CJNE R2,#0FFH,Output2
mov P1, a
rl a
Acall Delay
djnz R5, loop1
Sjmp Output1
Output2:
mov a, #07fH
mov R5, #8
loop2:
MOV R2,P3
CJNE R2,#0FEH,Output3
mov P1, a
rr a
Acall Delay
djnz R5,loop2
Sjmp Output2
Output3:
mov a, #0FFH
mov R5, #9
loop3:
MOV R2,P3
CJNE R2,#0FDH,Output4
CLR C
mov P1, a
RRC a
Acall Delay
djnz R5, loop3
mov R5, #8
loop4:
SETB C
RLC A
MOV P1,A
Acall Delay
djnz R5, loop4
Sjmp Output3
Output4:
MOV R2,P3
CJNE R2,#0FCH,Output1
MOV R3,#00H
MOV R4,#08H
MOV DPTR, #tab ; 表首址
loop5:
MOV A,R3
MOVC A, @A+DPTR ; 查表读取第一个字节 MOV P1,A
INC R3
ACALL DELAY
DJNZ R4,loop5
SJMP Output4
Delay:
mov r6,#0 ;延时程序
DelayLoop1:
mov r7,#0
DelayLoop2:
NOP
NOP
djnz r7,DelayLoop2
djnz r6,DelayLoop1
ret
tab:
DB 0FFH,0E7H,0C3H,81H,00H,81H,0C3H,0E7H
End
㈡系统各跳线器处在初始设置状态。
1、用导线连接八位逻辑电平输出模块的K0到CPU模块的RXD(P3.0口),K1到CPU
模块的TXD(P3.1口);
2、用8位数据线连接八位逻辑电平显示模块的JD4B到CPU模块的JD8(P1口)。
㈢启动PC机,打开THGMW-51软件,输入源程序,并编译源程序。
编译无误后,下载程序运行。
㈣观察发光二极管显示跑马灯效果
六、实验现象和分析
1、实验现象
对于原来的程序,运行程序后,拨动开关K0,可以实现两种流水灯方式的选择,即可以实现左移和右移,而修改程序后,可以实现四种方式的选择,选择通过
K1和K0来实现,除了左移和右移,还实现了从左到右逐次亮再从右到左逐次灭
和从中间到两边亮,在从两边倒中间灭。
2、实验分析
对于实验程序,通过检测P3.0和P3.1的状态来实现跳转,这样就可以对于不同的K0K1状态来实现不同流水灯方式调用。
在设置流水灯的的方式时,
可以采用累加器的移动来实现,也可以用查表发来实现。
在发光二极管的显示
是还要采用延时程序设计来实现,这样才可以避免因为时间太短而观察不到流
水灯现象。
实验中可以看到四种流水灯方式的选择是正确的,因此,程序的设
计也是正确的。
七、实验总结
通过实验基本上掌握了单片机的输入输出使用方法,在单片机中有四组并行输入输出口,都可以作为一般的输入输出口来用,程序中用MOV 指令可以实现输入输出。
通过实验还学会了流水灯的实现方法和实现延时的程序编写方法。
这为下面的实验做好了准备。