当前位置:文档之家› 8255输入输出实验

8255输入输出实验

8255输入输出实验
8255输入输出实验

河北科技大学

实验报告

11 级专业软件班L112学号11L035203714年4月29日姓名李国栋同组人指导教师陈义峰

实验名称实验七8255输入输出实验成绩

实验类型设计型批阅教师

实验七8255输入输出实验

一、实验要求

利用8255可编程并行口芯片,实现输入/输出实验,实验中用8255PA口作输出,PB口作输入。

二、实验目的

1、了解8255芯片结构及编程方法。

2、了解8255输入输出实验方法。

三、实验电路及连线

8255的CS/接地址译码/CS0,则命令字地址为8003H,PA口地址为8000H,PB口地址为8001H,PC 口地址为8002H。PA0-PA7(PA口)接LED0-LED7(LED)PB0-PB7(PB口)接K0-K7(开关量)。数据线、读/写控制、地址线、复位信号板上已接好。

连线连接孔1 连接孔2

1 CS0 8255CS

2 L0 8255-PA0

3 L1 8255-PA1

4 L2 8255-PA2

5 L3 8255-PA3

6 L4 8255-PA4

7 L5 8255-PA5

8 L6 8255-PA6

9 L7 8255-PA7

10 K0 8255-PB0

11 K1 8255-PB1

12 K2 8255-PB2

13 K3 8255-PB3

四、实验说明

可编程通用接口芯片8255A 有三个八位的并行I/O 口,它有三种工作方式。本实验采用的是方式0:PA ,PC 口输出,PB 口输入。很多I/O 实验都可以通过8255来实现。

五、实验参考程序、框图

程序清单:

start: mov dx, PortB

in al, dx ; 读入PortB

mov dx, PortC

out dx, al

mov dx, PortA

out dx, al ; 输出到PortA

mov ah, 200

call delay

jmp start

endp 14

K4 8255-PB4 15

K5 8255-PB5 16

K6 8255-PB6 17

K7 8255-PB7

delay proc near

push ax

mov al,0

push cx

mov cx,ax

loop $

pop cx

pop ax

ret

delay endp

code ends

end start

六、实验步骤

(1) 在实验箱断电的情况下连好线。

(2) 输入程序并检查,保存程序。

(3) “编译”程序。

(4) “全速执行”程序。

(5) 按LED相应开关,观察LED的显示。

七.实验结果

编译后全速执行,开关K0~K7实现对LED灯L0~L7的控制,开关打上(到1)时,对应灯亮起,关下(到0)时,灯灭。

八.实验感受

这个实验我们使用了两种方式感受8255这款芯片的输入输出效果,通过这个实验,我对工作方式选择控制字的有了进一步的了解,知道怎么选择控制字,也知道了他们之间的通讯过程了。

通过编程和上机调试得到了实验效果。实验是实现开关控制小灯亮灭。此次课设主要是做实验,锻炼了我们的动手实际操作能力。经过自己理解程序,使我们更加了解8255的编程。更好的锻炼了我们自己的能力。经过这次课程设计,是我们更好的熟悉8255的功能,以及实际中的作用。通过8255课设,我得到了两样最重要的东西就是做事要有时间安排和总体部署。也使我明白,不管多简单的任务,都需要仔细认真去对待。

微机原理简单输入输出实验报告

东南大学 《微机实验及课程设计》 实验报告 实验四(1)简单输入输出 一. 实验目的与内容 (一)实验目的 1)进一步掌握TPC实验装置的基本原理和组成结构; 2)掌握利用I/O指令单步调试检查硬件接口功能,学会利用示波器检测I/O指令执行时总线情况; 3)掌握简单并行输入输出接口的工作原理及使用方法,进一步熟悉掌握输入输出单元的功能

和使用。 (二)实验内容及要求 1、输出接口输出,根据8个发光二极管发光的情况验证编程从键盘输入一个字符或数字,将其ASCII码通过正确性。(输出端口实验必做) 2、用逻辑电平开关预置某个字母的ASCII码,编程输入这个ASCII码,并将其对应字母在屏幕上显示出来。(输入端口实验必做) 3、利用基本实验(1)中的输出锁存电路,设计L0~L7为流水灯,流水间隔时间由软件产生。(输出端口实验) 4、利用基本实验(2)中的输入电路,监测逻辑电平开关K0~K7的变换,当开关状态为全开时,在屏幕上显示提示信息并结束程序。(输入端口实验) 要求: 1、输入输出端口应该可以响应外设的连续变化。 2、输出按ESC键退出;输入按任意键退出。 3、内容3、4比做一题,选做一题 二. 实验基本原理 (一)基本原理 简单并行输出实验:八D触发器74LS273的八个输入端接数据总线D0~D7,从键盘输入一个字符或数字,通过2A8H~输出接口输出该字符或者数字代表的ASCII码,再通过8个发光二极管发光显示二进制数码,从而验证编程以及电路的正确性。 简单并行输入实验:八缓冲器74LS244的八个输出端接数据总线D0~D7,8个输入端分别接逻辑电平开关K0~K7,在逻辑电平开关上预置任意字符的ASCII码,编程将此ASCII码通过2A0H~输入,ASCII码对应字符显示在屏幕上,从而验证编程及电路的正确性。 (二)实验接线图

8255A接口实验

西安邮电大学 微机原理与接口技术课内实验报告题目宏指令及子程序设计实验 院系名称:通信与信息工程学院 专业名称:信息对抗专业 班级:对抗1302 学生姓名: 班内序号: 指导教师: 实验日期:20**年**月**日

