单片机实验指导书200803

更新时间:2023-08-20 22:59:01 阅读量: 高等教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《单片机原理及应用》

实验指导

――适合于“Y51-07”型实验仪

中国农业大学工学院

2008年3月

说明:

为配合中国农业大学工学院机电、测控、汽电等相关专业开设单片机原理与应用方面的课程,编写出本实验指导。完成本实验指导中的实验,可使学生基本掌握 MCS-51系列单片机的结构原理、接口技术、程序设计技巧。指导书中详细叙述了各实验的目的、内容,列出了接线图、程序框图和实验步骤。

将实验系统连接在PC机上,通过串行口通讯线控制单片机开发系统进行实验。实验接线图上的粗实线表示用户在实验时要用导线连接起来。实验仪上的晶振是11.0592MHz。所有实验都是相互独立的,次序上也没有固定的先后关系,在使用本书进行教学时,教师可根据实际的教学要求,选择相应实验。对同一问题的解决办法往往不是唯一的,欢迎学生和老师在使用本书过程中提出最为优秀的实验方案,指示错误和不足。

实验和实验报告的要求

1、 严格按照实验步骤做实验;

2、 注意检查核对自己实验所用元器件、仪器、设备、用户板,做到齐全整齐; 3、 整理好实验程序和实验结果; 4、 实验报告书写清楚,字迹端正;

5、 实验报告中所附程序要有必要的注释,流程框图条理性要好; 6、 详细记录在组装、调试和测试中出现的故障或问题,进行故障分析并简述排除故障的过程和方法; 7、 对本次实验的心得体会意见,以及改进实验的建议。

目 录

第一章 系统概述.........................................................................................................................................1

1.1 功能概述.........................................................................................................................................1 1.2 仿真开发系统.................................................................................................................................1 第二章 接口及资源介绍.............................................................................................................................2 第三章 仿真使用方法...................................................................................................................................3

3.1 方法1:KEIL uVision环境下利用SoftICE仿真.........................................................................3 3.2 方法2:任一开发平台生成hex目标代码+Flash Magic下载...................................................3 第四章 集成软件开发调试环境.................................................................................................................4 第五章 实验部分.........................................................................................................................................5

实验一 8051系列单片机定时/计数器应用实验..............................................................................5 实验二 8051系列单片机P1口编程实验...........................................................................................6 实验三 8051系列单片机中断实验....................................................................................................7 实验四 MCS-51系列单片机扩展实验1...........................................................................................8 实验五 MCS-51系列单片机扩展实验2...........................................................................................9 实验六 8051系列单片机显示接口实验I........................................................................................10 实验七 8051系列单片机显示接口实验II......................................................................................12 实验八 8051系列单片机A/D实验....................................................................................................13 第六章 参考资料.......................................................................................................................................14

第一章 系统概述

1.1 功能概述

Y51-07型51单片机实验板的组成框图如图1所示。核心是飞利浦公司的TQFP44封装形式的51兼容芯片P89V51RD2,该芯片具有64K字节的Flash 存储器,支持并行和串行在系统编程(ISP),支持SoftICE调试,具有1KB 的RAM,具有双DPTR指针。依据该芯片自身这样强大的功能,Y51-07型实验板显得小巧

却不失丰富、灵活,使您在学习单片机更加容易上手,能使您提高设计效率,把时间用到刀刃上。

1.2 仿真开发系统

由于单片机的结构特点,它本身缺乏自行开发和编程的能力,必须借助于开发工具进行开发。因此,单片机的应用必须首先具备开发条件。

我们知道一个单片机应用系统能正常工作必须具备以下几个条件:1、电源;2、时钟源;3、可靠的复位信号;4、程序;5、扩展的地址线和数据线(总线)正确无误。前三个条件都容易满足,但对于后两个条件,如果没有仿真开发系统进行仿真调试,很难完成一个产品开发。 仿真开发系统的主要作用是:

(1) 对应用系统的硬件电路进行诊断与检查; (2) 软件程序的输入与编辑;

