实验一简单IO口扩展实验
实验一 简单I0口扩展实验.

实验一简单I/0口扩展实验一、实验目的利用74LS244和74IS273扩展I/0口。
二、实验内容1、熟悉74LS273,74LS244的应用接口方法。
2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。
三、实验原理图四、实验步骤1、连线:将74LS244(IC25)的输入SI0~SI7分别与逻辑电平开关电路的KI~K8相连,从I/0地址片选信号CS0~ CS7\中任选一个与74LS244的片选信号(CSU10\)相连(例如CS0\)。
将74LS273(IC24)的输出S00~S07分别与发光二极管电路的Ll~L8相连。
从I/O地址片选信号CS0\~CS7\中任选一个与74LS273的片选信号(CSU8\)相连(如CS1\)。
2、编辑程序,单步运行,调试程序。
3、调试通过后,全速运行,观察实验结果。
4、编写实验报告。
五、实验说明用逻辑电平开关作为74LS244(IC25)的输入,用发光二极管作为74L S273(IC24)的输出编程序,使得逻辑电平开关的输入状态从发光二极管上显示出来。
逻辑电平开关拨上时为5V,拨下时为0V。
发光二极管输入“1”为亮、“0”为灭。
从74LS244读入的数据应求反后从输出口输出。
在8086CPU中有四个16位通用数字寄存器,其中仅AX(AH,AL)有输入输出功能。
本实验通过输入语句(IN),将开关运输入存到AL中,再通过输出语句(OUT)将AL值输出到发光二极管,从而实现开关控制发光二极管。
当开关量换作其他形式控制输入,发光二极管换作其他形式控制对象,输入数据后对输入最作一定的运算处理再输出时,就实现了计算机控制。
同时这些输入输出点均为I /O扩展口,当输入和输出的点位较多时,这种扩展十分必要。
六、实验程序框图(实验程序名T1.ASM)七、实验程序1 assume cs:code2 0000 code segment public3 org 100h4 0100 BA 04A0 start: mov dx, 04a0h ;74LS244地址5 0103 EC in al, dx ;读输入开关量6 0104 BA 04B0 mov dx, 04b0h ;74LS273地址7 0107 EE out dx, al ;写发光二极管8 0108 EB F6 jmp srart9 010A code ends10 end start实验二 8255并行口实验一、实验目的利用8255A实现并行口实验。
IO口扩展实验

;----向LED写显示数据和命令----WRITE7279: MOV A,CMD ;写命令 CJNE A,#255,TT1 LJMP END_OUT TT1: ;MOV A,CMD MOV DATA_OUT,A LCALL SEND MOV A,DATT ;写显示数据 CJNE A,#255,TT2 LJMP END_OUT TT2:;MOV A,DATT ANL A,#15 MOV DATA_OUT,A LCALL SEND END_OUT: SETB CS ;置高片选位 RET
• ;------显示测试子程序----• TEST7279: • MOV DATA_OUT,#0BFH ;发 送测试命令 • LCALL SEND • CALL LONG_DELAY ;等待以便观 察 • MOV DATA_OUT,#0A4H ;发 送复位命令 • LCALL SEND • RET
• • • • • • • • • • • • • • • • • • • • •
;------T0中断服务子程序----INT_T0: CLR ET0 MOV TH0,#4CH MOV TL0,#00H DJNZ R1,GORET LCALL WRITE7279 MOV A,CMD INC A MOV CMD,A DJNZ R6,GO1 MOV R6,#4 MOV CMD,#0C8H GO1:MOV A,DATT INC A MOV DATT,A DJNZ R7,GO2 MOV R7,#10 MOV DATT,#0 GO2:MOV R1,#20 GORET:SETB ET0
IO口扩展实验
• IO口扩展实验
• 一、实验目的 • 1. 学习在单片机系统中扩展简单I/O接口 的方法。 • 2. 学习通过HD7279的控制数码管显示 的方法。 • 二、实验内容 • 通过汇编语言编程,利用IO向HD7279 写入控制命令和数据,控制数码管的显示。
简单io口扩展实验报告