一.实验目的及实验环境 1、掌握8255A工作方式0的特点及其使用方法。 2、掌握8255A端口A和端口B同时作为输出端口的特点及使用方法。 二.实验内容 1、基本输入输出实验,编写程序,使8255A的A口为输入,B口为输出,完成拨动开关到数据灯的数据传输,要求只要开关拨动,数据灯的显示就改变。 2、流水灯显示实验,编写程序,使8255A的A口和B口均为输出,实现16位数据灯的相对循环显示。 三.方案设计 1.文字描述题目的解决方案 2.功能模块图; 3.各个模块详细的功能描述。 4. 寄存器、存储单元、变量等资源的分配 5. 流程图 …… 四.实验结果 测试数据及运行结果; 五.总结 1.实验过程中遇到的问题及解决办法 2.编辑源程序文件时候出错,以及保存文件格式不对,文件名不对的问题;3.调试过程中不懂调试的方法和调试的步骤,在DOS环境下对用常用命令不熟悉; 4.对于调试结果不知道怎么记录以及查找问题; 5.程序错误是不知道如何纠错。

解决方法:仔细翻阅实验指导书,在实验指导书上会有详细的引导然后理解着一步一步练习,最终熟悉; 向周围同学寻求解决方法,互相讨论以及向老师提问,认真学习老师演示的方法并及时练习熟记; 在实验室也贴有实验步骤指导,仔细阅读并认真仔细实践; 在老师向其他同学演示时在一旁认真听讲寻找自己问题所在 2对设计及调试过程的心得体会。 在8255A并行接口电路实验中,掌握8255的工作方式,懂得如何对8255进行正确的操作,是我们利用这个芯片实现我们预定电路功能的最基本的要求。掌握经典型应用电路的接法,更是尤为重要。但要想在实验室第一次做就出现现象还是比较困难的,所以还需要我们不断的调试才能出现较为理想的结果。而在过程中,理论知识显得格外重要,所以还是要在上课时认真听讲,课后努力将其理解才能将其实践化。 六.附录:源代码 CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX,DATA MOV DS,AX MOV AL,10001001B MOV DX,1466H OUT DX,AL MOV BX,8001H GO:MOV AL,BH MOV DX,1460H OUT DX,AL ROR BH,1 MOV AL,BL MOV DX,1462H OUT DX,AL ROL BL,1 CALL DELAY MOV CX,50H DELAY:LOOP DELAY JMP GO

交通灯实验报告

交通控制器设计实验 一.实验目的 1.了解交通灯的亮灭规律。 2.了解交通灯控制器的工作原理。 3.进一步熟悉VHDL语言编程,了解实际设计中的优化方案。二.实验任务 设计一个十字路口交通控制系统,其东西,南北两个方向除了有红、黄、绿灯指示是否允许通行外,还设有时钟,以倒计时方式显示每一路允许通行的时间,绿灯,黄灯,红灯的持续时间分别是40、5和45秒。当东西或南北两路中任一道上出现特殊情况,例如有消防车,警车要去执行任务,此时交通控制系统应可由交警手动控制立即进入特殊运行状态,即两条道上的所有车辆皆停止通行,红灯全亮,时钟停止计时,且其数字在闪烁。当特殊运行状态结束后,管理系统恢复原来的状态,继续正常运行。 三.原理分析 本系统主要由计数控制器和倒计时显示器电路组成。计数控制器实现总共90秒的计数,90秒也是交通控制系统的一个大循环;控制器控制系统的状态转移和红黄绿灯的信号输出;倒计时显示器电路实现45秒倒计时和显示功能。整个系统的工作时序受控制器控制,它是系统的核心。 控制器的整个工作过程用状态机进行描述,其状态转移关系如下图所示。五种状态描述如下: s0:东西方向红灯亮,南北方向绿灯亮,此状态持续40秒的时间; s1:东西方向红灯亮,南北方向黄灯亮,此状态持续5秒的时间;

s2:东西方向绿灯亮,南北方向红灯亮,此状态持续40秒的时间; s3:东西方向黄灯亮,南北方向红灯亮,此状态持续5秒的时间; s4:紧急制动状态,东西方向红灯亮,南北方向红灯亮,当紧急制动信号有效(hold=’0’)时进入这种状态。 当紧急制动信号无效(hold=’1’)时,状态机按照s0→s1→s2→s3→s0循环;当紧急制动有效(hold=’0’)时,状态机立即进入s4,两个方向红灯全亮,计数器停止计数;当紧急制动信号再恢复无效时,状态机会回到原来的状态继续执行。 四.电路设计 交通控制器系统顶层原理图如下图所示,它由计数控制器(control),45秒倒计时计数器(M45)模块组成。下面主要介绍计数控制器和倒计时计数器M45的设计方法。

汇编语言-实验五 输入输出程序设计

实验五输入输出程序设计 一、实验目的 1) 掌握输入输出程序的编写方法。 2) 熟悉系统功能调用的方法。 3) 熟悉动画程序的编写方法。 二、实验内容 1)在CRT上每隔一秒连续显示字符0-9。 编程提示 为了使输出的字符之间有空格,在每一个循环中输出一个0-9的字符和一个空格。为了输出0-9,置寄存器BL初值为0,每循环一次使其增量。为了保证输出是十进制,增量后用DAA调整指令。由于输出为一位十进制数,用AND 0FH 指令屏蔽高4位。 2)用系统功能调用将‘HELLO’由键盘输入,再从屏幕输出‘***HELLO***’。 3)编制在屏幕上画线的子程序,调用该子程序画一矩形。 4)编制字母下落一行的子程序,调用该子程序使字母从屏幕顶部下落到底部。 5)创建一磁盘文件,保存从键盘输入的字符串。 6)编写程序用设置系统时间,首先从键盘以十进制数形式输入时间,然后修改系统时间,并重新以十进制形式显示时间。 7)编写程序将屏幕分割成格状,每一格涂上不同颜色,格数从键盘输入。 8)编写程序在屏幕上显示菜单,输入相应菜单的序号后,选种该菜单项。 三、源程序 EXAM5-1 STACK SEGMENT STACK DB 1024 DUP(0)

