单片机实验报告

时间:2024.4.27

单片机实验报告

Hefei University

单片机原理及接口技术报告

课题名称: 单片机原理及接口技术 姓 名: ******

学 号: ********* 指导教师: 储忠老师 完成时间: 2015.5.31

单片机实验报告

目 录

实验一 构建单片机最小系统和实验环境熟悉 ....................... - 1 - 实验二 跑马灯实验及74HC138译码器 .................................. - 5 - 实验三 8255控制交通灯实验 ................................................. - 8 - 实验四 8253方波实验 ........................................................... - 13 - 附实物图 ...................................................................................... - 13 -

实验一 构建单片机最小系统和实验环境熟悉

一、预习要求

1.构建单片机最小系统,熟悉51单片机的结构及编程方法

2.按照程序流程图编写出程序

二、实验目的

1.熟悉星单片机最小系统的组成和工作原理,熟悉Keil C51集成环境软件的使用方法。

2.熟悉MCS51汇编指令,能自己编写简单的程序,控制硬件。

三、实验内容

单片机最小系统实验:

1、熟悉单片机最小系统的组成和工作原理,熟悉Keil C51集成环境软件的安装和使用方法。

2、作出单片机最小系统的组成原理图,分析其各构成单元的工作原理。 存储单元数据传输实验

1、熟悉MCS51汇编指令。

2、进行存储单元数据传输实验,编写程序。

3、运行程序,验证译码的正确性。

四、实验原理

1、作出单片机最小系统的组成原理图

单片机实验报告

2、分析单片机最小系统的工作原理

1. 运算器

- 1 -

运算器包括算术逻辑运算单元ALU、累加器ACC、寄存器B、暂存器TMP、程序状态字寄存器PSW、十进制调整电路等。它能实现数据的算术逻辑运算、位变量处理和数据传送操作。

(1) 算术逻辑单元ALU

ALU在控制器根据指令发出的内部信号控制下,对8位二进制数据进行加、减、乘、除运算和逻辑与、或、非、异或、清零等运算。它具有很强的判跳、转移、丰富的数据传送、提供存放中间结果以及常用数据寄存器的功能。MCS-51中位处理具有位处理功能,特别适用于实时逻辑控制。

(2)累加器ACC

累加器ACC是8位寄存器,是最常用的专用寄存器,它既可存放操作数,又可存放运算的中间结果。MCS—51系列单片机中许多指令的操作数来自累加器ACC。累加器非常繁忙,在与外部存储器或I/O接口进行数据传送时,都要经过A来完成。

(3)寄存器B

寄存器B是8位寄存器,主要用于乘、除运算。乘法运算时,B中存放乘数,乘法操作高8位结果存于B寄存器中。除法运算时,B中存放除数,除法操作后,余数存于寄存器B中。寄存器B也可作为一般的寄存器用。

(4)程序状态字PSW

程序状态字是8位寄存器,用于指示程序运行状态信息。其中有些位是根据程序执行结果由硬件自动设置的,而有些位可由用户通过指令方法设定。PSW中各标志位名称及定义如

单片机实验报告

CY(PSW.7):进(借)位标志位,也是位处理器的位累加器C。在加减运算中,若操作结果的最高位有进位或有借位时,CY由硬件自动置1,否则清“0”。在位操作中,CY作为位累加器C使用,参于进行位传送、位与、位或等位操作。另外某些控制转移类指令也会影响CY位状态。

AC(PSW.6):辅助进(借)位标志位。在加减运算中,当操作结果的低四位向高四位进位或借位时此标志位由硬件自动置1,否则清“0”。

- 2 -

F0(PSW.5):用户标志位,由用户通过软件设定,决定程序的执行方式。 RS1(PSW.4),RS0(PSW.3):寄存器组选择位。用于设定当前通用寄存器组的组,其对应关系如下:

单片机实验报告

OV(PSW.2):溢出标志位。它反映运算结果是否溢出,溢出时OV=1;否则OV=0。OV可作为条件转移指令中的条件。

PSW.1:未定义位。

P(PSW.1):奇偶标志位。P=1,表示ACC中1的个数为奇数;否则P=0。P也可以作为条件转移指令中的条件。

2. 控制器

控制器包括定时控制逻辑(时钟电路、复位电路),指令寄存器,指令译码器程序计数器PC,堆栈指针SP,数据指针寄存器DPTR以及信息传送控制部件等。

(1)时钟电路

MCS—51系列单片机芯片内部有一个高增益反相放大器,输入端为XTAL1,输出端为XTAL2,一般在XTAL1与XTAL2之间接石英晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,就是单片机的内部时钟电路,如图(A)所示。时钟电路产生的振荡脉冲经过二分频以后,才成为单片机的时钟信号。电容C1和C2为微调电容,可起频率稳定、微调作用,一般取值在5~30pf之间,常取30pf。晶振的频率范围是1.2MHz~12MHz ,典型值取6 MHz。XTAL1接地,XTAL2接外部震荡器,外接信号应是高电平持续时间大于20ns的方波,且脉冲频率应低于12 MHZ。如图(B)所示。

