Protues8255实验报告.pdf
微机原理8255实验报告
四、 实验过程中遇到的问题:在第一次编写完成后,我们调试失败了,通 过检查,发现程序有一个指令编写错误,纠正后,程序仍然编译失败, 连续好几次都没有成功,后来通过向同学请教,发现我们在改正之前没 有进行复位,导致错误没有纠正,按照正确的过程改正后,终于调试成 功了,我们看到随着电脑屏幕上的程序一条条执行,LED 灯准确地将开 关的状态输出,实验终于成功了。
微机原理与接口技术实验报告
姓名
学号
专业年级
实验题目
8255 并行接口实验
实验目的 实验内容
通过实验了解 8255 的工作原理,并在实验中熟悉 8255 的初始化编程,巩固学
习的理论知识,将理论转化为实践。
实验题 1 编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。即当 开关 ki 置于 L 时,对应发光二极管 LEDi 点亮;置于 H 时熄灭
实验题 2 编写程序,使得当开关 k1 置于 L 时,LED1~LED2 皆亮; k1 置于 H 时, LED1~LED2 皆灭
实验分析
一、首先按照以下的实验连线将电路连接好: CS8255 CS0 PA0~PA1 开关 K1~K2 PB0~PB1 发光二极管 LED1~LED2
二、(打开实验箱电源)PC 机运行 8086 调试软件 TECH86---串口 COM3 或 COM4—PREST 键 编辑程序,单步运行,调试程序 调试通过后,全速运行程序,观看实验结果
start
实验二:
assume cs:code
code segment public
org
单片机实验-可编程并行接口芯片8255的应用实验
可编程并行接口芯片8255的应用实验一、实验目的和要求1、掌握单片机与可编程并行接口芯片8255的接口设计方法。
2、掌握Proteus软件与Keil软件的使用方法。
3、熟悉可编程并行接口芯片8255初始化程序的设计方法。
二、实验内容或原理1、在可编程并行接口芯片8255的PA口或PB口的某一口线上产生连续周期性矩形波。
2、在可编程并行接口芯片8255的PC口的PC0-PC3上接4个按键作输入,PC4-PC7上接4个发光二极管作输出,编程实现发光二极管正确指示按键的状态。
三、设计要求1、用Proteus软件画出电路原理图,在单片机的外部扩展片外三总线,并通过片外三总线与8255接口。
2、在8255PA口或PB口的某一口线上产生周期为500μS的连续方波,接示波器观察波形。
3、在8255PC口的PC0-PC3上接4个按键作输入,PC4-PC7上接4个发光二极管作输出,编程实现发光二极管正确指示按键的状态四、实验报告要求1、实验目的和要求。
2、设计要求。
3、电路原理图。
4、实验程序流程框图和程序清单。
5、实验结果(波形图)。
6、实验总结。
7、思考题。
五、思考题1、在8255PC口上外接8个发光二极管,利用8255PC口的置位/复位控制字控制其按某种规律变化。
原理图:/*功能:PA口产生周期为500us的连续方波(方式二、查询)*/ ORG 0000HLJMP MAINORG 0030HMAIN: MOV TMOD, #02HMOV IE, #00HMOV DPTR, #0003H ;指向8255的控制口MOV A, #89H ;工作方式命令,A口输出MOVX @DPTR, A ;向控制口写控制字MOV TH0, #06H ;赋初值MOV TL0, #06HSETB TR0 ;开启定时器0LOOP: JBC TF0, LOOP1 ;判断计数溢出AJMP LOOPLOOP1: MOV DPTR, #0000H ;指向8255的A口CPL ACC.0 ;指向PA0,取反MOVX @DPTR, A ;显示波形LJMP LOOPEND/*功能:发光二级管指示按键状态*/ORG 0000HMAIN: MOV DPTR, #0003H ;指向8255的控制口MOV A, #81H ;工作方式命令,口C低半输入,高半输出MOVX @DPTR, A ;向控制口写控制字LOOP: MOV DPTR, #0002H ;指向8255的C口MOVX A, @DPTR ;按键状态读入ASW AP A ;高低字节交换,对应高四位MOVX @DPTR, A ;驱动LED发光LJMP LOOPEND。
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芯片的控制口被选中。
8255实验报告
8255实验报告关键信息项:1、实验目的:____________________________2、实验设备:____________________________3、实验原理:____________________________4、实验步骤:____________________________5、实验结果:____________________________6、结果分析:____________________________7、误差分析:____________________________8、改进措施:____________________________11 实验目的本次 8255 实验的主要目的是深入了解 8255 并行接口芯片的工作原理和编程方法,掌握通过 8255 实现输入输出数据的控制和传输。
通过实验,提高对计算机接口技术的实际应用能力,为今后在相关领域的学习和工作打下坚实的基础。
111 具体目标1111 熟悉 8255 的内部结构和引脚功能。
1112 掌握 8255 的工作方式及其设置方法。
1113 学会使用汇编语言或 C 语言对 8255 进行编程,实现数据的输入输出操作。
1114 能够通过实验现象分析和解决可能出现的问题,提高调试程序的能力。
12 实验设备121 计算机一台122 8255 实验箱一个123 导线若干13 实验原理8255 是一种通用的可编程并行接口芯片,具有三个 8 位的并行输入/输出端口:A 口、B 口和 C 口。
每个端口都可以通过编程设置为输入或输出方式,并且可以组合使用以满足不同的应用需求。
8255 内部还有控制寄存器,用于选择端口的工作方式和控制信号。
在实验中,通过对 8255 的控制寄存器进行编程,设置端口的工作方式,然后向输入端口输入数据,或者从输出端口读取数据,观察实验结果,验证 8255 的功能和编程方法的正确性。
14 实验步骤141 连接实验设备将计算机与 8255 实验箱通过数据线连接好,确保连接牢固,电源正常。
8255并口控制器应用实验报告
HUNAN UNIVERSITY 课程实验报告实验名称8255并口控制器应用实验学生姓名学生学号专业班级指导老师2014-12-10实验二8255并口控制器应用实验一、实验目的1.掌握8255的工作方式及应用编程;2.掌握8255的典型应用电路接法。
二、实验内容1.流水灯显示实验。
编写程序,使8255的A口和B口均为输出,实现16位数据灯的相对循环显示;2.基本输入输出实验。
编写程序,使8255的A口为输出,B口为输入,完成拨动开关到数据灯的数据传输。
要求只要开关拨动,数据灯的显示就改变。
三、实验原理并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。
CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位、32位等。
图1 8255内部结构及引脚图8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基本输入/出方式、方式1--选通输入/出方式、方式2--双向选通工作方式。
8255的内部结构及引脚如图1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图2所示。
图2 8255控制字四、实验步骤及结果1、流水灯显示实验图3 流水灯显示程序流程图首先分别向A口和B口写入80H和01H,然后分别将该数右移和左移一位,再送到端口上,这样循环下去,从而实现流水灯的显示。
参考实验程序流程如图3所示。
图4 流水灯显示接线图a)实验接线图如图4所示,按图连接实验线路图,连接好的实物图如图5所示。
图5 8255连接实物图b)运行Tdpit集成操作软件,根据实验内容,编写实验程序,编译、链接,代码如下:IOY0 EQU 3000H ;片选IOY0对应的端口始地址MY8255_A EQU IOY0+00H*4 ;8255的A口地址MY8255_B EQU IOY0+01H*4 ;8255的B口地址MY8255_C EQU IOY0+02H*4 ;8255的C口地址MY8255_MODE EQU IOY0+03H*4 ;8255的控制寄存器地址STACK1 SEGMENT STACKDW 256 DUP(?)STACK1 ENDSDA TA SEGMENTLA DB ? ;定义数据变量LB DB ?DA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV DX,MY8255_MODE ;定义8255工作方式MOV AL,89H ;工作方式0,A口和B口为输出OUT DX,ALMOV DX,MY8255_A ;写A口发出的起始数据MOV AL,01HOUT DX,ALMOV LA,ALMOV DX,MY8255_B ;写B口发出的起始数据MOV AL,80HOUT DX,ALMOV LB,ALLOOP1: CALL DALL YMOV AL,LA ;将A口起始数据右移再写入A口ROL AL,1MOV LA,ALMOV DX,MY8255_AOUT DX,ALMOV AL,LB ;将B口起始数据左移再写入B口ROR AL,1MOV LB,ALMOV DX,MY8255_BOUT DX,ALMOV AH,1 ;判断是否有按键按下INT 16HJZ LOOP1 ;无按键则跳回继续循环,有则退出QUIT: MOV AX,4C00H ;结束程序退出INT 21HDALL Y PROC NEAR ;软件延时子程序PUSH CXPUSH AXMOV CX,0FFFHD1: MOV AX,0FFFFHD2: DEC AXJNZ D2LOOP D1POP AXPOP CXRETDALL Y ENDPCODE ENDSEND STARTc)运行程序,观察LED灯的显示,验证程序功能程序结果。
最新8255实验报告
最新8255实验报告实验目的:本次实验旨在熟悉并掌握Intel 8255A可编程并行接口的功能及其编程方法。
通过实验,学习如何利用8255A实现并行数据的输入输出操作,并了解其在微型计算机系统中的应用。
实验设备与器件:1. 微机实验箱及接口电路板2. Intel 8255A 可编程并行接口芯片3. 8位微处理器(如8086)4. 示波器、逻辑笔等测试工具实验原理:Intel 8255A是一种3态可编程并行输入/输出接口芯片,具有三个8位并行I/O端口:端口A、端口B和端口C。
端口A和端口B可用于输入输出,端口C分为两个4位端口C1和C2,可分别进行输入输出操作。
8255A通过控制字寄存器(控制字1和控制字2)来设置工作模式和端口方向。
实验步骤:1. 初始化8255A:通过编程设置控制字寄存器,定义端口A、B的工作模式(例如,端口A为输入,端口B为输出)和端口C的配置(C1和C2的输入输出模式)。
2. 编写程序代码,实现端口A的数据读取和端口B的数据输出。
3. 使用示波器检测端口C的输入输出信号,验证其功能。
4. 通过改变控制字寄存器的设置,观察并记录端口工作模式变化后的行为。
实验结果:1. 端口A成功读取了外部输入的二进制数据,并在显示器上显示出来。
2. 端口B按照程序设定输出了相应的控制信号,通过LED灯或其他指示设备得到了验证。
3. 端口C1和C2在不同的控制字设置下,能够正确地执行输入输出操作,信号波形通过示波器得到了确认。
实验结论:通过本次实验,我们成功地对Intel 8255A可编程并行接口进行了编程和操作,实现了并行数据的输入输出。
实验结果表明,8255A在并行接口通信中具有重要作用,能够提高数据传输效率,适用于需要高速并行数据传输的场合。
微机原理8255并行接口完整实验报告
实验2 8255并行接口实验实验时间2019年10月23日实验类型■验证性□设计性□综合性1.实验目的1.学习并掌握8255的工作方式及其应用2.掌握8255典型电路的接法3.掌握程序固化及脱机运行程序的方法2. 实验内容及过程(主要内容、操作步骤)1.基本输入输出实验。
编写程序,使8255的A口为输出,B口为输入,完成拨动开关到数据灯的数据传输。
要求只要开关拨动,数据灯的显示就发生相应改变。
2.流水灯显示实验。
编写程序,使8255的A口和B口均为输出,数据灯D7~D0由左向右,每次仅亮-一个灯,循环显示,D15~D8与D7~D0正相反,由右向左,每次仅点亮一个灯,循环显示。
3.方式1输入输出实验。
编写程序,使8255工作在方式1控制下的A口输入,B口输出。
1. 基本输入输出实验本实验使8255端口A工作在方式0并作为输出口,端口C工作在方式0并作为输入口用一组开关信号接入端口B,端口A输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入输出功能。
具体实验步骤如下(1)实验接线图如图4.3.4所示,按图连接实验线路图。
(实际实验改为C为输入,A为输出,相应实际接线图改为下图所示)(2)编写实验程序,经编译、连接无误后装入系统。
(3)运行程序,改变拨动开关,同时观察LED显示,验证程序功能。
3. 测试数据及实验结果4. 实验分析及总结(主要考察内容)1.控制字格式决定了哪个端口为输入,哪个为输出,将D0-D7 8个控制字视为一个16进制数,再将其送入AX的高八位,就实现了端口的输入输出控制,而AX 的低八位没有使用2.A、B、C口和控制寄存器的地址后面*2是指地址第一位没有用教师评阅评价指标:实验目的、操作步骤、设计、算法、程序结构、实验结果、实验分析、实验总结。
8255实验报告
实验五8255方式1输出实验一、实验目的掌握查询方式实现8255选通型输人(方式1)的编程控制方法。
二、实验内容将8255端口A的PA7-PA0与8个发光二极管L7-L0连接,PB2-PB0与拨动开关的K2-K0连接,8255的CS与地址译码区的0-F端子连接,PC2(/STBB)与单脉冲的/PLUS端连接。
先预置开关K2-K0为一组输入状态,然后按下单脉冲按键产生一个负脉冲,输入到PC2。
用发光二极管LEDi亮,显示K2-K0的状态。
要求:K2-K0=000时,LED0亮K2-K0=001时,LED1亮K2-K0=010时,LED2亮K2-K0=011时,LED3亮K2-K0=100时,LED4亮K2-K0=101时,LED5亮K2-K0=110时,LED6亮K2-K0=111时,LED7亮三、实验环境《TPC-EM实验仪》和386EX实验模式。
四、实验步骤(1)先将实验箱打开,按如下“实验连接图”用数据线将各个部件连接;【实验接线图】8255PA0PA7LED显示灯L0L7PB0PB1PB2K0K1K2拨动开关CS PC2单脉冲/PLUS 地址译码0-F(2)连接完成后,根据实验内容的要求写出相关代码;具体代码如下:DATA SEGMENTMESG DB '8255A READY...',0DH,0AH,'$'TAB DB 00000001BDB 00000010BDB 00000100BDB 00001000BDB 00010000BDB 00100000BDB 01000000BDB 10000000BDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATABEG: MOV AX,DATAMOV DS,AXCALL I8255AMOV AH,9MOV DX,OFFSET MESGINT 21HSCAN: MOV AH,1INT 16HJNZ RETURNMOV DX,202HIN AL,DXTEST AL,00000010BJZ SCANMOV DX,201HIN AL,DXAND AL,07HMOV BX,OFFSET TABXLAT TABMOV DX,200HOUT DX,ALJMP SCAN RETURN: MOV AH,4CHINT 21HI8255A PROCMOV DX,203HMOV AL,0A7HOUT DX,ALMOV AL,04HOUT DX,ALMOV DX,201HMOV AL,00HOUT DX,ALRETI8255A ENDPCODE ENDSEND BEG(3)将实验箱开关打开,程序写入386,然后进行连接、下载,按F5进行运行。
8255输入输出实验报告
8255输入输出实验报告
实验目的
本次实验旨在掌握8255芯片的输入输出原理和使用方法,通过实验了解并掌握8255芯片的原理和控制方法,提高实际操作能力。
实验器材
1. 8255芯片
2. 8086单片机
3. 电源
4. 万用表
5. LED灯
6. 按钮开关
实验步骤
1. 连接电路
根据实验原理和电路图,连接相应的电路,包括8255芯片、8086单片机、电源、万用表、LED灯和按钮开关等。
2. 编写程序
根据实验要求,编写相应的程序,包括8255芯片的输入输出控制
程序,以及相关的控制指令。
3. 运行程序
将编写好的程序烧录到8086单片机中,启动程序,进行相应的输入输出操作。
4. 测试结果
通过测试程序的运行结果,验证输入输出是否正确,并进行相应的调试和修改。
实验结果
经过实验,我们成功地掌握了8255芯片的输入输出原理和使用方法,熟悉了8255芯片的控制指令和编写程序的方法,成功地实现了输入输出操作。
本次实验不仅提高了我们的实际操作能力,还增强了我们对硬件电路和控制程序的理解和应用能力。
实验体会
本次实验让我深刻地认识到了硬件电路和控制程序的重要性,同时也让我感受到了实验的乐趣和挑战。
通过实验,我不仅学会了控制8255芯片的方法,还深入了解了单片机和电路原理,提高了自己的实际操作能力和理论知识水平。
结论
通过本次实验,我们掌握了8255芯片的输入输出原理和使用方法,熟悉了8255芯片的控制指令和编写程序的方法,成功地实现了输入输出操作。
本次实验不仅提高了我们的实际操作能力,还增强了我们对硬件电路和控制程序的理解和应用能力。
并行接口8255实验报告
并行接口8255实验一、实验目的1.掌握可编程并行接口电路8255的工作原理及初始化方法2.掌握8255在实际应用中的硬件连接及编程应用二、实验要求根据实验室现有条件,针对实验任务,设计实验方案并进行实现三、实验内容通过使用8255,8253实现一个倒计时设备,具体的方法是,用户逐个打开开关,然后8255定时读取开关状态并输出给二极管,当所有灯都亮起时,输出一个高电平给Gate0,对8253而言,要求每1s查看一次用户是否摁下了所有开关,一旦是这样蜂鸣器就会响起来,然后给8253送一个锁存命令,查看计数器1和计数器0当前的计数值,锁存两个计数值,便于后期的计算和数据处理。
四、实验线路图其中,8255的各个端口分别是:F0H,F2H,F4H,F6H 8253的各个端口分别是:F8H,F9H,FAH,FBH 五、实验程序清单CSEG SEGMENTASSUME CS:CSEGSTART:;初始化8255和8253MOV DX,F6HMOV AL,1001000BOUT DX,ALMOV DX,FBHMOV AL,01110110BOUT DX,ALMOV AL,00110110B;选择8253计数器1MOV DX,F8HMOV AL,0OUT DX,ALMOV AL,10OUT DX,AL;选择8253计数器0MOV DX,FGHMOV AL,0OUT DX,ALMOV AL,10MOV CX,2000H;用CX延时,读取开关状态 NEXT:OUT DX,ALMOV DX,F2HIN DX,AL;输出开关状态,此时亮起灯,如果灯全亮起,蜂鸣器响起MOV DX,F4HOUT DX,ALLOOP NEXT;锁存两个计数器的计数值MOV AL,00110110BMOV DX,F8HOUT DX,ALMOV AL,01110110BMOV DX,F9HOUT DX,ALCSEG ENDSEND START六、实验总结及体会1.实验总结:本次实验中我设计了8086连接8253和8255的相关电路,并且与输出设备相连接,也重新复习了数电的知识,通过学习微机原理和汇编语言这门接近底层的语言我意识到代码与底层的交互是怎样实现的,也有利于我学习其他的高级语言。
8255可编程并行接口实验实验报告
微机原理实验报告实验名称8255可编程并行接口实验一、实验目的1、掌握8255芯片结构及工作方式,2、熟悉8255并行口扩展的编程。
二、实验设备1、Lab6000p实验教学系统;2、IBM-PC机三、系统中的8255模块Lab6000p实验箱中的8255模块连线如下图所示:图1 8255模块的连线AD0~AD7、A0、A1、RESET、/WR、/RD已分别连至系统总线DB0~DB7、AB0、AB1、RESET、/IOW、/IOR;8255_CS、PA口、PB口、PC口引出留给用户连接。
三、实验内容和实验步骤1、8255基本输入输出方式――开关控制LED显示1)实验要求开关拨上LED亮,开关拨下LED灭。
2)电路连接图2 电路连接图8255_CS连至地址译码/CS0,PA口连至LED电平显示模块,PB口连至开关电路。
3)程序框图图4 程序框图4)程序代码见附录程序2.15)实验步骤1、在Lab6000p实验箱上完成连接电路;2、开启计算机电源,开启Lab6000p实验箱电源;3、启动WAVE6000软件;4、确认WAVE6000与Lab6000p连接;5、输入源代码;6、编译源代码(F9);7、单步运行源代码(F8),观察每条指令执行结果;8、连续运行程序,上下拨动开关观察LED显示情况。
2、8255选通输入方式――开关控制LED显示1)实验要求开关上的逻辑信号在选通信号有效时读入微处理器,并送到LED显示。
2)电路连接将选通信号(单脉冲)接到PC2,其余连线和实验1中的相同。
3)程序框图图5 程序框图4)程序代码见附录程序2.25)实验步骤1、在Lab6000p实验箱上完成连接电路;2、开启计算机电源,开启Lab6000p实验箱电源;3、启动WAVE6000软件;4、确认WAVE6000与Lab6000p连接;5、输入源代码;6、编译源代码(F9);7、单步运行源代码(F8),观察每条指令执行结果;8、连续运行程序,上下拨动开关观察LED显示情况。
微机原理-实验五-8255并口实验报告
微机原理实验报告班级:XXXXX姓名:XXXX学号:20XXXXXXXXX大学信息科学与技术学院信息工程系实验五8255并口实验报告一、实验目的:1、掌握 8255 和微机接口方法;2、掌握 8255 的工作方式和编程原理。
二、实验内容:用8255 PA作开关量输入口,PB作输出口。
实现从PA口读入开关量信息,并送PB口显示。
三、程序流程1、工作原理8255 可编程外围接口芯片是 Intel 公司生产的通用并行接口芯片,它具有 A、 B、C 三个并行接口,用+5V 电源供电,能在以下三种方式下工作:方式 0:基本输入/输出方式方式 1:选通输入/输出方式方式 2:双向选通工作方式本实验设定8255端口A工作在方式0并作为输入口,读取 K1~K8 八个开关量,送PB 口显示。
PB 口工作在方式0,作为输出口。
2、流程图(此处自己用visio画一遍)四、实验电路五、代码与注释(自己填写)CODE SEGMENTASSUME CS:CODE,DS:CODE,ES:CODEORG 32E0HPA EQU 0FFD8HPB EQU 0FFD9HPC EQU 0FFDAHPCTL EQU 0FFDBHH2: MOV DX,PCTLMOV AL,90HOUT DX,ALP2: MOV DX,PAIN AL,DXINC DXOUT DX,ALJMP P2CODE ENDSEND H2六、实验步骤1、实验连线⑴ 8255 PA 口接 K1~K8, PB 口接 L1~L8。
2、 PC 环境在与 PC 联机状态下,编译、连接、下载 PH88\he02.asm,用连续方式运行程序。
3、 LED 环境⑴在“P.”状态下按“0→EV/UN”,装载实验所需的代码程序。
⑵在“P.”状态下键入32E0,然后按“EXEC”进入实验项目的运行。
4、观察运行结果在连续运行方式下,按 K1~K8,观察 L1~L8 发光二极管是否对应点亮。
可编程并行接口芯片8255的应用实验报告
DL0: MOV R5, #10H DJNZ R5, $ DJNZ R6, DL0 DJNZ R7, DL1 NOP RET END
程序(思考题)C: #include<reg51.h>
#include<absacc.h> #define uchar unsigned char #define pc8255 XBYTE[0X0002] #define COM8255 XBYTE[0X0003] uchar time; void delay1s()
程序二: ORG 0000H MAIN:MOV DPTR, #0003H
MOV A, #81H MOVX @DPTR, A MOV DPTR, #0002H LOOP:MOVX A, @DPTR SWAP A MOVX @DPTR,A LJMP LOOP END
流程图: 开始 延时
系统初始化 开定时器0 取C口数据 高低半字节交换 数据会送C口
三、实验原理电路图
四、程序清单及流程框图
程序一: ORG 0000H
MAIN:MOV TMOD, #02H MOV TH0, #06H MOV TL0, #06H MOV DPTR, #0003H MOV A, #80H MOVX @DPTR,A MOV R2, #0FFH SETB TR0
LOOP:JNB TF0, LOOP MOV DPTR, #0000H MOV A, R2 MOVX @DPTR,A CPL A MOV R2, A CLR TF0 LJMP LOOP END
五、实验结果
1、程序一:将程序产生的十六进制代码加载到 proteus 中,运行仿真可以在示波器中看到如 图 6.1 所示波形,产生周期为 500us 的连续方波。
微机接口 8255并行接口实验报告
浙江工业大学计算机学院实验报告实验名称 8255并行接口实验姓名徐洁学号 ************班级计科1301班教师雷艳静日期 2015/12/31一、实验内容与要求1.1 实验内容8255方式0实验一:从8255端口C输入数据,再从端口A输出,即TPC-USB平台按逻辑电平开关K0~K7通过编程使端口C接收,然后再通过端口A输出到LED显示电路L0~L7,这样逻辑电平开关的值就可以通过8255芯片显示在LED显示电路上。
8255方式1输出实验:编程实现每按一次单脉冲按钮产生一个正脉冲,使8255产生一次中断,让CPU进行一次中断服务:依次输出01H、02H、04H、08H、10H、20H、40H、80H 使LED显示电路L0~L7依次发光,中断8次结束。
8255方式1输入实验:编程实现每按一次单脉冲按钮产生一个正脉冲使8255产生一次中断请求,让CPU进行一次中断服务,读取逻辑电平开关预置的ASCII码,在屏幕上显示其对应的字符,中断8次结束。
1.2 实验要求(1) 具有一定的汇编编程的基础,能编写一些基本语句来实现实验。
实验前根据实验流程图,写出对应代码;(2) 要了解8255A并行接口芯片内部结构和外部引脚,理解8255芯片的工作方式和程序设计方法;(3) 熟悉实验平台TPC-USB了解各个接口的名称与功能,进行实验时能快速并正确地连接好实验电路;(4) 8255方式0实验一:连接PC与TPC-USB平台,用微机实验软件运行程序,用TPC-USB平台上的逻辑电平开关与LED显示电路观察,LED显示的值与逻辑电平开关设的值对应;(5) 8255方式1输出实验:连接PC与TPC-USB平台,用微机实验软件运行程序,手按单脉冲按钮,观察LED显示电路能依次发光,按8次后,中断结束,程序结束;(6) 8255方式1输入实验:连接PC与TPC-USB平台,用微机实验软件运行程序,用TPC-USB平台的逻辑电平开关设置一个ASCII码,按一次单脉冲,屏幕就能显示该ASCII码对应的字符,变更逻辑电平的开关,按一次单脉冲,屏幕就会显示变更的ASCII码对应的字符。
微机实验报告 8255并行IO口实验
微机实验报告 8255并行IO口实验一、实验目的1.掌握8255芯片的基本结构和功能;2.了解键盘、LED灯的工作原理;3.能够进行8255芯片的编程和应用。
二、实验原理8255是由Intel公司设计的一种具有高度集成度的、通用的、并行的I/O设备。
它可以作为与CPU对外的接口芯片,实现与CPU的数据传输和控制。
在8255中,数据端口和控制端口都是I/O端口,通过这些端口来对外部装置进行输入和输出。
8255一共包含三个可编程I/O口,即端口A、端口B和端口C,每个IO口都有自己的方向、输入输出控制和数据寄存器,同时拥有中断控制、双向数据传输以及串行数据传输等多种操作模式。
其中,端口A和端口B是8位的,可以单独使用或组合成16位的端口C进行数据传输。
端口A和端口B的功能可通过I/O控制字中的一些位来编程实现,可分为输出、输入和双向传输三种模式。
端口C是一个5位I/O口,其中4位可以编程为输入或输出,第5位为只读输入输出类型,称为模式控制寄存器(control mode register,CMR)。
模式控制寄存器有4个不同的配置方式,它们在数据传输时可以实现BCD码的转换、万分之一秒的时钟计数、键盘扫描以及LED灯控制等功能。
本次8255并行IO口实验主要是通过端口A、端口B和端口C来控制LED灯和键盘扫描,实现输入输出的控制。
三、实验内容1.针对8255的IO口进行连接:将P0、P1、P2、P3、wr、rd等引脚重新定义为要控制的LED灯、键盘的控制信号引脚,将8255的各接口接在实验板上。
2.编写相应程序,控制8255芯片的各个闪烁。
四、实验步骤2.在电脑上打开keil 软件,编写控制程序,将程序下载到单片机中。
3.通过控制程序,控制LED灯以及键盘扫描进行输出输入的操作。
五、实验结果实现输出LED灯的闪烁、键盘扫描通过这次实验,我对8255并行IO口的基本结构和功能有了更深入的了解。
8255芯片是一种高度集成度的、通用的、并行的I/O设备,通过这个芯片的接口,我们可以方便地实现单片机与外界键盘等设备的数据输入输出控制。
8255实验报告
8255实验报告8255实验报告引言8255是一种常用的并行接口芯片,广泛应用于各种数字系统中。
本实验旨在通过对8255的实际应用,加深对该芯片的理解和掌握。
实验目的1. 了解8255的基本原理和功能;2. 掌握8255的编程方法;3. 学会使用8255进行数字输入输出控制。
实验器材1. 一块开发板;2. 一台计算机;3. 一根USB数据线。
实验步骤1. 连接开发板和计算机,确保开发板正常供电;2. 打开计算机上的开发板驱动程序,并进行相应的设置;3. 编写相应的程序,通过编程控制8255实现数字输入输出。
实验结果与分析通过编程控制8255,我们可以实现数字输入输出的控制。
在实验中,我们可以通过设置8255的端口模式,将其分为输入和输出两个部分。
通过设置相应的控制字,可以实现对8255端口的读取或写入操作。
在实验中,我们可以通过编写程序,将开发板上的按键作为输入设备,通过8255将按键状态传递给计算机进行处理。
同时,我们还可以将计算机的输出信号通过8255传递给开发板上的LED灯进行显示。
通过实验,我们可以发现8255的优点在于其灵活性和可编程性。
通过简单的编程,我们可以实现各种数字输入输出的控制,从而满足不同应用的需求。
实验总结本次实验通过对8255的实际应用,加深了对该芯片的理解和掌握。
通过编程控制8255,我们可以实现数字输入输出的控制,为各种数字系统的开发提供了便利。
在今后的学习和应用中,我们应继续深入研究8255的原理和编程方法,不断拓展其应用领域。
同时,我们还应关注8255的性能和稳定性,以确保其在实际应用中的可靠性。
通过本次实验,我们不仅学到了知识,还培养了动手实践和解决问题的能力。
这对我们今后的学习和工作都具有重要意义。
致谢在本次实验中,我们得到了老师和同学们的大力支持和帮助,在此表示衷心的感谢。
参考文献[1] 《8255并行接口芯片应用与实验指导》[2] 《单片机原理与应用》附录:实验代码```C#include <reg52.h>sbit LED = P1^0; // 定义LED引脚void main(){while(1){LED = 0; // 点亮LEDdelay(1000); // 延时1秒LED = 1; // 熄灭LEDdelay(1000); // 延时1秒}}void delay(unsigned int t){unsigned int i, j;for(i = 0; i < t; i++)for(j = 0; j < 120; j++);}```以上是本次实验的实验报告,通过对8255的实际应用,我们加深了对该芯片的理解和掌握。
8255接口实验报告
8255接口实验报告8255接口实验报告引言:8255接口是一种常见的数字输入输出设备,它可以连接到计算机的并行接口上。
本实验旨在通过使用8255接口,实现计算机与外部设备之间的数据传输与控制。
一、实验背景计算机与外部设备之间的数据交互是计算机系统中非常重要的一部分。
而8255接口作为一种常见的数字输入输出设备,广泛应用于各种工业控制和数据采集系统中。
了解和掌握8255接口的工作原理和使用方法,对于我们深入理解计算机与外部设备之间的数据传输与控制有着重要的意义。
二、实验目的1. 了解8255接口的基本工作原理;2. 掌握8255接口的连接方法和操作步骤;3. 实现计算机与外部设备之间的数据传输与控制。
三、实验过程1. 连接8255接口首先,将8255接口与计算机的并行接口连接起来。
确保连接的稳固和正确。
2. 编写程序使用C语言编写程序,通过并行接口与8255接口进行通信。
程序中需要包含相关的头文件和函数库,以实现对8255接口的控制和数据传输。
3. 实现数据输入通过编写程序,实现从外部设备向计算机输入数据的功能。
可以通过连接外部开关或传感器等设备,将数据输入到计算机中。
4. 实现数据输出通过编写程序,实现从计算机向外部设备输出数据的功能。
可以通过连接LED灯或其他输出设备,将计算机中的数据输出到外部设备上。
5. 运行程序将编写好的程序加载到计算机中,并运行。
观察计算机与外部设备之间的数据传输和控制情况,检查是否实现了预期的功能。
四、实验结果与分析通过实验,我们成功地实现了计算机与外部设备之间的数据传输与控制。
通过编写程序,我们可以将外部设备上的数据输入到计算机中,并将计算机中的数据输出到外部设备上。
通过观察实验结果,我们可以判断数据传输和控制是否正常。
如果数据传输和控制出现异常,我们可以通过调试程序或检查硬件连接来解决问题。
五、实验总结通过本次实验,我们深入了解了8255接口的工作原理和使用方法。
微原实验报告8255
华北电力大学实验报告||实验名称 8255A实验课程名称微机原理及应用||专业班级:自动化1202 学生姓名:屈言雪学号:201202020222 成绩:指导教师:程海燕实验日期:2014/12/19一、实验目的及要求:实验目的:(1) 学习8255芯片的工作原理及工作方式;(2)掌握使用8255的应用编程方法,并设计出相应电路在实验箱上正确连接;(3)熟练掌握WAVE6000实验系统的使用。
实验要求:1、只用8255芯片,判断开关状态,当K0为高电平时,LED由高到低循环亮灭;当K0为低电平时,LED由低到高循环亮灭;当K1为高电平时,LED全灭且程序结束。
2、运用8255、8259、8253,在8259的IR2端输入中断请求信号,该信号由8253的方波信号产生(频率1Hz)。
每来一个上升沿,申请中断一次,CPU响应后通过8255 PA口使发光二极管亮,第1次中断,LED0亮,第2次中断,LED1亮,……第8次中断,LED7亮,中断8次后结束。
不用判断开关状态。
二、实验设备:1.计算机b6000微机实验箱3.导线若干三、实验内容:1、只用8255芯片,判断开关状态,当K0为高电平时,LED由高到低循环亮灭;当K0为低电平时,LED由低到高循环亮灭;当K1为高电平时,LED全灭且程序结束。
2、运用8255、8259、8253,在8259的IR2端输入中断请求信号,该信号由8253的方波信号产生(频率1Hz)。
每来一个上升沿,申请中断一次,CPU响应后通过8255 PA口使发光二极管亮,第1次中断,LED0亮,第2次中断,LED1亮,……第8次中断,LED7亮,中断8次后结束,。
不用判断开关状态。
四、实验步骤实验要求(一):只用8255芯片整体思路:编程使8255A端口连接的开关K0、K1控制B端口连接的灯按要求亮灭流程图:程序见附录1、 Proteus 中的设计: (1)连接8084与74LS373低低 高高(2)38译码器的连线:如图,将A12、A13、A14、A15分别连接译码器的A、B、C、E1使能端,由于8255的地址为8000H,因此Y0有效是选中8255,E2、E3端接地。
基于8255的小键盘接口实验报告
课程:微机原理与接口技术实验实验名称:硬件仿真实验第一页共页系别:理学院实验日期2014年12月12号专业班号:组别:交报告日期2014年12月19号姓名:学号:报告退发(订正、重做)实验名称:基于8255的小键盘接口实验1、实验目的(1)了解8255可编程并行接口芯片的工作原理;(2)掌握8255的应用。
二、实验设备安装有proteus7.10pro的PC一台。
三、实验内容用8255设计一个4*4矩阵键盘的接口,将按键的键值显示在7段数码管上。
实验模拟电路图如下:上图为按下F键后的情形,7段共阴极数码管上显示出F。
程序代码为:程序代码为:POUT MACRO PORT_ADDR,CONTENTSMOV DX,PORT_ADDRMOV AL,CONTENTSOUT DX,ALENDMGETK MACRO PORT_ADDR,MASK,TARGET MOV DX,PORT_ADDRIN AL,DXAND AL,MASKCMP AL,MASKJZ TARGETENDM.model small.8086.stack.code.startupK0:pout 1006h,81hK1:pout 1000h,dcodepout 1004h,0getk 1004h,0fh,k1mov ah,alpout 1006h,88hpout 1004h,ahgetk 1004h,0f0h,k0or al, ahmov si,0mov cx,16K2:cmp al,kcode[si]jz k3inc siloop K2jmp K0K3:mov al,seg7[si]mov dcode,aljmp K0.datakcode db 07eh,07dh,07bh,077h,0beh,0bdh,0bbh,0b7hdb 0deh,0ddh,0dbh,0d7h,0eeh,0edh,0ebh,0e7hseg7 db 03fh,006h,05bh,04fh,066h,06dh,07dh,007hdb 07fh,06fh,077h,07ch,039h,05eh,079h,071h4、 实验小结通过实验对反转法键码识别原理和8255工作原理有了进一步了解,也对编程有了进一步熟悉。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4
(5)对于实验 2,8255 的连接如下图 端口 A 中的全部端口作为输出显示
(6)对于实验 3,8255 的连接如下图 端口 A 中的全部端口连接一二级数码管,且该数码管为共阴极连接。
华北电力大学
实验报告
| |
实验名称
8255 应用实验
课程名称
微机原理及应用
老师
|
专业班级
姓名
学号
1
一. 实验要求 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
JAE MIE
;K1=1 转到 MIE
CMP AL,01H JE NEXT1
;K1K0=01B 转 HL,K1K0=00B 做 LH
NEXT1:MOV DX,8002H MOV AL,BL OUT DX,AL CALL DELAY1 ROL BL,1 JMP NEXT1
;B 口地址为 8002H
NEXT2:MOV DX,8002H MOV AL,BL OUT DX,AL CALL DELAY2 ROR BL,1 JMP NEXT2
实验 1:
MOV DX,8006H ;控制器地址为 8006H
MOV AL,90H
;A 口 方 式 0 输 入 ,B 口 方 式 0 输 出
7
(10010000B=90H)
OUT DX,AL
实验 2,3:
MOV DX,8006H ;控制器地址为 8006H
MOV AL,80H
;A 口方式 0 输出(10000000B=80H)
OUT DX,AL
;写计数器 1 工作方式
MOV DX,0A002H
;计数器 1 地址 0A002H
MOV AL,00H
;计数器 1 预置值 1000H
8
OUT DX,AL MOV AL,10H OUT DX,AL
;8259A 初始化
Байду номын сангаас
MOV DX,9000H
;ICW1=13H(0001 0011B)
MOV AL,13H
OUT DX,AL
MOV DX,9002H
;ICW2=80H(1000 0000B)
MOV AL,80H
OUT DX,AL
MOV DX,9002H
;ICW3=01H(0000 0001B)
MOV AL,01H
OUT DX,AL
(5)关于实验 1 的设置
读 A 口信息,判断 K0K1
;B 口地址为 8002H
10
MIE:MOV DX,8002H MOV AL,00H OUT DX,AL
正常工作,此时 Y0 、Y1、Y2 对应地址分别为 8000H、9000H、0A000H.
此芯片实验 1.2.3 都需用到
2
(2)8259 的片选地址为 9000H,所以 CS 接 Y1
8086 有 16 位数据总线,其低 8 位作为偶存储体来传输数据,8086 的 A0 要一直为 0,所以 8259 的 A0 要接 8086 的 A1 IR2 端输入中断请求信号,该信号由 8253 的方波信号产生(频率 1Hz), 所以 8259 的 IR2 端与 8253 的 OUT1 端相连。 此芯片实验 2,3 要用到
若 K1=1,则灯全灭
若 K0K1=00,则灯由低到高循环亮灭
若 K0K1=10,则灯由高到低循环亮灭
其中还需要两个延时子程序
程序如下
MOV BL,01H
9
MOV DX,8000H ;A 口地址为 8000H
IN AL,DX
;读 A 口中的数据
AND AL,03H
;AL=AL&00000011B
CMP AL,02H
OUT DX,AL
(4)8253 及 8259 的初始化(实验 2,3 需要)
关于 8253 及 8259 的设置与前面的两个实验均相同,其程序如下所示
;8253A 初始化
MOV DX,0A006H
;控制器地址 0A006H
MOV AL,37H
;计数器 0 选用工作方式 3(方波)
OUT DX,AL
;写计数器 0 工作方式
MOV DX,0A000H
;计数器 0 地址 0A000H
MOV AL,00H
;计数器 0 预置值为 1000H
OUT DX,AL
MOV AL,10H
OUT DX,AL
MOV DX,0A006H
;控制器地址 0A006H
MOV AL,75H
;计数器 1 选用工作方式 2(分频)
(3)8253 的片选地址为 A000H,所以 CS 接 Y2 。
CLK0 接入 1MHz 信号,GATE0 与 GATE1 同时接电源,OUT0 输入到 CLK1,OUT1 经分频输出 1HZ 的信号。 此芯片实验 2,3 要用到
3
(4)对于实验 1,8255 的连接如下图
8255 的片选地址为 8000H,所以 CS 接 Y0 。
5
二. 软件 (1) 实验 1 流程图
6
(2)实验 2,3 流程图
(3)8255 初始化(实验 1.2.3 都需要)
方式选择控制字,对于实验 1:A 口方式 0 输入,B 口方式 0 输出
(10010000B=90H)
对于实验 2,3:A 口方式 0 输出 (10000000B=80H)
程序如下: