单片机实验报告.docx

上传人:b****1 文档编号:128832 上传时间:2023-04-28 格式:DOCX 页数:15 大小:169.68KB
下载 相关 举报
单片机实验报告.docx_第1页
第1页 / 共15页
单片机实验报告.docx_第2页
第2页 / 共15页
单片机实验报告.docx_第3页
第3页 / 共15页
单片机实验报告.docx_第4页
第4页 / 共15页
单片机实验报告.docx_第5页
第5页 / 共15页
单片机实验报告.docx_第6页
第6页 / 共15页
单片机实验报告.docx_第7页
第7页 / 共15页
单片机实验报告.docx_第8页
第8页 / 共15页
单片机实验报告.docx_第9页
第9页 / 共15页
单片机实验报告.docx_第10页
第10页 / 共15页
单片机实验报告.docx_第11页
第11页 / 共15页
单片机实验报告.docx_第12页
第12页 / 共15页
单片机实验报告.docx_第13页
第13页 / 共15页
单片机实验报告.docx_第14页
第14页 / 共15页
单片机实验报告.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

单片机实验报告.docx

《单片机实验报告.docx》由会员分享,可在线阅读,更多相关《单片机实验报告.docx(15页珍藏版)》请在冰点文库上搜索。

单片机实验报告.docx

单片机实验报告

实验一发光二极管流水灯实验

一、实验目的:

1.通过AT89C51单片机控制8个发光二极管,八个发光二极管分别接在单片机的P0.0-P0.7接口上,输出“0”时,发光二极管亮。

开始时P0.0→P0.1….→P0.7,实现亮点以1HZ频率循环移动。

2.用PROTEUS设计,仿真以AT89C51为核心的发光二极管流水灯实验装置。

3.掌握发光二极管的控制方法。

二、PROTEUS电路设计:

3、源程序的编写:

ORG0000H

LJMPMAIN

MAIN:

MOVA,#0FEH

LOOP:

MOVP0,A

ACALLDELAY;调用延时1S子程序

RLA

SJMPLOOP

 

DELAY:

MOVR2,#10

DEL3:

MOVR3,#200

DEL2:

MOVR4,#125

DEL1:

NOP

NOP

DJNZR4,DEL1

DJNZR3,DEL2

DJNZR2,DEL3

RET

 

实验二开关控制LED数码管实验

一、实验目的:

1.通过AT89C51读入4位开关K1、K2、K3、K4的输入状态,并按照二进制编码关系0-F输出到数码管显示。

