单片机原理及应用实验汇编Word文档格式.docx

上传人:b****3 文档编号:17402109 上传时间:2022-12-01 格式:DOCX 页数:23 大小:302.61KB
下载 相关 举报
单片机原理及应用实验汇编Word文档格式.docx_第1页
第1页 / 共23页
单片机原理及应用实验汇编Word文档格式.docx_第2页
第2页 / 共23页
单片机原理及应用实验汇编Word文档格式.docx_第3页
第3页 / 共23页
单片机原理及应用实验汇编Word文档格式.docx_第4页
第4页 / 共23页
单片机原理及应用实验汇编Word文档格式.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

单片机原理及应用实验汇编Word文档格式.docx

《单片机原理及应用实验汇编Word文档格式.docx》由会员分享,可在线阅读,更多相关《单片机原理及应用实验汇编Word文档格式.docx(23页珍藏版)》请在冰豆网上搜索。

单片机原理及应用实验汇编Word文档格式.docx

若要存储器2000~20FFH单元的内容都改为FFH,应如何修改程序?

注意:

1.在E盘以自己的名字建立一个工作目录,用字母,不得用汉字,不超过8个字符;

源文件命名也不得使用汉字,不超过8个字符;

所有源程序必须在英文输入法状态下输入,否则编译会出错!

说明:

接线图中,只有粗实线需要连,其它线实验箱内均已连好。

预习报告,实验报告格式

1.实验是理工科专业必不可少的一个教学环节,是提高学生实践动手能力,巩固基础理论知识的一个重要途径,所有学生必须端正学习态度,认真对待,按照实验的基本要求做好每一个环节。

2.实验前必须按要求预习,并按指定格式写好预习报告,做实验前,预习报告交指导老师检查,经老师签字认可后方可进行实验,未写预习报告的同学不得进行实验。

预习报告格式如下:

1)实验目的

2)实验内容

3)实验仪器

4)实验原理(接口实验应包含原理接线图)

5)实验源程序

3.做实验时要认真对待,不得做与实验无关的事情,比如,聊天,玩游戏,接听手机等;

不可以在实验室吃东西,要求保持环境卫生。

4.实验接线时必须先关电源,不可带电插、接线;

实验完成后必须经指导老师验收确认。

然后应整理好导线并归还,把实验仪器恢复成实验前状态,保持实验台整洁,方可离开。

5.实验完成后,应按指定格式及时写好实验报告

6.实验报告

实验完成后,必须按要求写出实验报告,应包含以下内容:

实验目的

实验内容

实验仪器

实验原理(接口实验应包含原理接线图)

实验步骤

实验源程序

实验结果(或现象)

实验总结:

对实验结果或现象的分析,自己的收获或体会等。

 

实验二 P1口亮灯实验

(l)熟悉实验平台的使用方法,包括硬件平台和软件平台

(2)学习P1口的使用方法;

    (3)学习延时子程序的编写。

2、 

实验预备知识:

(l),Pl口为准双向口,每一位都可独立地定义为输入或输出,在作输入线使用前,必须向锁存器相应位写入“1”,该位才能作为输入。

(2),本实验中延时子程序采用指令循环来实现,机器周期(12/6MHz)*指令所需机器周期数*循环次数,在系统时间允许的情况下可以采用此方法。

3、 

实验内容:

 P1口输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。

4、实验程序框图:

5、实验接线图:

6、 

实验步骤:

(1)P1.0~P1.7用插针连至L1~L8

(2)仿真运行程序后,观察发光二极管闪亮移位情况。

7、思考:

(1)改变延时常数,使发光二极管闪亮时间改变。

(2)修改程序,使发光二极管闪亮移位方向改变。

8、 

参考程序清单

LJMPSE18

ORG0790H

SE18:

MOVP1,#0FFH 

;

送P1口

LO34:

MOVA,#0FEH 

L1发光二极管点亮

LO33:

MOVP1,A

LCALLSE19 

延时

RLA 

左移位

SJMPLO33 

;

循环

*******延时子程序*************

SE19:

MOVR5,#20

LO37:

MOVR6,#200

LO36:

MOVR7,#125

LO35:

DJNZR7,LO35

DJNZR6,LO36 

DJNZR5,LO37

RET

END

实验三 Dais-52FD仿真开发系统的使用练习

1,实验目的:

掌握P3口、P1口简单使用。

2,实验内容:

P3.3口输入一脉冲, PI口按16进制加一方式点亮发光二极管。

3,实验程序框图:

4, 

实验接线图:

5,实验步骤:

P3.3用接针连至K1,P1.0~P1.7插针连至L1~L8,K1来回拨动一次,L1~L8发光二极管按16进制方式加一点亮。

6,思考:

修改程序,使发光二极管左移方式点亮。

7,参考程序清单:

LJMPJ100

ORG0810H

J100:

J101:

JBP3.3,J101 

MOVR2,#10H

LCALLDELY;

延时消除抖动

P3.3电平为低吗?

J102:

JNBP3.3,J102 

MOVR2,#10H 

LCALLDELY

P3.3电平为高吗?

INCA 

加1

PUSHACC

