单片机实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机实验报告

学院:姓名:学号:指导老师:

目录

第一章实验内容、目的及要求 (2)

一、内容 (2)

二、目的及要求 (3)

第二章实验 (3)

实验一数字量输入输出实验 (3)

实验二定时器/计数器实验 (4)

实验三A/D、D/A转换实验 (11)

实验四串行通信设计 (20)

第三章实验体会 (28)

第一章实验内容、目的及要求

一、内容

实验一数字量输入输出实验

阅读、验证C语言程序功能。使用汇编语言编程,完成实验指导书之“3.1 数字量输入输出实验”基本实验项目。

实验二定时器/计数器实验

阅读、验证C语言程序功能。使用汇编语言编程,完成实验指导书之“3.3 定时/计数器实验”基本实验项目。

提高部分:定时器控制LED灯

由单片机内部定时器1,按方式1工作,即作为16位定时器使用每0.05秒钟T1溢出中断一次。P1口的P1.0-P1.7分别接八个发光二极管。编写程序模拟时序控制装置。开机后第一秒钟L1,L3亮,第二秒钟L2,L4亮,第三秒钟L5,L7亮,第四秒钟L6,L8亮,第五秒钟L1,L3,L5,L7亮,第六秒钟L2,L4,L6,L8亮,第七秒钟八个LED灯全亮,第八秒钟全灭,以后又从头开始,L1,L3亮,然后L2,L4亮……一直循环下去。

实验三A/D、D/A转换实验

阅读、验证C语言程序功能。使用汇编语言编程,完成实验指导书之“4.3 A/D转换实验”项目(P64)和“4.4 D/A转换实验”项目。

提高部分:(要求:Proteus环境下完成)

小键盘给定(并显示工作状态),选择信号源输出波形类型(D/A 转换方式),经过A/D采样后,将采样数据用LED灯,显示当前模拟信号值大小及变化状态。

实验四串行通讯实验

阅读、调试C语言程序功能。使用汇编语言编程,完成实验指导书之“3.7 串口通讯实验”项目。(要求:实验仪器上完成)提高部分:(要求:Proteus环境下完成)

利用单片机实验系统,实现与PC机通讯。功能要求:将从实验系统键盘上键入的数字,字母显示到PC机显示器上,将PC机键盘输入的字符(0-F)显示到单片机实验系统的数码管上。

二、目的及要求

1、学习Keil C51集成开发工具的操作及调试程序的方法,包括:仿真调试与脱机运行间的切换方法;

2、熟悉TD-51单片机系统板及实验系统的结构及使用;

3、进行MCS51单片机指令系统软件编程设计与硬件接口功能设计;

4、学习并掌握Keil C51与Proteus仿真软件联机进行单片机接口电路的设计与编程调试;完成指定MCS51单片机综合设计题。

第二章实验

实验一数字量输入输出实验

一、实验目的

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

二、实验内容

P1 口是8 位准双向口,每一位均可独立定义为输入输出。编写实验程序,将P1 口的低4位定义为输出,高4 位定义为输入,数字量从P1 口的高4 位输入,从P1 口的低4 位输出控制发光二极管的亮灭。

三、实验步骤

实验参考程序及实验步骤如下。

实验参考程序:(DigitIO.C)

#include "SST89x5x4.H"

void main(void)

{

unsigned char data i; //data 为存储器类型说明

while(1)

{

P1 = P1 | 0xF0; //声明高4 位为输入

i = P1;

P1 = (i>>4)&0x0F;

}

}

汇编:

ORL P1(0x90),#B(0xF0)

MOV 0x08,P1(0x90)

MOV A,0x08

SWAP A

ANL A,#0x0F

MOV R7,A

MOV A,R7

ANL A,#0x0F

MOV P1(0x90),A

SJMP main(C:0800)

实验步骤:

1. 按图3-1-1 所示,连接实验电路图,图中“圆圈”示需要通过排线连接;

2. 编写实验程序,编译链接无误后进入调试状态;

3. 运行实验程序,观察实验现象,验证程序正确性;

4. 按复位按键,结束程序运行,退出调试状态;

5. 自行设计实验,验证单片机其它IO 口的使用。

实验接线图:

实验二定时器/计数器实验

一、实验目的

1. 了解MCS-51 单片机定/计数器的工作原理与工作方式;

2. 掌握定时/计数器T0 和T1 在定时器和计数器两种方式下的编程;

3. 学习定时/计数器T2 的可编程时钟输出功能。

二、实验内容

1. 使用定时器0 与定时器1 进行定时,在P1.0 和P1.1 引脚上输出方波信号,通过示波器观察波形输出,测量并记录方波周期。

2. 将定时/计数器1 设定为计数器方式,每次计数到10 在P1.0 引脚上取反一次,观察发光二极管的状态变化。

3. 定时器2 可以作为时钟发生器使用,并在P1.0 引脚上输出占空比为50%的方波。编程定时器2,使用示波器测量输出时钟,测量时钟周期。

三、实验原理

通常,8051 单片机内部有2 个16 位定时/计数器,即定时器0(T0)和定时器1(T1)。增强型单片机SST89E554RC 内部还有一个16 位定时器T2,与其相关的特殊功能寄存器有TL2、TH2、RCAP2L、RCAP2H、T2CON 等。

定时器/计数器/特殊功能寄存器

定时器/计数器2 控制寄存器(T2CON)各位的含义简述如下:TF2:定时器溢出标志,当定时器溢出时置位,必须由软件清除。当RCLK=1 或TCLK=1时此位将不会被置位。

相关文档
最新文档