(2)复位电路

对于使用12MHZ的晶振的单片机,复位信号持续时间应超过4μs才能完成复位操作。产生复位信号的电路有上电自动复位电路和按键手动复位电路两种方 - 3 -

式。

上电自动复位是通过外部复位电路的电容充电来实现的,该电路通过电容充电在RST引脚上加了一个高电平完成复位操作。上电自动复位电路如图(a)所示。 按键手动复位电路。按键手动复位是通过按键实现人为的复位操作,按键手动复位电路如图(b)所示。

3、进行存储单元数据传输实验,观察实验结果,验证程序是否正确。 五:实验小节

单片机系统电路的基本模块有:复位电路,晶振电路,电源接口,下载接口等主要模块。在单片机最小系统的构建中,EA脚拉高是非常必要的,它可以影响单片机的正常工作。在检测单片机是否正常工作,可以通过检测晶振两端的信号的波形形状。在单片机正常工作条件下,其信号为正弦波。经过一周的时间基本完成单片机最小系统板的焊接部分和单片机的工作原理,以及对单片机外围电路的焊接,知道了硬件部分的重要性,单片机最小系统板的焊接最主要是晶振部分和下载接口的焊接,它为单片机提供了做工作的频率,同时也为单片机提供下载程序的接口,是单片机的非常重要的外围电路。

六、思考题

1、在单片机最小系统的构建中,应注意哪些因素。

答:

(1)51单片机现在多用AT89S51,不用晶振,晶体加两个电容就可以了。

(2)复位电路中的电容是虑波稳定作用,并联在一个电阻上,一端接地,一端通过开关接高电位就可以了。

(3)晶振:一般选用 11.0592M ,因为可以准确地得到 9600 波特率和 19200 波特率。

- 4 -

实验二 跑马灯实验及74HC138译码器

一、预习要求

1.熟悉51单片机的结构及编程方法

2.按照程序流程图编写出程序

二、实验目的

1.熟悉集成环境软件或熟悉Keil C51集成环境软件的使用方法。

2.熟悉MCS51汇编指令,能自己编写简单的程序,控制硬件。

三、实验内容

74HC138译码器实验:

1、设计74HC138接口电路,编写程序:使用单片机的P1.0、P1.1、P1.2控制74HC138的数据输入端,通过译码产生8选1个选通信号,轮流点亮8个LED指示灯。

2、运行程序,验证译码的正确性。

四、实验原理

参考实验原理图如下:

单片机实验报告

(译码器电路图)

- 5 -

五、实验方法及步骤

跑马灯实验步骤:

1、设计接口电路。

2、编写程序或运行参考程序。

3、实验结果:通过LED指示灯(8个指示灯轮流点亮),观察实验的输出结果是否正确。

演示程序

ORG 0000H

AJMP MAIN

ORG 0050H

MAIN:

MOV A,#8

CLR C

LOOP:

DEC A

MOV P1,A

LCALL DELAY

JZ MAIN

AJMP LOOP

DELAY: MOV R5,#20

DEL1: MOV R6,#100

DEL2: MOV R7,#248

DEL3: DJNZ R7,DEL3

DJNZ R6,DEL2

DJNZ R5,DEL1

RET

END

运行结果

- 6 -

六、实验总结

本次实验利用两种控制方式实现了流水灯功能。单片机端口主要是利用基本的数据传输指令实现了流水灯功能,其中加入了一些花样的灯光显示功能;74LS138控制流水灯实验主要是利用138的片选,根据输入不同的A、B、C选中不同的输出端口,进而驱动LED显示。进行本次实验需要知道基本的数据传输指令以及74LS138的真值表,知道这些完成本次实验还是比较简单的。

七、思考题

1、在单片机系统中,74HC138通常用来产生片选信号,请考虑一下,应如何处理?

答:取三根底地址线,接到74LS138译码器的输入端,译码产生,8个使能控制信号。

单片机实验报告

- 7 -

实验三 8255控制交通灯实验

一、预习要求

1.熟悉51单片机的结构及编程方法

2.按照要求画出流程图及程序

二、实验目的

1、 了解8255芯片的工作原理,熟悉其初始化编程方法以及输入、输出程序设计技巧。学会使用8255并行接口芯片实现各种控制功能,如本实验(控制交通灯)等。

2、 熟悉8255内部结构和与单片机的接口逻辑,熟悉8255芯片的3种工作方式以及控制字格式。

3、尝试自行编写程序,填写实验报告。

三、实验内容