(3) 程序的运行、调试,具有单步运行、设端点运行、状态查询,具有汇编、反汇编等功能; (4) 能将调试好的程序固化到程序存储器芯片中。

仿真开发系统的工作原理是:

根据单片机应用系统所需的运行环境资源由仿真开发系统来解决。即:仿真开发系统在调试过程中替代应用系统中的CPU(单片机芯片)和程序,应用系统的CPU(单片机芯片)控制信号和执行程序均由仿真开发系统来提供。应用系统的软件由仿真开发系统自身提供的软件环境(集成开发

调试环境)进行调试。

仿真开发系统的工作过程是:

参见下面的框图,仿真开发系统提供一个仿真头,该仿真头是用来替换应用系统中CPU(单片机芯片)而设计的。使用时将应用系统中的CPU(单片机

芯片)取下,并换上仿真头。这样应用系统的所有控

制信号全部由仿真开发系统来控制。图中的通讯线是连接计算机(装有集成开发调试环境)和仿真开发系统装置的通道。设计者在计算机上编程,然后由仿真

开发系统去控制、调试设计者的应用系统,仿真实际的运行过程。调试通过后,将编好的程序固化到应用系统的程序存储器中,同时配上CPU(单片机芯片),加电后应用系统就可以独立正常运行。

第二章 接口及资源介绍

众多的接口和插座,方便的连线为您带来清晰的思路。各个接口的说明如下:

序号

设计号

封装 IDC10

作用

P0口、WR和RD信号 同上 同上

引脚定义

1(P0.0)2(P0.1)….8(P0.7)9(WR)10(RD) 同上 同上

1(HZ)2(V1)3(V2) 1(+5V)2(GND) 芯(+5V)壳(GND) 1(RXD)2(GND)3(TXD) 2(PCRXD)3(PCTXD)5(GND) 1(<5V)

1(P2.0)2(P2.1)….8(P2.7) 1(P1.0)2(P1.1)….8(P1.7) 1(P3.5)2(P3.4)3(P3.3)4(P3.2) ABCDEFGDP,W1234 1(ADDR)

1(D0)2(D1)….8(D7)

1(SA0)2(SA1)….8(SA7) 1(SB0)2(SB1)….8(SB7) 1(ADDR)

1(A0)2(A1)….8(A7) 1(PA0)2(PA1)….8(PA7) 1(PB0)2(PB1)….8(PB7) 1(PC0)2(PC1)….8(PC7) 1(ADDR) 1(INT0)

1(IN0)2(IN1)….8(IN7)

HDR2X5

信号源 输出电源(5V) 输入电源(5V) 单片机UART输出 单片机程序下载串行口 AD7816芯片输入 P2口 P1口

P3口(只用P3.2~P3.5) 4位数码管显示数据输入 芯片的地址输入 芯片的逻辑门 芯片的数据输出 芯片的串行数据输入 芯片的并行数据输出1 芯片的并行数据输出2 芯片的地址输入 锁存地址A0~A7 芯片的PA口 芯片的PB口 芯片的PC口 芯片的地址输入 芯片的EOC输出 芯片的逻辑门 芯片的信号输入

蜂鸣器跳线

第三章 仿真使用方法

Y51-07型51单片机实验板提供了两种主流方法进行仿真、调试。

3.1 方法1:KEIL uVision环境下利用SoftICE仿真

可以单步调试,进行数据观察。

具体见文档“P89V51RD2新型单片机

SoftICE模式调试指南.pdf”

3.2 方法2:任一开发平台生成hex目标代码+Flash Magic下载

通过Flash Magic工具下载,采用ISP方式进行,能独立全速运行所编程序。如图所示:

具体见文档“P89V51系列单片机ISP下载简明操作步骤.pdf”

第四章 集成软件开发调试环境

第五章 实验部分

实验一 8051系列单片机定时/计数器应用实验

一、实验目的

本实验学习定时/计数器的编程方法,掌握如何用查询方式判断定时时间到。

8051系列单片机有2个定时/计数器,用TMOD和TCON寄存器设置命令;用TH0、TH1、TL0、TL1寄存器装载定时时间常数。可以对内部脉冲计时,对外部脉冲。 通过实验理解8051系列单片机定时/计数器的工作原理

