微控制器技术实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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的时钟线需要与实验平台中的系统