1、设计8255接口电路,编写程序:使用8255的PA0..2、PA5..7控制LED指示灯,实现交通灯功能。

2、连接线路验证8255的功能,熟悉它的使用方法。

- 8 -

四、实验原理

单片机实验报告

实验电路图

五、实验程序及结果

实验程序:

CONTROL EQU 7FFFH

PORTA EQU 7FFCH

ORG 0

START:

MOV DPTR,#7FFFH

MOV A,#80H

MOVX @DPTR,A

MOV DPTR,#7FFCH

MOV A,#0FFH

MOVX @DPTR,A

LOOP:

MOV A,#21H

MOV DPTR,#7FFCH

MOVX @DPTR,A

CALL DELAYLONG

MOV A,#12H;11H

MOV DPTR,#7FFCH

MOVX @DPTR,A

CALL DELAYSHORT

MOV A,#00H;01H

MOV DPTR,#7FFCH

MOVX @DPTR,A

- 9 -

CALL DELAYSHORT

MOV A,#12H;11H MOV DPTR,#7FFCH MOVX @DPTR,A CALL DELAYSHORT

MOV A,#00H;01H MOV DPTR,#7FFCH MOVX @DPTR,A CALL DELAYSHORT

MOV A,#12H;11H MOV DPTR,#7FFCH MOVX @DPTR,A CALL DELAYSHORT

MOV A,#00H;01H MOV DPTR,#7FFCH MOVX @DPTR,A CALL DELAYSHORT

MOV A,#0CH

MOV DPTR,#7FFCH MOVX @DPTR,A CALL DELAYLONG

MOV A,#12H;0AH MOV DPTR,#7FFCH MOVX @DPTR,A CALL DELAYSHORT

MOV A,#00H;08H MOV DPTR,#7FFCH MOVX @DPTR,A CALL DELAYSHORT

MOV A,#12H;0AH MOV DPTR,#7FFCH MOVX @DPTR,A CALL DELAYSHORT

MOV A,#00H;08H MOV DPTR,#7FFCH MOVX @DPTR,A

- 10 -

CALL DELAYSHORT

MOV A,#12H;0AH

MOV DPTR,#7FFCH

MOVX @DPTR,A

CALL DELAYSHORT

MOV A,#00H;08H

MOV DPTR,#7FFCH

MOVX @DPTR,A

CALL DELAYSHORT

AJMP LOOP

DELAYLONG:

MOV R7,#40

L1:MOV R6,#200

L2:MOV R5,#250

DJNZ R5,$

DJNZ R6,L2

DJNZ R7,L1

RET

DELAYSHORT:MOV R4,#200

L3:MOV R3,250

DJNZ R3,$

DJNZ R4,L3

RET

END

实验结果:

单片机实验报告

- 11 -

六、实验总结

通过本次交通灯实验,学会了使用8255芯片的初始化和编程方法。同时认识到通过8255实现了I/O口的扩展。本实验使用的是8255的方式0。利用8255完成交通灯的四中状态切换。第一种状态是东西方向是绿灯,南北方向是红灯。第二种状态是东西方向是黄灯并且闪烁,南北方向是红灯。第三种状态是东西方向是红灯,南北方向是绿灯。第四种状态是东西方向是红灯,南北方向是黄灯,最后变到第一种状态。在实现具体的硬件时,采用8255控制十二个LED,三个一组,分成四组来模拟实际交通灯。其中的对面两组状态变化是相同一致的。在完成仿真后在硬件电路中调试时,发现了一个问题。显示的状态不对。经过检查电路后发现电路的连线错了。重新调试后,发现状态对了,交通灯正常了。通过问题的解决,我对程序和电路有了更深的认识和理解。

- 12 -

实验四 8253方波实验

一、预习要求

1.熟悉51单片机的结构及编程方法

2.按照要求画出流程图及程序

二、实验目的

了解8253的内部结构、工作原理;了解8253与单片机的接口逻辑;熟悉8253的控制寄存器和初始化编程方法,熟悉8253的6种工作模式。

三、实验内容

1、设计接口电路,编写程序:使用8253的计数器0和计数器2实现对输入时钟频率的两级分频,得到一个周期为1秒的方波,用此方波控制蜂鸣器,发出报警信号,也可以将输入脚接到逻辑笔上来检验程序是否正确。

2、连接线路,验证8253的功能,熟悉它的使用方法。

四、实验原理

参考电路原理图如下:

单片机实验报告

五、实验程序及结果

实验程序:

#include<reg51.h>

#include<absacc.h>

#define uchar unsigned char

#define uint unsigned int

#define CH0 XBYTE[0xfcff] //通道0地址

#define CH1 XBYTE[0xfdff]//通道1地址

#define CH2 XBYTE[0xfeff] //通道2地址

#define CON XBYTE[0xffff] //控制口地址

