- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
8255计数器应用试验
微机实验报告 班级 020 学号 姓名 本次成绩
日期 2010年11 月19 日 星期四 时间10:45~12:15 实验地点 电工楼516
实验三 可编程并行接口8255方式0的应用
一、实验目的
掌握8255方式0的工作原理及使用方法、动态数码管数字显示技术。
二、实验内容
1.按接线图1,8255的PC口接逻辑电平开关K0~K7,PA 口接一排LED发光管L0~L7。读入按键状态,三个键分别对应三种LED流水灯变换方式,由编程者自行设定,如从左到右,从右到左,从两边向中间,或间隔闪烁,变换速度自定。
图 1 图 2
2.按图 2 连接好电路,将8255的A口PA0~PA6分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端S1,S0分别接8255 C口的PC1,PC0。编程在两个数码管上显示秒计时,到60秒后再循环,按任意键就退出。
显示字形
g
e
f
d
c
b
a
段码
0
0
1
1
1
1
1
1
3fh
1
0
0
0
0
1
1
0
06h
2
1
0
1
1
0
1
1
5bh
3
1
0
0
1
1
1
1
4fh
4
1
1
0
0
1
1
0
66h
5
1
1
0
1
1
0
1
6dh
6
1
1
1
1
1
0
1
7dh
7
0
0
0
0
1
1
1
07h
8
1
1
1
1
1
1
1
7fh
9
1
1
0
1
1
1
1
6fh
本题难点提示:
两位交替显示需要一个短的延时,编一个子程序,如Dly5ms,秒需要一个长的延时,可以考虑编写另一个子程序,如DlySec,后者调用前者,并且每调用一次,就显示数码管的一个位,这样程序就简单了。秒数据要显示为10进制,这要注意。另外显示前,要查字形表才行。整个是一个循环结构,希望同学们先画一下框图,再具体实施代码编写。
实验现象记录(思考题)
实验内容1,程序最终都实现了什么功能?
实现了:
1.流水灯自左向右的依次变化
2.流水灯自右向左的依次变化
3.流水灯从两边向中间变化,然后再从中间变化到两边,不停地重复
实验内容2的框图、核心部分的代码:
核心代码:
LEA SI,DISPLAY
MOV BX,OFFSET LED
MOV AL,C3
AND AH,00H
ADD SI,AX
MOV AL,[SI]
XLAT
MOV DX,Pa8255
OUT DX,AL
MOV BX,OFFSET BITS
MOV AL,C3
XLAT
MOV DX,Pc8255
OUT DX,AL
CALL DELAY
INC C3
CMP C3,2
JNE NEXT
MOV C3,0
INC C2
CMP C2,50
JNE NEXT
MOV C2,0
LEA SI,DISPLAY
INC BYTE PTR[SI]
CMP [SI],10
JE X1
Y1: INC C1
CMP C1,60
JNE NEXT
MOV C1,0
MOV C2,0
MOV C3,0
JMP NEXT
X1: MOV BYTE PTR[SI],0
INC BYTE PTR[SI+1]
CMP [SI+1],6
JE X2
JMP Y1
X2: MOV BYTE PTR[SI+1],0
JMP Y1
注:实验二的程序只能实现0到19的计数,再往后就会出错。
对实验内容2,程序运行时观察到什么现象?如果将Dly5ms延长到40ms以上,能观察到的现象是什么?
可以看到两个数码管交替的亮,但计数的过程仍然继续,只是时间间隔变长。
附源程序
实验一:
Base EQU 0EC00H - 280H
Pa8255 EQU Base + 280H
Pc8255 EQU Base + 282H
Con8255 EQU Base + 283H
DATA SEGMENT
COUNT DB 0
MESS DB Press any key,ret
文档评论(0)