简单io口扩展实验报告
简单IO口扩展实验报告
本次实验旨在学习如何通过简单IO口扩展模块对单片机的IO口进行扩展,实现多个IO口的输入输出功能。
我们需要了解简单IO口扩展模块的基本原理和工作方式。
简单IO 口扩展模块通过与单片机的SPI总线进行通信,实现对其内部寄存器的读写操作,从而实现对IO口的扩展。
在实验中,我们使用STM32F103C8T6开发板和简单IO口扩展模块,通过连接它们的SPI总线,可以将扩展模块的IO口与开发板的IO口进行连接,实现IO口的扩展。
具体连接方式如下图所示:
(此处省略图片)
接下来,我们需要进行程序设计。
在初始化时,需要设置SPI总线的相关参数,然后对扩展模块进行初始化,将其内部寄存器中的数据清零。
然后,通过读写寄存器的方式,可以对扩展模块的每个IO 口进行配置,设置其输入输出状态、上下拉电阻等参数。
在程序中,我们可以通过读取扩展模块的输入口状态,判断是否有外部信号输入,根据需要进行相应的操作。
例如,当输入口接收到高电平信号时,可以控制某个输出口输出高电平信号,从而实现控制设备的功能。
在实验中,我们可以通过连接LED和按键来进行简单的IO口扩展实验。
将LED连接到扩展模块的输出口,按键连接到扩展模块的输入口,通过控制按键输入信号,实现对LED的控制。
总的来说,本次实验通过学习简单IO口扩展模块的原理和工作方式,掌握了通过SPI总线进行IO口扩展的方法,实现了对单片机多个IO口的输入输出控制,为后续的硬件控制和应用开发打下了基础。
简单i o口扩展实验实验报告

简单i o口扩展实验实验报告简单I/O口扩展实验实验报告引言:简单I/O口扩展实验是一项基础的电子实验,通过扩展I/O口,可以实现对外部设备的控制和数据交互。
本实验旨在通过实际操作,了解I/O口扩展的原理和应用。
实验目的:1. 了解I/O口的基本概念和工作原理;2. 学习使用I/O口扩展芯片实现对外部设备的控制;3. 掌握I/O口扩展的编程方法和应用技巧。
实验器材和材料:1. Arduino开发板;2. I/O口扩展芯片;3. 连接线;4. 外部设备(如LED灯、蜂鸣器等)。
实验步骤:1. 连接Arduino开发板和I/O口扩展芯片。
将I/O口扩展芯片的引脚与Arduino开发板的数字引脚相连,确保连接正确可靠。
2. 编写程序。
使用Arduino开发环境,编写程序代码,实现对I/O口扩展芯片的控制。
根据实际需求,可以选择控制外部设备的开关、亮度、频率等。
3. 上传程序。
将编写好的程序上传到Arduino开发板,确保程序能够正确运行。
4. 运行实验。
运行程序,观察外部设备的状态变化。
通过改变程序中的参数,可以实现对外部设备的不同控制效果。
实验结果与分析:通过实验,我们成功地实现了对外部设备的控制。
通过改变程序中的参数,我们可以控制外部设备的开关、亮度、频率等。
这说明I/O口扩展技术具有很大的应用潜力,可以实现对各种外部设备的控制和数据交互。
实验总结:通过本次实验,我们深入了解了I/O口扩展的原理和应用。
通过编写程序,我们掌握了I/O口扩展的编程方法和应用技巧。
通过实验,我们成功地实现了对外部设备的控制,这为我们进一步研究和应用I/O口扩展技术奠定了基础。
实验中遇到的问题和解决方法:在实验过程中,我们遇到了一些问题,如连接错误、程序错误等。
我们通过仔细检查连接和程序代码,逐一解决了这些问题。
这提醒我们在实验中要认真细致,仔细检查和排除错误,以保证实验的顺利进行。
实验的局限性和改进方向:本次实验只是简单地介绍了I/O口扩展的基本原理和应用,还有很多相关的知识和技术需要进一步学习和探索。
单片机---简单IO口扩展实验一.