CPLA 

取反

MOVP1,A 

驱动发光二极管

POPACC

AJMPJ101 

*******延时子程序***********

DELY:

PUSH02H

DEL2:

DEL3:

DEL4:

DJNZR2,DEL4 

POP02H

DJNZR2,DEL2

DJNZR2,DEL3

DJNZR2,DELY

RET 

END

实验四 多分支程序设计

1,

实验目的:

 

a.掌握多分支程序的编程方法,及在仿真环境下程序的调试方法;

b.掌握LED显示器的工作原理,控制方法及编程方法,显示电路见附件。

 编写程序,根据送入的数据转移运行。

3,实验程序框图如右:

4,实验步骤:

在20H中分次送入00,01,02,03,每次运行程序后,观察数码管上数字循环情况。

20H单元数据的修改在仿真环境下通过存储器窗口来修改。

特别提示:

运行前,必须先给20H单元送数,数码管才会正常显示,否则程序可能跑飞。

5,程序清单

ORG0000H

LJMPMEMS

MEMS:

MOVA,20H

MOVDPTR,#KKKK;

散转首址

RLA;

(20)*2

JMP@A+DPTR;

转到(20)*2+DPTR

KKKK:

AJMPMEMSP0

AJMPMEMSP1

AJMPMEMSP2

SJMPMEMSP3

MEMSP0:

MOV20H,#0C0H;

0字循环

LJMPSOX0

MEMSP1:

MOV20H,#0F9H;

1字循环

MEMSP2:

MOV20H,#0A4H;

2字循环

MEMSP3:

MOV20H,#0B0H;

3字循环

---------------------------------------------

SOX0:

MOVR0,#0DCH;

字形口

MOVR1,#0DDH;

字位口

MOVX@R0,A;

往字形口送段码

MOVA,#01H;

字位码

SOX1:

MOVX@R1,A;

往字位口送字位码

MOVR2,#20H

调用延时子程序

左移

SJMPSOX1

---------------------------------------------延时子程序

PUSH02H;

DJNZR2,DEL4

RET

附件(LED显示电路):

LED显示采用动态显示方式,原理见教材。

共阳极段码送字形口,字位码送字位口(1电平选通)。

0~9共阳极段码:

0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

思考题:

在20H中分次送入00,01,02,·

·

,09,每次运行程序后,使数码管上循环显示对应的数字,应如何修改程序?

实验五脉冲计数实验(定时/计数器实验)

1, 

熟悉单片机内部定时/计数器功能,掌握初始化编程方法。

2, 

把定时器0外部输入的脉冲进行计数,并送显示器显示

3, 

实验程序框图:

实验接线如右图:

5, 

实验步骤:

用插针把8MHZ插孔和T插孔连接,P3.4依次接T0~T7或单脉冲输出孔,执行程序,观察数码管上计数脉冲的速度及个数。

7,程序清单(文件名:

timer.asm):

脉冲计数(定时/计数器实验)

LJMPSE15

ORG0060H

SE15:

MOVSP,#53H

MOVTMOD,#05H

MOVTH0,#00H

MOVTL0,#00H;

定时计数器初始化

SETBTR0;

开计数器

LO29:

MOVR2,TH0

MOVR3,TL0;

取出TH0.TL0内容

LCALLZOY0;

二转十进制

MOVR0,#79H

MOVA,R6

LCALLPTDS

MOVA,R5

MOVA,R4

LCALLPTDS;

送显示缓冲区

LCALLSSEE;

显示

SJMPLO29;

循环计数.显示

ZOY0:

CLRA

MOVR4,A

MOVR5,A

MOVR6,A;

0送R4R5R6

MOVR7,#10H

LO30:

CLRC;

R2R3左移.移出的

MOVA,R3;

最高位送CY

RLCA

MOVR3,A

MOVA,R2

MOVR2,A

ADDCA,R6;

(R4R5R6)*2+CY送R4R5R6

DAA;

十进制调整

MOVR6,A

ADDCA,R5

DAA

ADDCA,R4

DJNZR7,LO30;

循环16次

-----------------------------------------------

PTDS:

MOVR1,A;

拆送显示缓冲区

ACALLPTDS1

MOVA,R1

SWAPA

PTDS1:

ANLA,#0FH

MOV@R0,A

INCR0

--------------------------------------------

SSEE:

SETBRS1;

换工作区

MOVR5,#05H

SSE2:

MOV30H,#20H

MOV31H,#7EH

MOVR7,#06H

SSE1:

MOVR1,#0DDH

MOVA,30H

MOVX@R1,A;

字位送入

MOVR0,31H

MOVA,@R0

MOVDPTR,#DDFF

MOVCA,@A+DPTR;

取字形代码

MOVR1,#0DCH

字形送入

MOVA,30H;

右移

RRA

MOV30H,A

DEC31H

MOVA,#0FFH

关显示

DJNZR7,SSE1;

6位显示完了吗?

DJNZR5,SSE2;

5次显示完了吗?

CLRRS1

--------------------------------------------------------

DDFF:

DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,0DEH

实验六 A/D转换实验