STACK ENDS CODE SEGMENT ASSUME CS:CODE,SS:STACK START:MOV BL,0 LP:MOV DL,20H MOV AH, 2 INT 21H MOV AL,BL ADD AL, 0 DAA AND AL,0FH MOV BL,AL PUSH BX OR AL,30H MOV DL,AL MOV AH, 2 INT 21H MOV BX,3E8H LP2:MOV CX,176H ;延时1ms LP1:PUSHF POPF LOOP LP1 DEC BX JNZ LP2 POP BX INC BL JMP LP CODE ENDS END START 执行程序EXAM5-1·EXE,屏幕上依次循环显示一个数字一个空格: 0 1 2 3 4 5 6 7 8 9 …… EXAM5-2 STACK SEGMENT STACK DB 1024 DUP(0) STACK ENDS DA TA SEGMENT BUFF DB 6,7 DUP(?),‘$’ DA TA ENDS INPUT MACRO BUFE MOV DX,OFFSET BUFE MOV AH,0AH INT 21H ENDM

实验二 8255A并行接口实验

实验二 8255A并行接口实验(一) 一实验目的 1、掌握通过8255A并行口传输数据控制LED发光二极管的亮灭;进一 步熟悉软件编程环境。 二实验设备 1、微机系统一套; 2、TPC-3型微机接口实验系统一台; 3、导线若干。 三实验内容 1、基础部分:用8255A的A端口控制8个LED发光二极管的亮和灭(端口 输出为1则亮,输出为0则灭)。其中L0―L2为东西方向,L5―L7为南北 方向、L3-L4不用,PA口与相应的发光二极管驱动信号输入端相连,输入端 为1时发光二极管亮。接线如图4-5所示。 图4-5 编制程序,通过8255A控制发光二极管,以模拟交通灯的管理。 2.提高部分:利用开关K0,K1的控制,以模拟几种交通灯的管理,具体要求 为: K0K1灯控制 00正常运行 01南北路口绿灯亮、东西路口红灯亮 10东西路口绿灯亮、南北路口红灯亮 3.如果模拟车流量大小来来决定红绿灯交通时间,请问你有什么解决办法。如果 能解决请加以解释并编程调试。

四、编程提示: 1.要完成本实验,首先必须了解交通灯的亮灭规律。设有一个十字路口,南北、东西方向初始态为四个路口的红灯全亮。之后,南北路口的绿灯亮,东西 路口的红灯亮,南北路口方向通车。延迟一段时间后,南北路口的绿灯熄灭, 而南北路口的黄灯开始闪烁。闪烁8次后,南北路口的红灯亮,同时东西路口 的绿灯亮,东西路口方向开始通车。延迟一段时间后,东西路口的绿灯熄灭, 而黄灯开始闪烁。闪烁苦干次后,再切换到南北路口方向。之后,重复上述过 程。 2.程序中应设定好8255A的工作模式,使三个端口均工作于方式0,并处于输出态 3.8255A的A端口地址为:288H B端口地址为:289H C端口地址为:28AH 控制口地址为:28BH 五、实验要求: 1.做好实验预习和准备工作,并写出预习报告(要求写出实验的流程图及程序),熟练掌握8255A编程原理及编程方法。 2.实验操作的最低要求是要做出实验内容的基础部分,然后根据实际操作能力争取做出实验内容的提高部分及回答实验内容的第三部分问题。 3.写出实验报告,内容为: 1)实验目的; 2)实验设备; 3)实验中遇到的问题及解决问题的分析思路与办法,问题定位及问题的性质; 4)对本实验的建议及有何创新。 ;这是自动生成的代码模板 STACKS SEGMENT STACK ;堆栈段 DW 128 DUP(?) ;注意这里只有128个字节 STACKS ENDS DATAS SEGMENT ;数据段 ;请在这里定义您的数据 DATAS ENDS CODES SEGMENT ;代码段 ASSUME CS:CODES,DS:DATAS START: MOV AX,DATAS ;初始化 MOV DS,AX

8255并口实验详解

xxxx大学计算机学院实验报告

一、实验内容与要求 1.1 实验内容 (1)8255方式0实验 从8255端口C输入数据,再从端口A输出 (2)8255方式1输出实验 编程实现每按一次单脉冲按钮产生一个正脉冲,使8255产生一次中断服务:依次输出01H,02H,04H,08H,10H,20H,40H,80H使L0~L7依次发光,中断8次结束。 (3)8255方式1输入实验 编程实现:每按一次单脉冲按钮产生一个正脉冲使8255产生一次中断请求,让CPU进行一次中断服务:读取逻辑电平开关预置的ASCII码,在屏幕上显示其对应的字符,中断8次结束。 1.2 实验要求 (1)8255方式0实验 实验预期效果:拨动逻辑开关,启动程序,开关打开的对应灯可以亮起。改变开关的状态,灯的亮暗也随之改变。 (2)8255方式1输出实验 实验预期效果:按一次单脉冲按钮,L0亮起;以后每按一次,后面的灯依次会亮起。中断8次结束。 (3)8255方式1输入实验 实验预期效果:每按一次单脉冲按钮读取逻辑电平开关预置的ASCII码,在屏幕上显示其对应的字符,中断8次结束。 二、实验原理与硬件连线 2.1 实验原理 CPU通过指令将控制字写入8255A的控制端口设置它的工作方式。8255A有两个控制字:方式选择控制字和端口C置位/复位控制字,这两个控制字均写入同一个控制端口地址(端口选择

先A1A0=11) 8255A有3种工作方式:方式0——基本输入/输出方式;方式1——选通输入/输出方式;方式2——双向传输方式。方向选择控制字用于设置各端口的工作方式。 方式0称为基本输入/输出方式。该方式下,端口A、端口B、端口C的高4位和端口C的低4位均可独立地设为输入或输出数据端口。在方式0时,8255A与CPU时间没有应答联络信号,可用于无条件传送或查询方式数据传送场合。采用查询方式传送时,可以将端口A、端口B 作为数据端口,用端口C存放外部设备状态信息,用于CPU查询。 方式1称为选通输入/输出方式。该方式下,端口A、端口B可作为数据传输口,而端口C 的一些引脚规定作为端口A、端口B的联络控制信号,有固定的搭配规定。在方式1时,CPU和8255A之间有应答联络信号,所以采用中断方式或程序查询方式传送数据。 当端口A作为方式1输入时,端口C的PC3、PC4、PC5作为端口A的联络控制信号。 当端口A作为方式1输出时,端口C的PC7、PC6、PC3作为端口A的联络控制信号。 状态字通过读端口C获得。需要强调,从端口C读出的状态字与端口C的外部引脚的状态无关。 2.2 硬件连线 (1)8255方式0实验1 连接实验电路,8255端口C接逻辑电平开关K0~K7,端口A接LED显示电路 L0~L7 U18 8255 K0 K1 K5 L0 L1 L2 L3 L4 L5 L6 L7图2-2-1 实验一接线