(如K4K3K2K1全部按下,则显示F;若只有K2按下,则显示2。

2.掌握LED数码管的静态显示。

3.掌握I/O口的控制方法。

二、PROTEUS电路设计:

3、源程序的编写:

ORG00H

LJMPMAIN

ORG30H

DB03FH,006H,05BH,04FH,066H,06DH,07DH,007H,07FH,06FH,077H,07CH,039H,05EH,079H,071H

MAIN:

MOVP2,#0FFH

AGAIN:

MOVA,P2

CPLA

MOVDPTR,#30H

MOVCA,@A+DPTR

CPLA

MOVP0,A

AJMPAGAIN

END

 

实验三外中断优先级实验

一、实验目的:

1.理解单片机中断优先级和优先权。

2.用PROTEUS设计,仿真基于AT89C51单片机的中断优先级实验。

3.掌握中断编程方法。

单片机主程序控制P0口数码管循环显示0~8;外中断0、外中断1发生时分别在P2口、P1口依次显示0~8。

通过实验可演示高优先级可中断低优先级,但低优先级的中断请求不能中断高优先级。

二、PROTEUS电路设计:

3、源程序的编写:

ORG0000H

LJMPSTART

ORG0003H

LJMPBREAK0

ORG0013H

LJMPBREAK1

ORG0030h

TAB:

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

START:

MOVDPTR,#TAB

MOVR0,#0H

MOVIE,#85H//开外部中断0,1

MOVIP,#04H//优先级1>0

SETBIT0//触发方式

SETBIT1

LED:

MOVA,R0

MOVCA,@A+DPTR

MOVP0,A

MOVR3,0FFH

MOVR4,0FFH

LOOP:

NOP//延时

DJNZR3,LOOP

DJNZR4,LOOP

INCR0

CJNER0,#9H,LED

MOVR0,#0H

LJMPLED

BREAK0:

MOVR1,#0H

LED0:

MOVA,R1

MOVCA,@A+DPTR

MOVP2,A

MOVR3,0FFH

MOVR4,0FFH

LOOP0:

NOP//延时

DJNZR3,LOOP0

DJNZR4,LOOP0

INCR1

CJNER1,#9H,LED0

MOVP2,#0FFH

RETI

BREAK1:

MOVR2,#0H

LED1:

MOVA,R2

MOVCA,@A+DPTR

MOVP1,A

MOVR3,0FFH

MOVR4,0FFH

LOOP1:

NOP//延时

DJNZR3,LOOP1

DJNZR4,LOOP1

INCR2

CJNER2,#9H,LED1

MOVP1,#0FFH

RETI

END

 

实验四60S倒计时实验

一、实验目的:

1.通过AT89C51的定时器实现60S倒计时,显示采用两位数码管动态显示。

2.用PROTEUS设计,仿真基于AT89C51单片机的60S倒计时实验。

二、PROTEUS电路设计:

3、源程序的编写:

ORG0000H

AJMPMAIN

ORG000BH

AJMPLOOP1

ORG0030H

DB3FH,06H,5BH,4FH,66H

DB6DH,7DH,07H,7FH,6FH

MAIN:

MOVTMOD,#01H

MOVTH0,#3CH

MOVTL0,#0B0H

MOVIE,#82H

SETBTR0

MOVR2,#60

MOVR0,#14H

LOOP:

MOVA,R2

MOVB,#10

DIVAB

MOVDPTR,#30H

MOVCA,@A+DPTR

CPLA

MOVP2,#01H

MOVP1,A

ACALLDELAY

MOVA,B

MOVCA,@A+DPTR

CPLA

MOVP2,#02H

MOVP1,A

ACALLDELAY

AJMPLOOP

LOOP1:

MOVTH0,#3CH

MOVTL0,#0B0H

DJNZR0,NEXT

MOVR0,#14H

DECR2

CJNER2,#0FFH,NEXT

MOVR2,#60

NEXT:

RETI

DELAY:

DEL2:

MOVR4,#10

DEL1:

NOP

NOP

DJNZR4,DEL1

DJNZR3,DEL2

RET

END

实验五矩阵式键盘的设计

一、实验目的:

1.掌握键盘设计中按键识别的原则。

2.用PROTEUS设计一个常规4×4的矩阵键盘。

3.键盘编码规则自己定义,分别对应数字键0-9、A-F,按下对应的按键显示在数码管上显示对应的数据。

二、PROTEUS电路设计:

3、源程序的编写:

ORG00H

LJMPSTART

ORG30H

TABLE:

DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H

DB7FH,6FH,77H,7CH,39H,5EH,79H,71H

START:

MOVDPTR,#TABLE

MOVP1,#08H

HH:

MOVP2,#0F0H

H1:

JBP2.4,H2

MOVR0,#00H

LJMPLL

H2:

JBP2.5,H3

MOVR0,#01H

LJMPLL

H3:

JBP2.6,H4

MOVR0,#02H

LJMPLL

H4:

JBP2.7,H1

MOVR0,#03H

LL:

MOVP2,#0FH

L1:

JBP2.0,L2

MOVA,#00H

LJMPCB

L2:

JBP2.1,L3

MOVA,#01H

LJMPCB

L3:

JBP2.2,L4

MOVA,#02H

LJMPCB

L4:

JBP2.3,L1

MOVA,#03H

CB:

MOVB,#04H

MULAB

ADDA,R0

MOVCA,@A+DPTR

CPLA

MOVP0,A

LJMPHH

END

实验六AD转换程序设计

一、实验目的:

1.掌握转换器ADC0809的使用。

2.用PROTEUS设计,仿真基于AT89C51单片机的A/D转换实验。

3.通过改变电位器的值改变模拟量的输入,经转换为数字量在LED上显示,比对模拟量和数字量的关系。

二、PROTEUS电路设计:

3、源程序的编写:

ORG00H

LJMPSTART

ORG30H

TABLE:

DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H

DB7FH,6FH,77H,7CH,39H,5EH,79H,71H

START:

MOVR1,#00H

MOVR2,#08H

MOVDPTR,#TABLE

CLREX0

LOOP:

CLRP2.0

MOVX@R1,A

MOVR3,#20H

DELY:

DJNZR3,DELY

SETBP3.2

WAIT:

JBP3.2,WAIT

MOVXA,@R1

MOVR5,A

ANLA,#0FH

MOVCA,@A+DPTR

CPLA

SETBP3.5

CLRP3.4

MOVP1,A

ACALLDLY

MOVA,R5

ANLA,#0F0H

SWAPA

MOVCA,@A+DPTR

CPLA

SETBP3.4

CLRP3.5

MOVP1,A

ACALLDLY

SJMPLOOP

DLY:

MOVR4,#175

DL:

MOVR6,#125

DL1:

DJNZR6,DL1

DJNZR4,DL

RET

HERE:

SJMPHERE

END

 

实验七双机通信实验

一、实验目的:

1.掌握单片机串口通信程序的设计。

2.了接RS232接口通信的特点。

3.双机通信:

分别把接收到的对方通过逻辑开关输入的信息在本地数码管上显示,如下图甲机的逻辑开关数据为81H,乙机通过串口接收该数据并数码关管显示,而甲机显示乙机发送的数据88H。

二、PROTEUS电路设计:

3、源程序的编写:

ORG0000H

LJMPSTART

ORG0030H

START:

MOVTMOD,#20H

MOVTH1,0FDH

MOVTL1,0FDH

SETBTR1

MOVSCON,#50H

MOVPCON,#00H

MOVA,P1

MOVSBUF,A

WAIT1:

JBCTI,RX

SJMPWAIT1

RX:

JBCRI,NEXT1

SJMPRX

NEXT1:

MOVA,SBUF

MOVP0,A

RET

END

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

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2