掌握8051系列单片机内部定时/计数器的工作方式选择、初始化编程方法; 学习时间常数的计算方法; 熟悉P1口的连接方法

熟悉单片机汇编语言中伪操作指令的使用 熟悉开发系统的应用。 二、实验预备知识

MCS-51系列单片机内部定时/计数器的工作原理和工作方式。 74LS244芯片。

初步了解汇编语言的指令。 三、实验内容

利用定时器T0或T1的工作方式1,以查询方式使定时器产生10Hz的等宽正方波,并在P1.0端输出。 四、实验接线及步骤

五、实验报告及要求

总结定时/计数器的工作方式、时间常数的计算和编程方法。 写出所用源程序,并画出流程框图。 六、参考程序 查询方式

ORG 0000H AJMP START ORG 0030H

START:MOV TMOD,#XXH ;T0方式1定时 MOV TL0,#XXH ;赋初值 MOV TH0,#XXH

SETB TR0 ;启动T0 DLY: JBC TF0,REP ;查询计数溢出 AJMP DLY

REP: MOV TL0,#XXH ;重新赋初值 MOV TH0,#XXH CPL P1.0 ;把P1.0引脚的电平取反 AJMP DLY HERE: AJMP HERE END

实验二 8051系列单片机P1口编程实验

一、实验目的

巩固51系列单片机的I/O接口原理和结构特点。

MCS-51系列单片机有四个双向的8位I/O口P1~P3。P0是三态双向口,负载能力为8个LSTTL电路,P1,P2,P3口为准双向口,负载能力是4个LSTTL电路

MCS-51系列单片机指令系统中与接口达交道的指令可分为两类:一般的输入/输出指令,如:MOV A, Pi;“读-修改-写”指令,如:ANL Pi, A。 掌握51系列单片机P1口的使用方法,

掌握输入和输出指令,特别是“读-修改-写”指令, 熟练编程和应用延时程序,

掌握在开发系统上进行设计、调试和运行程序的基本方法。 二、实验预备知识

MCS-51系列单片机P1口的工作原理和编程使用方法。 输入和输出指令。 三、实验内容

设计出让5个LED按照某一规律进行闪烁。而且接入一个开关,当开关等于高电平时显示一种闪烁规律,当开关处于低电平时显示另一种规律 四、实验接线及步骤

五、实验报告及要求

总结P1的编程使用方法。

总结延时计算方法。

就自己设计的闪烁规律,画出流程框图,写出所用源程序。 六、参考程序 延时程序见课本125页。

实验三 8051系列单片机中断实验

一、实验目的

中断系统是为使处理机对外界异步事件具有处理能力而设置的。8051系列有五个中断源:两个外部中断、两个定时器溢出中断和一个串行口中断。本实验在实验一和二的基础上,进一步理解8051系列单片机中断处理的工作原理。本实验有两个内容:

通过外部中断的编程方法,理解中断源、中断处理过程等原理,两个外部中断的中断向量分别是0003H和0013H。

学习定时/计数器的中断编程方法,掌握如何用中断方式判断定时时间到。8051系列单片机有2个定时/计数器,定时/计数时间到产生定时/计数器溢出中断,中断向量分别是000BH和001BH。 二、实验预备知识

MCS-51系列单片机中断系统的工作原理和编程方法。 三、实验内容 在实验一的基础上,利用定时器T0或T1的工作方式1,以中断方式使定时器产生10Hz的等宽正方波,并在P1.0端输出。

在实验二的基础上实现外部中断。当有中断信号时显示一种规律,当没有中断信号时显示令一种规律。 四、实验接线及步骤

五、实验报告及要求

总结中断服务程序的编程方法。

在实验内容一的程序中TF0标志的作用是什么? 写出所用源程序,画出流程框图。

中断方式定时/计数器的程序实现中TF0标志的作用是什么? 六、参考程序 参见实验一和二的程序。下面是中断方式定时/计数器的参考程序: ORG 0000H AJMP MAIN ORG 000BH