交通灯实验报告

微机原理课程设计报告 新疆农业大学 计算机与信息工程学院 课程题目:微机原理与几口技术 班级:电科112 指导老师:张婧婧 姓名:刘建国 学号:114633222

基于8086的交通信号控制器的设计报告摘要: 这次课程设计,我们的任务是:基于8086的交通信号控制器的设计。8086系统是我们这个学期学习的主线方向,我们将在8086系统的基础上完成交通信号控制器的设计,其具体功能是:1.显示十字路口东西、南北2个方向的红、黄、绿的指示状态。2.实现正常的倒计时功能。用2组数码管作为东西和南北方向的倒计时显示,显示时间为红灯30s,绿灯50s,黄灯5s。3.按S1键能实现特殊的功能,显示倒计时的2组数码管闪烁,计数器停止计数并保持在原来的状态;东西、南北路口均显示红灯状态;特殊状态解除后能继续计数。4.按S2键实现总体清零功能。计数器由初始状态计数,对应的指示灯亮。 关键词:8086系统 74154 74HC373 8255A LED交通灯

(一) 1) 设计目的 交通信号控制灯是日常交通不可缺少的工具,涉及到人们的人生和财产安全,在道路行驶上起了相当关键的作用,因而设计交通信号控制灯是非常有意义的。同时我们这次设计的课题就是“基于8086交通信号控制器的设计”,基于以上目的,我利用一周时间精心设计出课题要求的交通灯。 2) 设计思想 在此次设计过程中,我们选择了数码管、发光二极管、74LS138、74LS373、8255A和8086来控制实现交通灯按设计要求工作。 3)硬件部分 1、LED设计说明: 用LED作为倒计时时间的显示器,LED在亮度、功耗、可视角度和刷新速率等方面,都更具优势。LED与LCD的功耗比大约为10:1,利用LED技术,可以制造出比LCD更薄、更亮、更清晰的显示器,LED是发光二极管属于二极管的一种,LCD是液晶显示器,两者相差太多.但是用LED的点阵也能组成显示器,适用于户外大屏幕显示,分辨率较低,LED与LCD具体比较如下图 表1-1:LCD与LED的比较 2、8255设计说明: 用8255A可编程并行接口芯片的A、B、C三口作为红、绿、黄交通灯的控制输入口。8255有三个并行输入输出口,可以方便的对三种颜色的交通灯进行很好的控制。解决方案是:PB0~PB7接模拟灯二极管,PA0~PA7接7段二极管的段选,PC0~PC3接7段二极管的位选,PC4~PC7与开关相连,处理器芯片集成芯片卡PCI卡连接,用于完成硬件方面的实验正常通信。其芯片比较说明:如下表: 表1-2:8255A与8251芯片的比较

实验四 输入输出流程序设计

C++面向对象程序设计课程实验报告 课程名称C++面向对象程序设计班级实验日期2014.5.16-2012 .5.23 姓名学号实验成绩实验名称实验四输入输出流程序设计 实验目的及要求1.理解输入输出流的基本概念,明确流是一个类 2.了解输入输出流类库基本结构和主要类,掌握主要层次,其中重 点理解fstream,iostream和iomanip 3.理解流缓冲区类的派生关系以及设备缓冲、文件缓冲和流缓冲 4.熟悉格式化的输入和输出,记住主要的常用的操作符,以及各种 应用(对齐) 掌握文件的输入和输出,区别C语言中的文件写入、打开等操作,会对一个文件进行I/O操作 实验环境硬件平台:普通的PC机 软件平台:Windows 操作系统编程环境:VisualC++ 6.0 实验内容1.文件数据的读取。编制一程序来显示并保存[2,1000]内的所有素数。显示、保存素数的格式为:每行10个素数,每一个素数占7个字符,右对齐,最后一行不足10个素数时按一行输出 2.编写一个单向链表的类模板,分别实现增加、删除、查找和打印操作 算法描述及实验步骤1、这个题主要考察了文件中数据的读取,还包括数据格式化输入输出。首先定义一个ofstream类的对象output,在main函数中打开文件后,再分别编写判断素数、每行输出10个数以及使辖域为7的代码,最后关闭文件。 2 这个题是C++与数据结构的结合,实现单向链表内各种功能。首先定义一个类ListNode,然后利用前插入法初始化链表,编写类模板的成员函数,再分别进行增加、删除和查找的操作

