单片机应用系统实验Word文档下载推荐.docx

上传人:b****1 文档编号:13371300 上传时间:2022-10-10 格式:DOCX 页数:21 大小:38.73KB
下载 相关 举报
单片机应用系统实验Word文档下载推荐.docx_第1页
第1页 / 共21页
单片机应用系统实验Word文档下载推荐.docx_第2页
第2页 / 共21页
单片机应用系统实验Word文档下载推荐.docx_第3页
第3页 / 共21页
单片机应用系统实验Word文档下载推荐.docx_第4页
第4页 / 共21页
单片机应用系统实验Word文档下载推荐.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

单片机应用系统实验Word文档下载推荐.docx

《单片机应用系统实验Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《单片机应用系统实验Word文档下载推荐.docx(21页珍藏版)》请在冰豆网上搜索。

单片机应用系统实验Word文档下载推荐.docx

==============================================================

文件名称:

功能描述:

BCD整数转换为二进制整数(8位,范围从00H--FFH)

ORG0000H

LJMPMAIN

ORG0100H

MAIN:

MOVR0,#20H;

BCD存放高位地址

MOVR7,#03H;

BCD码0--255,最多3位

CLRA

MOVR4,A

LP1:

MOVA,R4

MOVB,#0AH

MULAB;

乘10

ADDA,@R0;

加下一位的值

INCR0;

指向下一单元

MOVR4,A;

结果存入R4

DJNZR7,LP1;

转换未结束则继续

SJMPMAIN;

设置断点,观察实验结果R4中的内容

END

2.将16位二进制整数存入R3R4寄存器中,转换为十进制整数,以组合BCD形式存储在RAM的20H、21H、22H单元中。

=============================================================

二进制整数(16位)转换为十进制整数(组合BCD)

0--FFFFH(R3R4)==>

0--65535

MOVR0,#22H;

转换结果低位地址

MOVA,R0

PUSHACC;

ACC表示累加器A的直接地址

MOVR7,#03H

MOV@R0,A;

结果存储地址清零

DECR0

DJNZR7,LP1

POPACC

MOVR0,A

MOVR7,#16

LP2:

PUSHACC

CLRC

MOVA,R4;

R4中为二进制数的低位

RLCA

MOVA,R3;

R3中为二进制数的高位

MOVR3,A

MOVB,#03H

LP3:

MOVA,@R0

ADDCA,@R0;

执行乘2操作

DAA;

十进制调整

MOV@R0,A;

结果保存

DJNZB,LP3

DJNZR7,LP2

LJMPMAIN;

设置断点观察结果,可进行下一次转换

3.通过查表的方法将16进制数转换为ASCII码;

查表程序设计,将十六进制数0~F通过查表的方法

转换为ASCII码

MOVDPTR,#ASCTAB;

表格首地址送DPTR

MOVA,R7;

R7中为待转换的数

ANLA,#0FH;

取低4位

MOVCA,@A+DPTR;

查表

MOVR5,A;

低4位转换结果送R1

MOVA,R7

ANLA,#0F0H;

取待转换数的高4位

SWAPA;

高4位与低4位交换

MOVR6,A;

高4位转换结果送R2

设置断点观察结果

ASCTAB:

DB30H,31H,32H,33H,34H

DB35H,36H,37H,38H,39H

DB41H,42H,43H,44H,45H,46H

4.通过查表的方法实现y=x2,其中x为0~9的十进制数,以BCD码表示,结果仍以BCD码形式输出。

查表程序,用程序实现Y=X*X,X为0到9的十进制数,

用BCD码(00H到09H)表示,将X的平方,即Y也以BCD码

的形式保存到R1中.

MOVDPTR,#SQR;

取表格首地址

要计算的值

SJMPMAIN

SQR:

DB00H,01H,04H,09H,16H

DB25H,36H,49H,64H,81H

实验二片内I/O口及中断应用实验

了解P1口作为输入输出方式使用时,CPU对P1口的操作方式。

了解MCS-51单片机的中断原理,掌握中断程序的设计方法。

PC机一台,TD-NMC+教学实验系统,连接线若干

⑴ 按实验内容要求完成硬件连线;

⑵ 编写实验程序,经编译、链接无误后,启动调试功能;

⑶ 观察实验现象,并分析原因;

⑷ 按复位键退出调试状态。

1.片内I/O口应用实验

P1口是8位准双向口,每一位均可独立定义为输入输出。

编写实验程序,将P1口的低4位定义为输出,高4位定义为输入,数字量从P1口的高4位输入,从P1口的低4位输出控制发光二极管的亮灭。

============================================================

文件名:

功能说明:

数字量输入输出实验,P1口高4位输入,低4位输出

LJMPSTART

START:

ORLP1,#0F0H;

P1口高四位为输入

MOVA,P1;

读P1口的值

A中高,低4位交换

MOVP1,A;

输出到P1口

SJMPSTART

2.片内中断系统实验

⑴定时器中断

单片机集成的定时器可以产生定时中断,利用定时器0和定时器1,编写实验程序在及引脚上输出方波信号,通过示波器观察实验现象并测量波形周期。

改变计数值,重新运行程序,反复验证程序功能。

================================================================

采用定时器的中断,在与引脚上输出周期波形.

ORG0000H

LJMPSTART

ORG000BH

LJMPTIMER0

ORG001BH

LJMPTIMER1

ORG0100H

MOVP1,#0FFH

MOVTH0,#0F8H;

初始化定时器0计数初值

MOVTL0,#00H

MOVTH1,#0F8H;

初始化定时器1计数初值

MOVTL1,#00H

MOVTMOD,#11H;

设置定时器工作模式为方式1

MOVTCON,#50H;

启动定时器

MOVIE,#8AH;

使能中断

SJMP$

TIMER0:

CPL;

定时器0中断服务程序,对引脚取反

重新装入计数初值

RETI;

中断返回

TIMER1:

定时器1中断服务程序

MOVTH1,#0F8H

RETI

END

⑵外部中断

手动扩展外部中断INT0、INT1,当INT0产生中断时,使LED8亮8灭闪烁4次;

当INT1产生中断时,使LED由右向左流水显示,一次亮两个,循环4次。

先按KK1-,观察实验现象,然后按KK2-,观察实验现象。

51单片机加入了中断系统,从而提高了CPU对外部事件的处理能力和响应速度。

增强型单片机SST89E554RC共有8个中断源,即外部中断0(INT0)、定时器0(T0)、外部中断1(INT1)、定时器1(T1)、串行中断(TI和RI)、定时器2(T2)、PCA中断和Brown-out中断。

======================================================================

外部中断INT0,INT1操作.

外部中断0:

使发光二极管闪烁4次.

外部中断1:

使发光二极管由右向左流水显示,一次亮两个LED.

ORG0003H

LJMPEINT0

ORG0013H

LJMPEINT1

MOVP1,#00H

SETBIT0;

定义外部中断0为边沿触发

SETBEX0;

使能外部中断0

SETBIT1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1