(1)掌握A/D转换与单片机接口的方法;

      

(2)了解A/D芯片0809转换性能及编程方法;

(3)通过实验了解单片机如何进行数据采集。

以上内容请参阅教材,作实验前请先预习有关知识

利用实验系统上的0809做A/D转换器,实验系统上的电位器提供模拟量输入,编制程序,将模拟量转换成数字,通过数码管显示出来。

3,实验说明  A/D转换器大致分有三类:

一是双积分A/D转换器,优点是精度高,抗干扰性好,价格便宜,但速度慢;

二是逐次逼近式A/D转换器,精度、速度、价格适中;

三是并行A/D转换器,速度快,价格也昂贵。

  实验用ADC0809属第二类,是8位A/D转换器。

每采集一次一般需100μs。

由于ADC0809A/D转换器转换结束后会自动产生EOC信号(高电平有效),取反后将其与8031的INT0相连,可以用中断方式读取A/D转换结果。

4.实验接线图:

5,实验程序框图:

6,实验步骤:

1).138译码电路连接:

输入端A.B.C,其中A与A2相连,B与A3相连,C与A4相连,138使能控制输入端G与GS相连。

  2).02门电路连接:

第1脚与模数转换单元的SC/ALE相连,第2脚与138译码单元的Y0相连,第3脚与控制总线单元的IOW相连,第4脚与模数转换单元的OE相连,第5脚与控制总线单元的IOR相连,第6脚与138译码单元的Y0相连。

  3).将模数转换单元的CLK与控制总线单元的ALE相连、IN0与0~5V模拟电压电位器W1相连。

  4).用8芯扁平电缆将A/D0809的D0~D7(位于下方的锁存输出单元)与数据总线单元的D0~D7相连。

  连续运行程序,LED显示器右边二位显示当前采集的电压值转换后的数字量,调节W1,LED的内容将随着电压变化而相应变化,LED以十六进制方式对应显示数字量。

7,思考:

修改程序,用其它通道轮流采样显示。

8,程序清单:

===================A/D转换实验========================

LJMPSE11

SE11:

MOV7EH,#00H

MOV7DH,#08H

MOV7CH,#00H

MOV7BH,#09H

MOV7AH,#10H

MOV79H,#10H;

显示缓冲区初值

LO18:

CALLDIS;

MOVDPTR,#0FFE0H

0809的0通道采样

SSEE

MOVXA,@DPTR;

取出采样值

CALLPTDS;

采样值送显示缓冲区

SJMPLO18;

---------------------------

---------------------------显示子程序

DIS:

PUSHDPH

PUSHDPL

SETBRS1

MOVR0,#7EH

MOVR3,#00H

MOVDPTR,#LS0

LS2:

MOVCA,@A+DPTR

MOVX@R1,A

incR1

LS1:

DJNZR3,LS1

CLRC

RRCA

DECR0

JNZLS2

POPDPL

POPDPH

-------------------------------------

LS0:

DB0C0H,0F9H,0A4H,0B0H,99H,92H

DB82H,0F8H,80H,90H,88H,83H,0C6H

DB0A1H,86H,8EH,0FFH,0CH,89H,7FH,0BFH

--------------------------------------

实验七 8255控制交通灯

1,实验目的:

(1)掌握8255芯片的结构及编程方法

(2)学习模拟交通控制的实现方法。

用8255做输出口,控制十二个发光二极管燃灭,模拟交通灯管理。

3,实验程序框图和交通示意图如下:

8255端口

4,实验接线图:

8255PA0~PA7 PB0~PB3接发光二极管L12~L5、L4~L1。

执行程序,初始态为四个路口的红灯全亮之后,东西路口的绿灯亮,南北路口的红灯亮,东西路口方向通车,延时一段时间后东西路口的绿灯熄灭,黄灯开始闪烁,闪烁若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北路口方向开始通车,延时一段时间后,南北路口的绿灯熄灭,黄灯开始闪烁,闪烁若干次后,再切换到东西路口方向,之后重复以上过程。

附:

8255的口地址为:

PA口对应0FFD8H,PB口对应0FFD9H,PC口对应0FFDAH,控制口对应0FFDBH

6,程序清单:

LJMPJOD0

JOD0:

MOVSP,#60H

MOVDPTR,#0FFDBH;

8255初始化,向控制口写控制字

MOVA,#88H

MOVX@DPTR,A 

MOVDPTR,#0FFD8H;

向A口送数据

MOVA,#0B6H

INCDPTR

MOVA,#0DH

点亮4个红灯

MOVR2,#25H 

JOD3:

MOVDPTR,#0FFD8H

MOVA,#75H

MOVX@DPTR,A

东西绿灯亮,南北红灯亮

MOVR2,#55H

LCALLDELY 

MOVR7,#05H 

闪烁次数

JOD1:

MOVA,#0F3H

MOVA,#0CH

东西黄灯亮,南北红灯亮

MOVA,#0F7H

南北红灯亮

DJNZR7,JOD1 

闪烁次数未到继续

MOVA,#0AEH

MOVA,#0BH

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

当前位置:首页 > 考试认证 > 其它考试

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

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