调试过程及实验结果 总结1.一旦文件被打开,文件中的文本数据信息的读/写操作与控制台文件信息的输入/输出操作就完全一致 2.定义ifstream、ofstream、fstream流类对象时,应用对象名替代控制台文本信息输入/输出使用的输入流类对象(如cin)和输出流类对象(如cout)

实验六---8255并行输入输出

实验六---8255并行输入输出

东南大学 《微机实验及课程设计》 实验报告 实验六 8255并行输入输出

姓名:学号: 专业:测控技术与仪器实验室: 516 同组人员:评定成绩: 一、实验目的 1)掌握8255方式0的工作原理及使用方法,利用直接输入输出进行控制显示; 2)掌握8段数码管的动态刷新显示控制; 二、(1)实验内容(必做) 6-1、8段数码管静态显示:编程从键盘输入一位十进制数字(0~9),在数码管上显示出来。 6-2、8段数码管动态显示:在两个数码管上同时显示不同的两位数字或字母,保持不变直至退出。(如56或7f) (2)实验内容(必做一题,选做一题) 6-3 静态显示:用逻辑电平开关预置某个数字(0~9)的ASCII码,将该数据用8255的C口读入,并用A口输出,并在数码管显示出来;如果预置的ASCII 码不是数字(0~9),数码管显示E字母。 6-4 动态显示:在两个数码管上滚动循环显示不同的0~f字符。(即开始时两个数码管显示01,12,23,34 ··f0,一直循环直至退出) 三、实验原理 (1)实验预备知识

图 八段式LED 数码管的符号和引脚 (2) 6-1流程图:

N Y 将对应段码输 结 6-1源代码: data segment ioport equ 0ec00h-0280h io8255a equ ioport+288h ;8255A口地址 io8255b equ ioport+28bh ;8255控制寄存器端口地址 led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh ;段码mesg1 db 0dh,0ah,'Input a num (0--9h):',0dh,0ah,'$';提示data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax mov dx,io8255b ;使8255的A口为输出方式 mov ax,80h

微机原理实验五输入与输出程序设计