实验三简单 I/O口扩展实验一——交通灯控制实验一、实验目的:1. 学习在单片机系统中扩展简单 I/O接口的方法。
2. 学习数据输出程序的设计方法。
3. 学习模拟交通灯控制的实现方法。
二、实验设备:EL-8051-III 型单片机实验箱三、实验内容:扩展实验箱上的 74LS273做为输出口,控制八个发光二极管亮灭,模拟交通灯管理。
四、实验原理:要完成本实验,首先必须了解交通路灯的亮灭规律。
本实验需要用到实验箱上八个发光二极管中的六个,即红、黄、绿各两个。
不妨将 L1(红、 L2(绿、 L3(黄做为东西方向的指示灯,将 L5(红、 L6(绿、 L7(黄做为南北方向的指示灯。
而交通灯的亮灭规律为:初始态是两个路口的红灯全亮,之后,东西路口的绿灯亮,南北路口的红灯亮, 东西方向通车,延时一段时间后,东西路口绿灯灭,黄灯开始闪烁。
闪烁若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北方向开始通车,延时一段时间后,南北路口的绿灯灭,黄灯开始闪烁。
闪烁若干次后,再切换到东西路口方向,重复上述过程。
各发光二极管的阳极通过保护电阻接到 +5V的电源上,阴极接到输入端上,因此使其点亮应使相应输入端为低电平。
五、实验原理图六、实验步骤:1. 实验箱 244/273 PORT单元的 O0~O7接实验箱上发光二极管 L1~L8;2.74LS273的片选 CS273接片选信号 CSO (CPLD ENCODER UNIT ,此时74LS273的片选地址为 CFA0H ~CFA7H 之间任选 ;3.运行实验程序,观察 LED 显示情况是否与实验内容相符 ;七、程序框图:八、参考程序:T3.ASMNAME T3 ;I/O口扩展实验一PORT EQU 0CFA0H ;片选地址 CS0CSEG AT 0000HLJMP STARTCSEG AT 4100HSTART: MOV A,#11H ;两个红灯亮,黄灯、绿灯灭ACALL DISP ;调用 273显示单元(以下雷同 ACALL DE3S ;延时 3秒LLL: MOV A,#12H ;东西路口绿灯亮 ; 南北路口红灯亮ACALL DISPACALL DE10S ;延时 10秒MOV A,#10H ;东西路口绿灯灭 ; 南北路口红灯亮 ACALL DISPMOV R2,#05H ;R2中的值为黄灯闪烁次数TTT: MOV A,#14H ;东西路口黄灯亮 ; 南北路口红灯亮 ACALL DISPACALL DE02S ;延时 0.2秒MOV A,#10H ;东西路口黄灯灭 ; 南北路口红灯亮 ACALL DISPACALL DE02S ;延时 0.2秒DJNZ R2,TTT ;返回 TTT ,使东西路口黄灯闪烁五次 MOV A,#11H ;两个红灯亮,黄灯、绿灯灭ACALL DISPACALL DE02S ;延时 0.2秒MOV A,#21H ;东西路口红灯亮 ; 南北路口绿灯亮 ACALL DISPACALL DE10S ;延时 10秒MOV A,#01H ;东西路口红灯亮 ; 南北路口绿灯灭 ACALL DISPMOV R2,#05H ;黄灯闪烁五次GGG: MOV A,#41H ;东西路口红灯亮 ; 南北路口黄灯亮 ACALL DISPACALL DE02S ;延时 0.2秒MOV A,#01H ;东西路口红灯亮 ; 南北路口黄灯灭 ACALL DISPACALL DE02S ;延时 0.2秒DJNZ R2,GGG ;返回 GGG ,使南北路口 ; 黄灯闪烁五次 MOV A,#03H ;两个红灯亮,黄灯、绿灯灭ACALL DISPACALL DE02S ;延时 0.2秒JMP LLL ;转 LLL 循环DE10S: MOV R5,#100 ;延时 10秒JMP DE1DE3S: MOV R5,#30 ;延时 3秒JMP DE1DE02S: MOV R5,#02 ;延时 0.2秒 DE1: MOV R6,#200DE2: MOV R7,#126DE3: DJNZ R7,DE3DJNZ R6,DE2DJNZ R5,DE1RETDISP: MOV DPTR,#PORT ;273显示单元 CPL A MOVX @DPTR,ARETEND。
简单io口扩展实验报告

简单IO口扩展实验报告1. 背景在实际应用中,我们经常需要扩展计算机的输入输出(IO)接口,以满足不同的需求。
而简单IO口扩展就是一种常见且重要的扩展方式。
通过简单IO口扩展,我们可以将计算机连接到更多的外部设备,如传感器、执行器等,从而实现更多功能和应用。
2. 分析2.1 简单IO口介绍简单IO口是指通用输入输出接口,它可以通过数字信号来进行数据的输入和输出。
每个简单IO口通常包括一个输入引脚和一个输出引脚。
通过控制这些引脚的电平状态,我们可以实现数据的输入和输出。
2.2 简单IO口扩展方法简单IO口可以通过不同的方法进行扩展,常见的方法包括:•并行接口:使用并行接口可以同时传输多个位的数据。
它通常使用多条数据线和一些控制线来实现高速数据传输。
•串行接口:使用串行接口可以逐位地传输数据。
它通常使用一条数据线和一些控制线来实现较低速率但更简洁的数据传输。
•USB接口:USB(Universal Serial Bus)是一种常见的数字串行总线接口,它可以连接多种设备,并提供高速数据传输和供电功能。
•SPI接口:SPI(Serial Peripheral Interface)是一种常用的串行外设接口,它可以连接多个外设,并以主从模式进行数据传输。
•I2C接口:I2C(Inter-Integrated Circuit)是一种常见的串行通信接口,它可以连接多个外设,并使用两条线路进行数据传输。
2.3 简单IO口扩展实验本次实验旨在通过简单IO口扩展方法,将计算机与外部设备进行连接,并实现数据的输入和输出。
具体步骤如下:1.确定要使用的简单IO口扩展方法,如并行接口、串行接口等。
2.根据选择的扩展方法,准备相应的硬件模块和连接线缆。
3.将硬件模块与计算机进行连接,确保电气连通性。
4.编写相应的驱动程序或使用现有的驱动程序,以实现与硬件模块的通信。
5.运行程序并测试扩展功能。
3. 结果经过实验测试,我们成功地实现了简单IO口扩展,并达到了预期的结果。
io扩展实验报告

io扩展实验报告
IO扩展实验报告
实验目的:通过对IO扩展的研究,探索其在物联网和智能设备领域的应用潜力。
实验设备:Raspberry Pi、各类传感器和执行器、IO扩展模块。
实验过程:
1. 硬件连接:将IO扩展模块与Raspberry Pi连接,接入各类传感器和执行器。
2. 软件配置:使用Python编程语言编写控制程序,通过IO扩展实现对传感器
和执行器的数据采集和控制。
3. 实验测试:通过实验测试,验证IO扩展模块的稳定性和可靠性,以及其在物联网和智能设备中的应用效果。
实验结果:
1. IO扩展模块能够有效地扩展Raspberry Pi的输入输出接口,满足物联网和智
能设备对多种传感器和执行器的需求。
2. 通过IO扩展模块,可以实现对温度、湿度、光照等环境参数的实时监测和控制,为智能家居、智能农业等领域提供了强大的支持。
3. IO扩展模块的稳定性和可靠性表现良好,能够满足工业控制系统对高要求的
输入输出控制。
结论:IO扩展模块在物联网和智能设备领域具有广阔的应用前景,能够为各种
应用场景提供稳定可靠的输入输出控制功能,为智能化生活和生产带来便利和
效益。
希望通过本次实验报告的分享,能够引起更多人对IO扩展技术的关注和研究,推动物联网和智能设备技术的发展和应用。
简单i o口扩展实验报告

简单i o口扩展实验报告简单I/O口扩展实验报告引言在现代科技发展的浪潮下,电子设备的功能和复杂性不断提升。
然而,对于初学者来说,了解和掌握电子设备的基本原理和操作方法是非常重要的。
本实验旨在通过简单的I/O口扩展实验,帮助初学者更好地理解和应用I/O口扩展技术。
一、实验目的本实验的主要目的是通过使用I/O口扩展技术,实现电子设备与外部设备的交互功能。
具体目标包括:1. 了解I/O口扩展的基本原理和应用场景;2. 学习使用I/O口扩展芯片进行输入输出控制;3. 实现简单的电子设备与外部设备的交互功能。
二、实验器材1. Arduino开发板;2. I/O口扩展芯片;3. 电阻、电容等基本电子元件;4. 连接线、面包板等实验工具。
三、实验步骤1. 连接电路将Arduino开发板与I/O口扩展芯片通过连接线连接起来,按照电路图进行正确的连接。
确保电路连接无误后,将其连接到电源。
2. 编写程序在Arduino开发环境中,编写程序以实现所需的输入输出控制功能。
通过调用相应的库函数,配置I/O口扩展芯片的输入输出模式,并编写相应的逻辑控制代码。
3. 烧录程序将编写好的程序烧录到Arduino开发板中,确保程序能够正确运行。
4. 实验验证运行程序后,通过操作外部设备,如按钮、LED灯等,验证I/O口扩展功能的正确性。
观察外部设备的状态变化,以及Arduino开发板的响应情况。
四、实验结果与分析通过实验,我们成功实现了I/O口扩展技术的应用。
通过编写程序,我们可以根据需要配置I/O口扩展芯片的输入输出模式,并通过控制逻辑实现与外部设备的交互功能。
在实验过程中,我们发现通过I/O口扩展技术,可以实现大量的输入输出控制。
例如,我们可以通过按钮控制LED灯的开关,通过传感器获取环境温度并进行相应的控制,通过继电器控制电机等。
这些功能的实现,不仅提高了电子设备的灵活性和可扩展性,也为我们提供了更多的创造空间。
然而,我们也发现在实际应用中,I/O口扩展技术还存在一些挑战和限制。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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分钟)。可见,采用计数器叠加使用后,输出周期范围可以大幅度提高,这在实际控制中是非常有用的。
实验一简单I/O口扩展实验
一、实验目的
1.熟悉74LS273,74LS244的应用接口方法
2.掌握用锁存器、三态门扩展简单并行输入、输出口的方法
二、实验设备
MUT-Ⅲ型实验箱、8086CPU模块
三、实验内容
逻辑电平开关的状态输入74ls244,然后通过74ls273锁寸输出,利用led显示电路作为输出的状态显示
七、实验结果
程序全速运行后,LED1闪烁(周期为0.25s)。
八、程序框图(实验室程序名:t8253.asm)
实验五A/D实验
一、实验目的
熟悉A/D转换的基本原理,掌握ADC0809的使用方法。
二、实验设备
MUT-III型实验箱、8086CPU模块。
三、实验内容
从ADIN0输入一路模拟信号,启动A/D转换,用简单输入口(74LS244)查询EOC信号,转换结束后查看转换结果。同时用万用表测量输入的模拟电压,与转换后的数字量比较。作图,横坐标是模拟电压,纵坐标是转换的数字量,检查A/D转换的线性度。
4.编写实验报告
六、实验提示
74LS273或74LS244的片选信号可以改变,例如连接cs2,此时应同时修改程序中相应的地址
七、实验结果
程序全速运行后,逻辑电平开关的状态改变应能在led上显示出来。例如:k2置于l位置,则对应的led2应该点亮
八、程序框图(实验程序名:t244273。Asm)
九、程序源代码清单
assume cs:code
code segment public
org 100h
start: mov dx,04a0h ;74ls244地址
in al ,dx ;读输入开关量
mov dx,04b0h;74ls273地址
out dx,al ;输出至led
jmp start
code ends
end start
八、程序框图(实验程序名:ram.asm)
实验三 8255并行口实验
一、实验目的
掌握8255a的编程原理
二、实验设备
MUT-Ⅲ型实验箱、8086CPU模块
三、实验内容
8255a的a口作为输入口,与逻辑电平开关相连。8255a的b口作为输出口,与发光二极管相连。编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。
1.实验接线
本实验无须接线
2.编写调试程序
3.运行实验程序,可采取单步、设置断点方式,打开内存窗口可看到内存区的变化
六、实验提示
1.Ram区的地址为02000h,编程时可段地址设为01000h,则偏移地址为1000h
2.如果按字节进行存储,则al为55h或aah,如果按字进行存储,则ax应为55aah
实验二 存储器读写实验
一、实验目的
1.掌握pc机外存扩展的方法
2.熟悉6264芯片的接口方法
3.掌握8086十六位数据存储的方法
二、实验设备
mut-Ⅲ型实验箱、8086cpu模块
三、实验内容
向02000~020ffh单元的偶地址送入aah,奇地址送入55h
四、实验原理介绍
本实验用到存储器电路
五、实验步骤
四、实原理介绍
本实验用到两部分电路:开关量输入输出电路,简单i/o口扩展电路
五、实验步骤
1.实验接线:(表示相互连接)
cs0 cs244;cs1 cs273;平推开关的输出k1~k8 in0~in7(对应连接);
00~07 led1~led8
2.编辑程序,单步运行,调试程序
3.调试通过后,全速运行程序,观看实验结果
k 2置于l位置,则对应的led2应该点亮。
八、程序框图(实验程序名:t8255.asm)
实验四8253定时器计数器接口实验
一、实验目的
掌握8253定时器的编程原理,用示波器观察不同模式下的输出波形。
二、实验设备
MUT-III型实验箱、8086CPU模块、示波器。
三、实验原理
8253计数器0,1,2工作于方波方式,观察其输出波形。
3.6264,62256等是计算机系统扩展中经常用到的随机存储器芯片(ram),主要用作数据存储器扩展。本实验所进行的内存置数在程序中经常用到。计算机系统运行中频繁地进行内存与外设或者内存与内存之间的数据传输,所以本实验虽然简单但对理解系统程序的运行很关键,望学习和实验时认真对待。
七、实验结果
在断点1处内存区02000h~020ffh单元为00h,在断点2处偶地址为aah,奇地址为55h。