文档详情

单片机实验报告.docx

发布:2017-02-03约字共8页下载文档
文本预览下载声明
实验一:8255输入、输出实验一.实验要求 编写程序,使用8255可编程并行口芯片,来检测八位拨动开关的状态,并控制八位发光二极管。使得八位发光二极管的亮灭变化与八位拨动开关的状态相一致。实验中用8255PB口作输入,PC口做输出。二.实验目的 了解8255芯片结构及编程方法。三.实验电路及连线8255的PB0~PB7(PB口)接至八位拨动开关K0~K7。将PC0~PC7(PC口)接至八位发光二极管L0 – L7。CS8255接F228。四.实验说明 可编程通用接口芯片8255A有三个八位的并行I/O口,请用户仔细阅读有关书籍掌握其特点和各种用法。由于8255的A1、A2脚分别接至地址线的A0、A1。所以相对应8255各口/寄存器的地址分配如下:PA口:F228H; PB口:F229H;PC口:F22AH;控制寄存器地址:F22BH。本示例程序中使用PB口作输入,检测八位拨动开关的状态;使用PC口作输出,控制八个发光二极管的亮灭。五.实验程序及框图 实验示例程序见8255.ASM。 实验示例程序流程框图如下:开始设置8255工作状态PB口读入八位开关量PC口输出至八位二极管程序代码:;FOR EAT598;---------------------------------------------------------D8255 EQU 0F22BH ;8255命令口地址D8255A EQU 0F228H ;8255 PA口地址D8255B EQU 0F229H ;8255 PB口地址D8255C EQU 0F22AH ;8255 PC口地址;--------------------------------------------------------- ORG 0000H LJMP START ORG 0100HSTART: LCALL DELAY ;延时 MOV DPTR,#D8255 MOV A,#82H ;置8255状态 ;方式0,PA,PC口输出,PB口输入 MOVX @DPTR,AROTATE: MOV DPTR,#D8255B MOVX A,@DPTR ;读开关状态 MOV DPTR,#D8255C MOVX @DPTR,A ;点亮对应的LED SJMP ROTATEDELAY: MOV R0,#0H ;延时子程序DELAY1: MOV R1,#0H DJNZ R1,$ DJNZ R0,DELAY1 RET END实验二:扫描键盘、显示实验一.实验要求 利用8255可编程并行口做一个扫描键盘实验,把按键输入的键码,显示在由PA口控制的七段数码管上。8255PB口做键盘输入线,PC口作扫描线。二.实验目的 1.掌握8255编程方法。 2.掌握扫描键盘和显示的编程方法。三.实验电路及连线CS8255接F228H,则命令字地址为F22BH,PA口地址为F228H,PB口地址为F229H,PC口地址为F22AH。模块中的十个短路套都套在8155/8255侧。四.实验说明 在PB口与PC口组成的64点阵列上,把按键接在不同的点上,将得到不同的键码,本实验采用8×2的阵列,共可按16个键。显示部分由PA控制,由7407驱动8位数码管显示。五.实验框图实验示例程序见8255_key.ASM。实验示例程序流程框图如下:8255_KEY.ASM主程序框图 读键显示部分框图程序代码:;FOR EAT598-HD-V3.0;---------------------------------------------------------C8255 EQU 0F22BH ;8255命令口地址P8255A EQU 0F228H ;8255 PA口地址P8255B EQU 0F229H ;8255 PB口地址P8255C EQU 0F22AH ;8255 PC口地址KEYVAL EQU 30H ;读到的键码FLAG EQU 40H;有键标志;--------------------------------------------------------- ORG 0000H SJMP START ORG 0060HSTART: MOV
显示全部
相似文档