实验六输入与输出程序设计 一、实验目的 1.掌握常用DOS中断调用的功能以及在应用程序中的使用方法。 2.学习键盘输入和屏幕输出的基本方法。 3.宏指令、子程序在应用程序中的使用。 4.汇编语言程序设计的调试与完善。 二、设计指标与实验要求 1.设计内容 本实验要求设计完成:①屏幕输出提示(如“Want input(Y/N)?”),若键入N 则结束程序返回操作系统;键入Y则转2步;键入的是其它字母则回①步。②换行后输出提示(如“please input a strings:”),且在该提示后键入一字符串(输入到输入缓冲区)。 ③换行后输出提示(如“your inputting is:”),在该提示后输出由②步输入的字符串。 ④换行后输出提示“Want continue(Y/N)? ”,若键入Y则转②步;键入N则结束程序返回操作系统;其它字母则回第④步。 2.设计要求 ①按屏幕提示要求输入,从屏幕上获得正确结果。 ②把程序中常用的中断调用定义成宏指令(至少定义2个)。 ③字符串回显部分设计成子程序,可以选择用21H中断的2号或9号功能来实现,应 能显示由主程序指定的任一字符串。要注意这两种方法实现的设计过程是不同的。 采用2号功能的,子程序输入参数为“回显字符串地址”和“回显字符数”;采用 9号功能的,子程序输入参数为“回显字符串地址”。 ④屏幕的提示信息显示格式尽量做到兼顾美观。 3.实验步骤 ①.选用合适的程序文本编辑软件编辑源程序,并为文件取以.ASM为扩展名的文件存盘。 ②.用宏汇编软件MASM对源程序文件进行汇编,若有错误,根据提示(行号,错误类型)回源程序文件中修改。 ③.用LINK对由MASM汇编后产生的目标文件做连接,生成可执行文件;若有错误(同

Protues8255实验报告Word版

华北电力大学 实验报告| | 实验名称8255应用实验 课程名称微机原理及应用 老师 | 专业班级 姓名 学号

一.实验要求 1、当K0为高电平时,LED由高到低循环亮灭;当K0为低电平时,LED由低到高循环亮灭;当K1为高电平时,LED全灭且程序结束 (扩展:当K1为高电平时,LED全灭但程序不结束,等K1再次为低电平时灯又开始循环)。 2、在8259的IR2端输入中断请求信号,该信号由8253的方波信号产生(频率1Hz)。每来一个上升沿,申请中断一次,CPU响应后通过8255 PA口使发光二极管亮,第1次中断,LED0亮,第2次中断,LED1亮,……第8次中断,LED7亮,中断8次后结束。 3、在8259的IR2端输入中断请求信号,该信号由8253的方波信号产生(频率1Hz)。每来一个上升沿,申请中断一次,CPU响应后通过8255 PA口使7段数码管亮,第1次中断,显示0,第2次中断,显示1,…… 第10次中断,显示9,程序结束。 【8255的片选地址为8000H,8259的片选地址为9000H,8253的片选地址为A000H】 二思路 1.硬件 (1)74HC138译码电路如图所示,A15为1,E2、E3接地保证74HC138正常工作,此时Y0、Y1、Y2对应地址分别为8000H、9000H、0A000H. 此芯片实验1.2.3都需用到

(2)8259的片选地址为9000H,所以CS接Y1 8086有16位数据总线,其低8位作为偶存储体来传输数据,8086的A0要一直为0,所以8259的A0要接8086的A1 IR2端输入中断请求信号,该信号由8253的方波信号产生(频率1Hz),所以8259的IR2端与8253的OUT1端相连。 此芯片实验2,3要用到 (3)8253的片选地址为A000H,所以CS接Y2。 CLK0接入1MHz信号,GATE0与GATE1同时接电源,OUT0输入到CLK1,OUT1经分频输出1HZ的信号。 此芯片实验2,3要用到

8255试验报告(方式1查询输出)

《微型计算机接口技术》实验报告 实验名称:可编程并行接口芯片8255应用 (8255方式1、查询输出) 姓名 学号: 班级: 日期: 广东外语外贸大学信息科学技术学院

一、实验目的 掌握8255方式1查询输入、输出时的使用及编程 二、实验内容 1、按照图示连接硬件(注意图中大多数线试验箱已经连好,只连接需要用户连接的部分,预习,参考PPT) 2、编程:每按一次单脉冲按钮,ACK信号有效,8255内部输出准备好状态有效(INTR),查询输出一次数据,点亮、熄灭相应的发光二极管。 三、实验原理(8255方式1输出:结合结构图、时序图、状态字描述) 8255是一片可编程并行I/O接口芯片,每片8255有两个8位的并行口(PA,PB)和两个4位并行口(PC的高、低四位),其中PA口可工作于方式0,1,2。PB口工作于方式0,1。PC口仅能工作于方式0。在方式1中,将8255的三个端口分为了A、B两组,PA、PB两个口仍作为数据输入/输出口,而PC口则作为两部分,分别作为PA、PB口的联络信号。8255A 方式1 A口输出过程由CPU响应中断开始,在中断中用OUT指令通过8255A 向外设输出数据,发出WR 信号;WR上升沿清除INTRA 中断请求信号,且使OBFA =“L”(有效),通知外设取数;当外设接受数据后,发出ACKA 应答信号,一方面使OBFA=“H”(无效),另一方面在ACKA信号的上升沿使INTRA=“H”(有效),以此向CPU发出新的中断请求,开始下一轮输出。 四、硬件设计及方案论证(完整图的信号线连接及作用:数据、地址、控制及外设线)硬件设计如图,其中: 1.8255芯片中的数据总线D0—D7是和CPU的数据线直接相连的,从而CPU可以向8255 发送命令、数据和8255芯片也可以向CPU发送状态、数据等等。 2.8255芯片中的A0和A1也是与CPU的地址总线直接相连,并且在控制字在以下几种 情况有不同的设置,若A1A0= 00时,8255芯片中的PA口被选中,若A1A0=01时,8255芯片中的PB口被选中,若A1A0=10时,8255芯片中的PC口被选中,若A1A0=11时,则8255芯片的控制口被选中。 3.8255芯片的读信号、写信号、复位信号,分别于CPU的IOR、IOW、RESET直接相 连,当CPU执行IN指令时,8255的读信号有效,CPU从8255芯片读取信息,当CPU 执行OUT指令时,8255的写信号有效,CPU输出信息到8255芯片,完成一定的功能。 而当CPU发出复位的信号时,8255也会进行复位操作。 4.8255芯片中的片选信号与3—8译码器的Y1相连,而Y1的寻址范围是288H—28FH, 而8255芯片中的端口A的地址是288H,端口B的地址是289H,端口C的地址是28AH,控制端口的地址是28BH,因此4的端口都在在3—8译码器的Y1的寻址范围之内。5.8255芯片的PC6与脉冲信号是连接在一起,8255芯片的A端口与二极管L7—L0直接 相连。当脉冲信号到来,PC6会被置1,允许中断,CPU会将数据通过8255芯片的A 口输出到二极管L7中,点亮相应的灯。 。。。。。。等等详细论证,如我课堂所讲

plc红绿灯实验报告

竭诚为您提供优质文档/双击可除plc红绿灯实验报告 篇一:交通灯pLc控制实验报告 交通灯的pLc控制实验报告 学院:自动化学院班级:0811103姓名:张乃心学号:20XX213307 实验目的 1.熟悉pLc编程软件的使用和程序的调试方法。2.加深对pLc循环顺序扫描的工作过程的理解。3.掌握pLc的硬件接线方法。 4.通过pLc对红绿灯的变时控制,加深对pLc按时间控制功能的理解。5.熟悉掌握pLc的基本指令以及定时器指令的正确使用方法。 实验设备 1.含可编程序控制器microLogix1500系列pLc的Demo 实验箱一个 2.可编程序控制器的编程器一个(装有编程软件的pc 电脑)及编程电缆。3.导线若干

实验原理 交通指挥信号灯图 I/o端子分配如下表 注:pLc的24VDc端接Demo模块的24V+;pLc的com端接Demo模块的com。 系统硬件连线与控制要求 采用1764-L32Lsp型号的microLogix1500可编程控制器,进行 I/o端子的连线。它由220VAc供电,输入回路中要串入24V直流电源。1764系列可编程控制器的产品目录号的各位含义如下示。1764:产品系列的代号L:基本单元 24:32个I/o点(12个输入点,12个输出点)b:24V 直流输入w:继电器输出 A:100/240V交流供电 下图为可编程控制器控制交通信号灯的I/o端子的连线图。本实验中模拟交通信号灯的指示灯由24V直流电源供电。o/2-o/4为南北交通信号灯,o/5-o/7为东西交通信号灯。 实现交通指挥信号灯的控制,交通指挥信号灯的布置,控制要求如下:(1)信号灯受一个启动开关控制,当启动开关接通时,信号灯系统开始正常工作,且先南北红灯亮,东西绿灯亮。当启动开关断开时,所有信号灯熄灭。 (2)南北红灯维持25秒。在南北红灯亮的同时东西绿

C语言程序设计实验报告

《C程序设计》实验教学大纲 一、适用范围 大纲适用信息管理专业本科教学使用。 二、课程名称 C程序设计 三、学时数与学分 总学时:90 总学分: 4 实验学时:28 实验学分:1 四、教学目的和基本要求 目的:通过C程序设计实验,培养学生对学习程序设计的兴趣,加深对讲授内容的理解,尤其是通过上机来掌握语法规则,使学生全面了解 C 语言的特点,熟练掌握C 语言程序设计的基本方法和编程技巧。 基本要求:了解和熟悉C语言程序开发的环境;学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止,上机结束后,应整理出实验报告。 注:带*的实验项目为选做实验项目 六、教材、讲义及参考书 《C程序设计题解与上机指导》谭浩强主编清华大学出版社 七、实验成绩评定办法 实验成绩=平时实验表现+实验报告。实验成绩占总成绩的20%。 实验成绩以等级形式给出,评定等级分优、良、中、及格、不及格五类。 1、平时考核:上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止。在实验中,教师可根据学生编程操作能力、观察和分析及运用知识能力、程序编制正确性以及学生的课堂纪律、实验态度、保持实验室卫生等方面的表现进行综合考核。

2、实验报告:学生实验后应按时完成实验报告。 八、实验教学大纲说明 本大纲共安排28学时的实验,其中带*号实验项目为选做实验项目,实际课时为18学时。实验项目多为设计性实验项目,每个设计性实验项目中都包含数个小的设计性题目,其中带*号的题目为选做题目,有时间和有能力的同学可以选做。 九、实验项目 实验一 C程序的运行环境和运行一个C程序的方法 一、实验目的 1.了解Visual C++编译系统的基本操作方法,学会独立使用该系统。 2.了解在该系统上如何编辑、编译、连接和运行一个C程序。 3.通过运行简单的C程序,初步了解C源程序的特点。 二、实验内容 1.用编辑程序,输入教材第一章例程序,并进行编译和运行。应了解所用的系统是用什么命令进行编译和连接运行的。编译和连接后所得到的目标程序的后缀是什么形式的 2.编写一个C程序,输出以下信息: **************************** very good! **************************** 3.输入并运行教材第一章中例,了解如何在运行时向程序变量输入数据。 实验二数据类型、运算符和表达式 一、实验目的 1.掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用格式转换符。 2.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。 二、实验内容 1.输入并运行以下程序: main( ) { char c1,c2; c1=97;c2=98; printf(“%c %c\n”,c1,c2); printf(“%d %d\n”,c1,c2); } 在此基础上 ①将第三行、第四行改为: c1=321;c2=353; 再使之运行,分析其运行结果。 ②将第二行改为: int c1,c2; 再使之运行,分析其运行结果。。 2.输入并运行以下程序: main( ) {int i=8,j=10,m,n; m=++i;n=j++;

8255红绿灯实验

集美大学 计算机工程学院实验报告 课程名称微机系统与接口技术 实验名称8255可编程并行接口实验 实验类型设计型 姓名翁龙学号2010810117 日期11.1 地点克立楼 成绩教师傅永钢洪玉玲 第1页共6页

1. 实验目的及内容 1.1实验目的 1)了解8255芯片工作原理。学会使用8255并行接口芯片实现数据的I/O操作或各种控制技术。 2)熟悉8255内部结构和与8088的接口逻辑。 3)掌握8255的初始化。 1.2实验内容 设计8255与8086CPU的硬件连接图,分配8255的基地址为0F000H。 1)8255控制交通灯 本设计用LED来模拟交通灯。 交通灯的过程: 东西向的绿灯、南北向的红灯亮5秒。 东西向的绿灯灭、南北向的红灯亮,在此时间段中东西向的黄灯闪烁5次,每次亮0.5秒,灭0.5秒. 南北向的绿灯、东西向的红灯亮点秒 南北向的绿灯灭,东西向的红灯亮,在此时间段中南北向的黄灯闪烁5次,每次亮0.5秒,灭0.5秒。 按此规则重复 2. 实验环境 星研环境 3. 实验方法 通过对端口的定义来实现数据的输入输出

D034D133D232D331D430D529D628D727PA04PA13PA22PA31PA440PA539PA638PA737PB018PB119PB220PB321PB422PB523PB624PB725PC014PC115PC216PC317PC413PC512PC611PC7 10 RD 5WR 36A09A18RESET 35CS 6 8255 U36 D0D1D2D3D4D5D6D7WR RD RST A0 A1 PC5PC6PC7 PC2PC3PC4PC0PC1DS35DS36DS37DS38DS39DS40DS4112345678 VCC DS42 A0A1 CS CS1(0F000H) 510 R111510 R112 510R113510R114510R115510R116510R117510R118

微机原理实验8255并行口实验PA输入、PB输出

8255A并行口实验PA输入、PB输出利用LED等显示 程序 LCD EQU 07FE0H LCDWI EQU LCD+0 ;写命令 LCDWD EQU LCD+1 ;写数据 LCDRS EQU LCD+2 ;读状态 LCDRD EQU LCD+3 ;读数据 PA EQU 0FFD8H PB EQU 0FFD9H PC EQU 0FFDAH PCTL EQU 0FFDBH code segment assume cs:code lin db 0 col db 0 num db 0 dis_num db 0 temp0 db 0 temp1 db 0 count db 0 org 1000h start: MOV DX,PCTL MOV AL,90H OUT DX,AL call init_lcd mov al,3 call delay2 mov count,0 mov bx,offset tab0 mov lin,0 mov col,0 mov num,16 call dis_english GOON: MOV DX,PA IN AL,DX TEST AL,01H JE GOON1 TEST AL,02H JE GOON2

