微控制器技术实验报告

  • 格式:docx
  • 大小:995.14 KB
  • 文档页数:25

下载文档原格式

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

《微控制器技术》

实验报告

指导老师:

专业:

班级:

姓名:

学号:

“微控制器技术”实验任务说明

实验目的与要求:

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

2、熟练使用SST89C554RC单片机核心板及I/O扩展实验系统;

3、熟练掌握在Keil C51与Proteus仿真软件虚拟联机环境下,基于51单片机控制器数字接口电路的硬件、软件设计与功能调试;

4、完成MCS51单片机指令系统软件编程设计和硬件接口功能设计题;

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

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

提高部分:(任选一题)

题目一:LED交通灯控制(使用8255接口芯片)

要求:使用汇编语言编程,功能为:通过开关实现LED灯工作方式即时控制,完成LED交通灯的开关控

制显示功能和LED交通灯自动循环显示功能。

题目二:LED灯控制(使用8255接口芯片)

要求:使用汇编语言编程,功能为:通过KK1实现LED灯工作方式即时控制,完成LED开关控制显示和LED灯左循环、右循环、间

隔闪烁功能。

题目三:键盘扫描与数码管显示设计(使用8255接口芯片)要求:阅读、验证C语言参考程序功能。使用汇编语言完成编程与功能调试(P69)。

1、实验目的

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

2、实验内容:

P1口是8位准双向口,每一位均可独立定义为输入输出。编

写实验程序,将P1口的低4位定义为输出,高4位定义为输

入,数字量从P1口的高4位输入,从P1口的低4位输出控

制发光二极管的亮灭。

3、实验步骤

1)按图所示,连接实验电路图,图中圆圈表示需要通过排线连接;2)编写实验程序,编译连接无误后进入调试状态;

3)连接实验程序,观察实验现象,验证程序正确性;

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

5)自行设计实验,验证你单片机其它IO口的使用;

4、程序流程图:

5、实验程序清单:

结果分析:

基本数字输入输出实验器重点在于对单片机的准双向口的理解。即在用作输入时,锁存器必须先写入“1”。而作为输出时则可直接使用。

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

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

提高部分:(任选一题完成)

题目一:定时器控制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亮……一直循环下去。

题目二:计数器实验

要求:单片机内部定时计数器,按计数器模式和方式1工作,对P3.4(T0)引脚进行计数。使用T1作定时器,50ms中断一次,看T0内每0.50来了多少脉冲,将其数值按二进制在LED灯上显示出来,5秒后再次测试。

题目三:急救车与交通灯(外部中断实验)

要求:完成交通灯基本功能基础上,当有急救车到达时,两向交通信号为全红,以便让急救车通过。假定急救车通过路口时

间为10秒,急救车通过后,交通灯恢复中断前状态。

本实验题以按键为中断申请,表示有急救车通过。

1、实验目的

1)了解MCS_51电片剂定/计数器的工作原理与工作方式;

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

程;

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

2、实验内容

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

方波周期。

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

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

输出时钟,测量时钟周期。

3、实验步骤

(1)编写实验程序,编译、链接后联机调试;

(2)运行实验程序,使用示波器观察P1.0与P1.1引脚

上的波形并记录周期;

(3)改变计数初值,观察实验现象,验证程序功能。

要求1:

要求2:

ORG 0000H

SJMP MAIN

ORG 001BH ;定时器1终端程序入口

SIMP DSHI1

MAIN: MOV TMOD,#60H ;设定工作方式,装入计数初值MOV TH1,#0F6H

MOV TL1,#0F6H

SETB EA

SETB TR1

SJMP $

DSHI1: PL P1.0 ;中断服务程序,实现P1.0取反RET1

END

6、接线图及仿真结果

1、要求1实验结果如下

要求2

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

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

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

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

1、实验目的

1)学习理解模/数信号转换的基本原理;

2)掌握模/数转换芯片ADC0809的使用方法;

3)学习数/模转换的基本原理;

4)掌握DAC0832的使用方法;

2、实验内容

1)编写实验程序,将ADC单元中提供的OV—5V信号源作为ADC0809的模拟输入量,进行A/D转换,转换结果通过变

量进行显示。

2)设计实验电路图实验线路并编写程序,实现D/A转换,要求产生锯齿波、脉冲波,并用示波器观察电压波形。3、实验步骤

A/D转换

1)按图连接实验电路,ADC的时钟线需要与实验平台中的系统