AJMP T0INT ORG 0030H

MAIN: MOV SP,#60H MOV TMOD,#01H MOV TL0,#XXH ;T0设初值 MOV TH0,#XXH SETB TR0 SETB ET0 SETB EA HERE: SJMP HERE T0INT: MOV TL0,#XXH MOV TH0,#XXH CPL P1.0 RETI END

;T0方式1定时

;启动T0

;允许T0中断 ;CPU总中断

;把P1.0引脚的电平取反

实验四 MCS-51系列单片机扩展实验1

一、实验目的

熟悉MCS-51系列单片机的扩展。本实验通过扩展数据存储器和I/O接口,掌握单片机应用系统扩展时的编程方法。

学习对单片机数据存储器扩展和I/O口扩展的硬件分析; 掌握访问片外RAM的编程方法; 能根据输入值进行有关编程计算。 二、实验预备知识

MCS-51系列单片机扩展的工作原理和编程方法。 芯片74LS273。 数码管的工作原理。 三、实验内容

如下图:根据输入值X的大小进行计算,公式是:第一组采用Y=5X2+8X+7;第二组采用Y=6X2+3X+6。并且把计算结果输出,通过I/O口点亮LED灯或者数码管(以计算出的个位来显示)。 四、实验接线及步骤

分析:

输入值为四位二进制数字组成,从P1口输入时大小等于多少?; 74LS273芯片相当于外部数据存储器,本图上其地址是: 在这里,74LS32芯片的作用是什么? 五、实验报告及要求

对硬件电路的分析,回答上述分析题。

总结MCS-51系列单片机扩展数据存储器和I/O接口的原理和访问方法,画出时序图。 画出流程框图,写出源程序。 六、参考程序 乘法运算:

MOV A, #5 MOV B, #3 MUL AB ;A*B 加法运算:

MOV A, #5 ADD A, #8 ;5+8 写数据到RAM:

MOV A, #39 MOV DPTR, #XXXXH ;首地址 MOVX @DPTR, A

实验五 MCS-51系列单片机扩展实验2

一、实验目的

熟悉MCS-51系列单片机的扩展。本实验通过扩展芯片8255A,掌握单片机应用系统扩展时的编程方法。掌握可编程I/O接口芯片8255的接口原理使用,熟悉对8255A初始化编程和输入,输出软件的设计方法。 二、实验预备知识

MCS-51系列单片机扩展8255A芯片的工作原理和编程方法。 三、实验内容

用8255A的A.B.C口每个口线输出高低电平的变化,并使LED闪烁。

四、实验接线及步骤

五、实验报告及要求

分析8255芯片的工作原理、与单片机的接口和编程方法。 写出源程序,画出流程框图。

实验六 8051系列单片机显示接口实验I

一、实验目的

8051系列单片机与显示器的接口电路和编程方法。 掌握数码管显示原理及其一般显示电路的结构;

学习8279可编程键盘扫描显示控制器与8051系列单片机的接线方法,了解8279在译码扫描方式和编码扫描方式时的编程方法,以及8051用查询方式和中断方式对8279进行控制的编程方法; 掌握显示程序的设计方法; 学习查表程序的编写方法。 二、实验预备知识

MCS-51系列单片机扩展8279芯片的工作原理和编程方法。 芯片74LS138。 芯片DS75451或者75452。 数码管的工作原理。 三、实验内容

分析接口电路,确定8279命令口地址和数据口地址。向8279显示缓冲区写入显示字符,采用“内部译码方式8位8段左端送入”显示方式,本程序由左到右显示“0123”或者“CAU.”字符。 四、实验接线及步骤

五、实验报告及要求

分析本实验所用的接口电路,写出各个芯片的作用。

总结8279可编程键盘扫描显示控制器编程方法,区别内部译码方式和外部译码方式,8279初始化方法,8279写显示缓冲区编程方法。 写出源程序,画出流程框图。 六、参考程序

ORG 0000H SJMP START ORG 0030H

START: MOV SP, #60H