TEST AL,04H JZ GOON3 TEST AL,08H JE GOON4 TEST AL,10H JE GOON5 TEST AL,20H JE GOON6 TEST AL,40H JE GOON7 TEST AL,80H JZ GOON8 JMP GOON9 GOON1: JMP KEY1 GOON2: JMP KEY2 GOON3: JMP KEY3 GOON4: JMP KEY4 GOON5: JMP KEY5 GOON6: JMP KEY6 GOON7: JMP KEY7 GOON8: JMP KEY8 GOON9: mov bx,offset tab9 mov lin,1 mov col,0 mov num,16 call dis_english MOV DX,PB MOV AL,0FFH OUT DX,AL JMP GOON KEY1: MOV DX,PB MOV AL,0FEH OUT DX,AL mov bx,offset tab1 mov lin,1 mov col,0 mov num,16 call dis_english JMP GOON KEY2: MOV DX,PB MOV AL,0FDH OUT DX,AL

红绿灯实验报告

实验报告 班级:学号: 姓名:日期: 实验一、红绿灯控制 一、实验目的 熟悉软件的使用,掌握plc编程的方法,编写程序控制十字路口的红绿灯。 二、实验设备 一台安装有STEP 7-MivroWIN4.0与S7200_simulation的电脑。 三、控制要求分析 实验利用PLC控制十字路口的红绿灯。十字路口的红绿灯分为横向控制灯和纵向控制灯,每个方向有红、绿、黄3种颜色的控制灯。 当电路接通,双向红绿灯开始正常工作,横向的绿灯和纵向的红灯先亮。横向的绿灯亮维持8s,在横向绿灯亮的同时纵向的红灯也亮起,并维持10s。第8秒时横向的绿灯熄灭,同时亮起黄灯并维持2s后熄灭。第10s时,横向黄灯熄灭的同时亮起红灯并维持10s,同时纵向的绿灯亮起并维持8s。当纵向绿灯熄灭并亮起黄灯持续2s后红灯亮起,同时横向的绿灯也亮起并维持8s到此一个循环就此结束下一个循环开始。当按下紧停按钮时两路同时亮黄灯2s后,其中一路亮红灯另一路亮绿灯。本实验设置了两个紧停按钮。 四、PLC的I/O分析 I0.1,I0.2两个紧停按钮。M0.1,M0.2中间继电器。 Q0.0横向绿灯,Q0.1横向黄灯,Q0.2横向红灯, Q0.3纵向红灯,Q0.4纵向绿灯,Q0.5纵向黄灯。 T37、T41为8s定时器, T38、T42为2s定时器, T39、T40为10s定时器。 五、PLC梯形图程序及指令表程序

梯形图程序:

指令表程序: LD I0.1 = M0.1 Network 2 LDN M0.2

AN T37 LDN M0.1 A T38 A M0.2 OLD = Q0.0 Network 3 LDN M0.2 AN M0.1 AN T39 TON T37, 80 Network 4 LDN M0.2 AN M0.1 AN T38 A T37 LDN M0.2 AN T38 A M0.1 OLD LDN M0.1 AN T38 A M0.2 OLD = Q0.1 Network 5 LDN M0.1 AN M0.2 A T37 LDN M0.2 A M0.1 OLD LDN M0.1 A M0.2 OLD TON T38, 20 Network 6 LDN M0.2 AN M0.1 AN T39 A T38 LDN M0.2 A T38

c语言程序设计基本输入输出和简单程序设计

实验3 基本输入输出和简单程序设计 实验目的 1.掌握常用的C语言语句,熟练应用赋值、输入、输出语句。 2.理解C语言程序的顺序结构,掌握顺序结构设计的基本方法。 3.进一步熟悉C程序的编辑、编译、连接和运行以及调试跟踪的过程。 实验内容 1.准备实验环境: (1)启动Visual Studio 201X 或者Codeblocker等C程序开发的IDE (2)如果保留了实验1的工程项目,则可以直接双击工程项目文件夹中的.sln 文件打开它即可。否则,按实验1的做法,创建一个Win32控制台应用程序(即ConsoleApplication)工程,以自己的姓名全拼音为工程名称。可能有些同学已经忘记了,我们再指导一遍: 首先新建项目:

2.理解分析程序,熟悉基本的C程序输入输出。 1)给工程新建一个源程序文件,取名为"你的姓名全拼_3_1.c",并将以下程序编写进该源程序保存: #include int main() { int a=25; double d = 4321.123456789012345; char c = 'T'; printf("你的姓名_3_1:理解输出!\n");/* 改姓名哦*/ printf("a = :%d;%5d;%-5d;%+05d!\n",a,a,a,-a); printf("a = :%5x;%o!\n",a,a); printf("d = :%f;%15f;%8.3f;%20.15f;%.2f!\n",d,d,d,d,d); printf("c = :%c;%5c;%-5c!\n",c,c,c); } 运行该程序,将运行的结果截图放在下面: 程序运行的结果图:

实验四 8255输入、输出实验

2题:A口输出,B口读入Code segment Assume cs:code Start proc near START: Mov al , 082h Mov dx , 8003h Out dx , al MOV dx ,8001h in al ,dx mov dx,8000h out dx ,al jmp start Code ends End start 1题:用A口控制小灯循环亮灭

Code segment Assume cs:code Start proc near START: Mov al , 082h Mov dx , 8003h Out dx , al Mov al , 080h Mov cx , 08h OUTA: Mov dx , 8000h Out dx , al mov dx,8002h out dx,al shr al,1 mov ah,200 call delay Loop OUTA JMP start Delay proc near Push ax Mov al , 0

Push cx Mov cx , ax Loop $ Pop cx Pop ax Ret Delay endp Code ends End start 思考题:用C口控制小灯Code segment Assume cs:code Start proc near START: Mov al , 00000010h Mov dx , 8003h OUT DX,AL call delay Mov al , 00000011h

Mov dx , 8003h OUT DX,AL call delay JMP START Delay proc near MOV CX ,20000 Loop $ Ret Delay endp Code ends End start

相关主题
文本预览
相关文档 最新文档