- 13 -

sbit P1_0=P1^0;

void T0_Init()

{

TMOD=0x02;//选择通道0,方式2

TH0=(65536-50)/256;

TL0=(65536-50)%256;

ET0=1; //通道0中断使能

TR0=1; //启动定时器0

EA=1; //开总中断

}

void main(void)

{

T0_Init();//定时器中断初始化

CON=0X16;//写通道0控制字,只读低字节,方式3 CH0=0x64;

CON=0X96;//写通道2控制字,只读低字节,方式3 CH2=0xc8;

while(1);

}

void T0_20k()interrupt 1

{

P1_0=~P1_0;

}

实验结果:

两个红灯交替闪烁,周期为1秒。

单片机实验报告

- 14 -

六、实验总结

利用8253实现方波发生器,由于没有用到蜂鸣器,故利用二极管的通断来

反应方波发生器的成功实现,但在用二极管实现时,需注意频率的问题,如果频率过大,会导致效果不明显甚至看不到。本次实验能成功实现二极管的关断与导通,并且效果较明显。

- 15 -

附实物图:

单片机实验报告

- 16 -

单片机实验报告

- 17 -

单片机实验报告

单片机实验报告

- 18 -

更多相关推荐:
单片机实验报告

单片机实验报告学生姓名学号专业指导教师学院信息与电气工程学院20xx年11月单片机实验报告实验一MCS51指令系统实验数据排序1实验目的熟悉MCS51指令系统掌握程序设计方法加深对内部存储器读写的认识熟悉仿真开...

单片机实验报告

通信与信息工程学院20xx20xx学年第二学期实验报告课程名称单片机原理及应用专业班级学号学生姓名指导教师日期20xx年4月15日1实验一单片机汇编语言程序设计一实验目的1学习MedWin或Keilc51仿真软...

单片机实验报告

题目单片机组成原理实验报告学院计算机科学与工程学院专业信息安全姓名学号20xx年12月8日实验一输入输出接口编程一实验目的1掌握Keil软件的基本使用12掌握单片机汇编语言基本编程二实验内容1学习用Keil软件...

51单片机课程设计实验报告

51单片机课程设计报告学院:专业班级:姓名:指导教师:设计时间:51单片机课程设计一、设计任务与要求1.任务:制作并调试51单片机学习板2.要求:(1)了解并能识别学习板上的各种元器件,会读元器件标示;(2)会…

单片机实验报告

海南大学届单片机实验报告4份论文题目学生姓名学号所在院系专业班级授课教师完成时间蜂鸣器实验实验目的1熟悉实验板中蜂鸣器工作原理掌握汇编编程控制蜂鸣器播放音乐2掌握单片机编程控制蜂鸣器发出不同频率声音的方法3了解...

单片机实验报告

单片机课程设计报告实验五系别物理与电子工程学院年级专业班级学号学生姓名指导教师设计时间常熟理工学院课程设计报告目录1题目22实验要求221实验目的222实验内容23总体设计231硬件设计232软件设计44运行结...

51单片机实验报告

08424020xx单片微型计算机原理学院班级学号姓名指导教师成绩120xx年6月08424020xx硬件实验实验一定时器中断实验实验内容fosc110592MHzT0方式2产生定时中断实现秒表功能数码管后两位...

单片机实验报告

单片机实验报告实验二并行口输入输出实验循环彩灯控制任务一1实现的功能P1口接8个开关P0口接8个灯每个开关对应一个灯实时读取开关状态开关闭合时灯亮开关断开时灯灭2硬件原理图3流程图4程序ORG0000H程序入口...

单片机实验报告

一实验目的1熟练单片机的结构组成及原理2软硬兼施采用硬件电路的焊接搭建和软件的设计调试下载亲自动手对硬件系统加深了解的同时软件编程也能得心应手3了解如何从硬件和软件上分析问题排除故障二实验内容MCS51MCS5...

单片机最小系统实验报告

单片机原理及应用技术设计课题系别专业学号姓名指导老师课程设计报告20xx年6月单片机最小系统流水灯的设计一单片机简介由于单片机技术在各个领域正得到越来越广泛的应用世界上许多记成电路生产家相继推出各种类型的单片机...

单片机实验报告

单片机原理及应用一实验目的实验报告实验要求二实验电路及汇编源程序程序要加注释三仿真结果或硬件调试结果分析实验一存储器读写一实验目的1掌握寄存器存储器读写等汇编指令2掌握编程软件编辑编译调试等基本操作二实验内容1...

单片机实验报告

单片机实验报告四姓名学号时间周一11-13地点计708指导老师:实验题目C51单片机片上资源开发实验一.实验目的与要求?学习单片机片上资源开发技术?研究用片上资源实现自动控制的方案二:实验环境在KeiluVis…

单片机实验报告(42篇)