8255控制交通灯实验

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验五:集美大学诚毅学院实验报告

课程名称:单片机原理及其接口技术

班级:计算1371

实验成绩:

指导教师:夏梦 姓名:方雅圣

实验项目名称:

8255控制交通灯实验 学号:201342051022

上机实践日期:

实验项目编号:

组号:

上机实践时间: 学时

一、实验目的与要求

1、 了解8255芯片的工作原理,熟悉其初始化编程方法以及输入、输出程序设计技巧。学会使用8255并行接口芯片实现各种控制功能,如本实验(控制交通灯)等。

2、 熟悉8255内部结构和与单片机的接口逻辑,熟悉8255芯片的3种工作方式以及控制字格式。

3、 认真预习本节实验内容,尝试自行编写程序,填写实验报告。

二、实验设备

STAR 系列实验仪一套、PC 机一台

三、实验内容

1、编写程序:使用8255的PA0、PA1、PA

2、PA4、PA5、PA6控制LED 指示灯,实现交通灯功能。 2、连接线路验证8255的功能,熟悉它的使用方法。

四、实验原理图

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 口:7CFFH PB 口:F001H PC 口:F002H 控制口:7FFFH

五、实验步骤

2、观察实验结果,是否能看到模拟的交通灯控制过程。

六、实验软件流程图(见下页)

七、预习及实验报告要求:同实验三。

八、实验扩展及思考

1、如何对8255的PC口进行位操作?

8255控制交通灯程序流程图

1号灯:东西绿 2号灯:东西黄 3号灯:东西红

6号灯:南北绿 7号灯:南北黄 8号灯:南北红

实现代码:

ORG 0000H

LJMP START

START:

MOV DPTR,#03FFH

MOV A,#80H

MOVX @DPTR,A

S1: MOV A,#01111110B;1,8亮 0为亮

MOV DPTR,#00FFH

MOVX @DPTR,A ;东西绿灯亮,南北红灯亮 ; 东西绿灯,南北红灯(1、8号灯亮)LCALL DELAY5S ;5秒延时

MOV R0,#6

L: MOV A,#01111111B;8亮,1闪烁6次

MOV DPTR,#00FFH

MOVX @DPTR,A

LCALL DELAY1S

MOV A,#01111110B;1,8亮

MOV DPTR,#00FFH

MOVX @DPTR,A

LCALL DELAY1S

;DEC R0

DJNZ R0,L

MOV A,#01111101B;2,8亮

MOV DPTR,#00FFH

MOVX @DPTR,A

LCALL DELAY3S ;3秒延时

MOV A,#11011011B ;3,6亮

MOV DPTR,#00FFH

MOVX @DPTR,A

LCALL DELAY5S ;5s

MOV R0,#6

LL: MOV A,#11111011B ;3亮,6灭

MOV DPTR,#00FFH

MOVX @DPTR,A

LCALL DELAY1S ;0.5s

MOV A,#11011011B ;3亮,6亮

MOV DPTR,#00FFH

MOVX @DPTR,A

LCALL DELAY1S ;0.5s

;DEC R0;r1

DJNZ R0,LL;r1

MOV A,#10111011B

MOV DPTR,#00FFH

MOVX @DPTR,A

LCALL DELAY3S

LJMP S1 ;跳转到状态S1状态,循环DELAY5S:MOV R7,#100 ;延时5秒

L0: MOV R6,#100

L1: MOV R5,#248

DJNZ R5,$

DJNZ R6,L1

DJNZ R7,L0

RET

DELAY3S:MOV R7,#60 ;延时3秒

L4: MOV R6,#100

L5: MOV R5,#248

DJNZ R5,$

DJNZ R6,L5

DJNZ R7,L4

RET

DELAY1S:MOV R3,#10 ;延时0.5秒

相关文档
最新文档