MOV DPTR, #0XXXXH ;8279命令口地址 MOV A, #0D1H ;清显示命令 MOVX @DPTR, A

WAIT: MOVX A, @DPTR ;读状态字

JB ACC.7, WAIT ;清除等待(此句可以删除,视具体情况) MOV A, #34H ;时钟分频,由ALE时钟决定 MOVX @DPTR, A MOV A, #xxH ;显示器工作方式 MOVX @DPTR, A HERE: ACALL DISP ;调显示子程序 SJMP HERE

DISP: MOV DPTR, #0XXXXH ; 8279命令口地址 MOV A, #90H ;显示缓冲区地址是否自动加1 MOVX @DPTR, A MOV R1, #4 ;4位循环显示或者8位显示 MOV R2, #0 ;记录哪一位数据 TT: MOV DPTR, #TAB0123或者TABCAU MOV A, R2

MOVC A, #A+DPTR ;从表格中取出显示字符 MOV DPTR, #0XXXXH ; 8279数据口地址

MOVX @DPTR, A ;显示 INC R2

DJNZ R1, TT RET

TAB0123: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,67H;0123456789 TABCAU: DB 39H,77H,3EH,80H,80H,80H,80H,80H,80H,80H;CAU. . . . . . . END

实验七 8051系列单片机显示接口实验II

一、实验目的

8051系列单片机与显示器的接口电路和编程方法。 掌握数码管显示原理及其一般显示电路的结构;

学习8255A可编程并行I/O口扩展芯片与8051系列单片机的接线方法,了解8255A以扫描方式显示LED数码管的编程方法,了解8255A芯片端口的输入输出操作; 掌握显示程序的设计方法; 学习查表程序的编写方法。 二、实验预备知识

MCS-51系列单片机扩展8255A芯片的工作原理和编程方法。 芯片74LS138。 四位数码管LG5641AH的工作原理。 三、实验内容

分析接口电路,确定8255A控制口地址和ABC端口地址。编程实现8031芯片的P1口进行输入,然后根据输入值显示到8255A芯片的AB口的四位数码管。B口为段选线,A口为位选线。 四、实验接线及步骤 五、实验报告及要求

分析本实验所用的接口电路,写出各个芯片的作用。

总结8255A可编程并行I/O口扩展芯片连接四位数码管动态扫描显示的编程方法。 写出源程序,画出流程框图。

实验八 8051系列单片机A/D实验

一、实验目的

8051系列单片机与A/D转换芯片的接口电路和编程方法。 掌握A/D转换原理;

学习ADC0809转换芯片与8051系列单片机的接线方法,8051用查询方式和中断方式对0809进行控制的编程方法;

掌握A/D转换程序的设计方法。 二、实验预备知识

MCS-51系列单片机扩展A/D转换芯片的工作原理和编程方法。 芯片ADC0809。 芯片74LS02。 电位器。 三、实验内容

给定一个可调的输入电平,采用自己编制的程序进行A/D转换,并检查读数是否正确。 四、实验接线及步骤

其他连线:

K1开关跳线置于ON

8MHz与Reset相连,T与GND相连 五、实验报告及要求

总结0809转换芯片的工作原理和编程方法。 写出源程序,画出流程框图。 六、参考程序(查询方式) ORG 0000H SJMP START ORG 0030H

START: MOV SP, #60H MOV DPTR, #0XXXXH ;参考电路图, 且指向输入通道IN0 MOV R1, #30H ;置数据区首址 MOV R7, #08H ;置通道数,这里是8个 READ: MOVX @DPTR, A ;启动A/D WAIT: JB P3.2, WAIT ;查询转换完否(INT0引脚)

MOVX A, @DPTR ;读转换结果 MOVX @R1, A ;存放数据 INC R1 ;指向下一个存储单元 INC DPTR ;指向下一个通道 DJNZ R7, READ ;循环 .。。。 END

第六章 参考资料

《单片机原理及接口技术》实验指导书

15

《单片机原理及接口技术》实验指导书

16

本文来源:https://www.bwwdw.com/article/bvuj.html

Top