2015单片机实验指导书 (2)
- 格式:doc
- 大小:492.50 KB
- 文档页数:28
M C S51单片机原理及应用实验指导书淮阴师范学院物理与电子电气工程学院2015.9目录实验要求 (2)51单片机集成开发环境MedWin V2.39简介 (4)STC单片机下载软件STC-ISP的使用 (6)实验一LED流水灯 (7)实验二用一位数码管循环显示数字0~9 (10)实验三LED数码管的动态驱动 (13)实验四用单片机自动演奏乐曲 (17)实验五电子钟 (22)实验六单片机与PC机的串行通信 (26)实验七交通灯的模拟显示 (31)实验八I2C串行flash存储器的读写 (35)实验要求1、实验前预习实验内容,理解实验原理。
2、按规定时间进入实验室,登记领取实验板和连接线,按操作程序将实验板连接到PC机上,开始实验。
2、实验完毕请指导老师确认后,按操作程序拆除实验板,将连接线收拾好,与实验板一起归还指导老师,方可离开实验室。
3、按时撰写并上交实验报告。
实验报告格式为:(1)实验目的,(2)实验内容,(3)源代码及流程图,(4)结果记录及分析,(5)思考题,(6)体会及设想。
实验板原理图51单片机集成开发环境MedWin V2.39简介1. 安装从网站免费下载MedWin V2.39集成开发环境安装程序压缩包,将其释放后,按照默认路径安装到C:\PManley\MedWin文件夹。
2. 设置(1)每次启动MedWin会出现对话框,询问使用仿真器还是模拟仿真,应点击[模拟仿真]按钮。
(2)设置仿真器点击[设置]—[设置仿真器]命令,选择时钟频率为12兆赫兹。
(3)设置工作目录MedWin 集成开发环境默认的工作目录为C:\MedWin \PMedWin,建议根据需要建立自己的工作目录。
注意:不得使用长文件名或长目录名!(4)设置编译器将C语言编译器C51(文件夹)拷贝到C:\MedWin文件夹下,点击[设置]—[设置编译工具]命令,打开“设置编译工具”对话框,使用汇编语言时选择第一行,使用C语言时选择第二行,如下图所示。
实训项目一让单片机动起来1、实训目的及要求:1)掌握单片机开发板的使用方法(驱动识别,程序下载)2)掌握单片机程序开发软件KEIL的使用3)掌握单片机程序烧录软件STC-ISP下载软件的使用2、实训内容1)根据实训报告内容编写单片机程序2)调试程序并使用ISP下载软件将程序烧录到单片机芯片中3)观察实验现象并记录4)完成实训报告内容3、实训准备硬件:单片机开发板、电脑、杜邦线软件:keil uvision4 、STC-ISP4、实训过程1)流程图2)实训程序一:#include "reg52.h"sbit LED=P1^0;void main(){LED=0;while(1);}实训程序二:#include "reg52.h"#define LED P1;void main(){LED=0xaa;while(1);}3)实训步骤①打开KEIL软件编写LED控制程序。
②程序调试无误后,使用KEIL生产HEX文件。
③将生产的HEX文件烧录到单片机芯片中,并观察实验现象。
3)实验现象记录实训程序一:。
实训程序二:。
4)实训报告要求①将实训程序中的注释补充完整,了解每条语句作用。
实训项目二LED的闪烁1、实训目的及要求:1)掌握单片机控制LED点亮和熄灭的方法。
2)了解单片机延时程序的原理及设计。
3)了解单片机中常用的变量类型及其定义方法。
2、实训内容1)根据实训报告内容编写单片机程序2)调试程序并使用ISP下载软件将程序烧录到单片机芯片中3)观察实验现象并记录4)完成实训报告内容3、实训准备硬件:单片机开发板、电脑、杜邦线软件:keil uvision4 、STC-ISP4、实训过程1)流程图2)实训程序:#include "reg52.h"#define uchar unsigned char //定义uchar为定义字符型变量,范围#define uint unsigned int //定义uint为定义整型变量,范围sbit LED=P1^0;uint i;//定义整型变量ivoid main(){while(1){LED=0;for(i=0;i<20000;i++);LED=1;for(i=0;i<20000;i++);}}3)实训步骤①打开KEIL软件编写LED闪烁控制程序。
信商2015年实验指导书Proteus软件使用简介Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。
它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,是目前较好的仿真单片机及外围器件的工具。
下面以制作一个闪烁灯为例给出proteus的使用方法。
1.创建文件双击桌面上的ISIS 7 Professional图标或者单击屏幕左下方的“开始”→“程序”→“Proteus 7 Professional”进入Proteus ISIS集成环境,选择“File”→“Creat New Design”命令,选择Default模板,单击OK并进行保存命名为“Led.DSN”,如图所示。
创建文件2.绘制电路图1)将所需元器件加入到对象选择器窗口。
选择“Library”→“Pick Device/Symbol”命令,弹出“Pick Devices”页面,在“Keywords”输入AT89C51,如图所示。
Pick Devices窗口单击“OK”,元件名出现在“DEVICES”列表中,如图所示。
DEVICES窗口2)在“DEVICES”列表中选择A T89C51,在绘图区域单击鼠标左键摆放元件。
3)同理摆放其它元件,如图所示。
摆放元件4)使用左下角的旋转或反转命令,改变元件方向。
也可用鼠标右键单击元件,进行旋转或反转。
5)在左侧单击图标,列表框中显示可用的终端,单击“Power”摆放电源终端,单击“Ground”摆放接地终端,如图所示。
添加终端6)选中元件,单击鼠标左键,设置元件参数,7)布线,分别单击两个引脚,两个引脚之间会自动走线,也可以手动走线,连接走线后的电路如图所示。
连接走线3.加载目标文件在AT89C51上双击鼠标左键,弹出Edit Component 窗口,点击Program File,添加目标程序在Keil中生成的HEX文件,如图。
加载目标文件4.运行仿真点击OK,单击ISIS编辑环境下方的启动仿真按钮,运行仿真,可观察到实验运行结果,如图9-17所示。
单片机实验指导书一、实验介绍单片机是一种集成电路,能够完成各种控制和计算任务。
本实验指导书将引导您进行单片机实验,以帮助您了解单片机的基本原理和应用。
在本实验中,您将学习如何搭建实验环境、编写程序以及进行各种实验操作。
二、实验准备1. 实验设备和材料:- 单片机开发板- USB数据线- 适配器- 数字电路元件(如LED、电位器等)2. 软件准备:- 单片机开发软件(如Keil、IAR EWARM等)- 编程软件(如C语言编辑器)- USB驱动程序三、实验步骤1. 搭建实验环境:- 将USB数据线连接单片机开发板和计算机。
- 通过适配器给单片机开发板供电。
- 检查驱动程序是否正确安装。
2. 编写程序:- 打开单片机开发软件,并创建一个新的工程。
- 选择适当的单片机型号和编程语言。
- 编写程序代码,实现所需功能。
- 编译程序并下载到单片机开发板。
3. 实验操作:- 根据实验要求连接相应的电路元件。
- 调试程序,确保程序能正确运行。
- 运行实验并观察结果。
四、实验注意事项1. 请确保您具备基本的电路和编程知识。
2. 在操作实验设备和元件时,请小心谨慎,避免发生触电等事故。
3. 如果遇到问题,请及时咨询实验指导人员或相关专家。
五、实验示例以下是一个简单的实验示例,用于演示如何控制LED灯的亮度:实验电路连接:将一个LED灯连接至单片机开发板的一个GPIO口。
程序代码:#include <reg51.h>sbit LED = P1^0;void delay(unsigned int time){unsigned int i,j;for(i=0;i<time;i++)for(j=0;j<120;j++);}void main(){while(1){LED = 1; // 点亮LEDdelay(200); // 延时200msLED = 0; // 熄灭LEDdelay(200); // 延时200ms}}六、实验总结通过本次实验,我们学习了搭建实验环境、编写程序以及进行单片机实验操作的基本步骤和注意事项。
Keil C51实验项目Keil C51实验项目 (1)一、单片机的IO编程 (4)实验1 IO开关量输入实验 (4)实验2 IO输出驱动继电器(或光电隔离器)实验 (4)实验3 IO输入/输出---半导体温度传感器DS18B20实验 (5)二、单片机的中断系统 (7)实验1 外部中断----脉冲计数实验 (7)实验2 外部中断----故障报警实验 (8)三、单片机的定时器/计数器 (10)实验1 计数器实验 (10)实验2 秒时钟发生器实验 (11)四、单片机的串口特点和编程 (12)实验1 PC机串口通讯实验 (12)实验2 RS485通讯实验 (14)五、存储器 (15)实验1 RAM存储器读写实验 (15)六、PWM发生器 (16)实验1 PWM发生器(模拟)实验 (16)实验2 蜂鸣器实验 (18)七、WDG看门狗 (19)实验1 外扩WDG(MAX705)实验 (19)实验2 WDG(内部)实验 (19)八、SPI总线 (20)实验1 SPI(模拟)实验-----TLC2543 AD转换实验 (20)实验2 SPI(模拟)实验-----TLV5616 DA转换实验 (21)九、I2C总线 (23)实验1 I2C(模拟)实验-----IC卡(AT24C01)读写实验 (23)十、综合实验 (24)实验1 HD7279LED数码管显示实验 (24)实验2 HD7279键盘实验 (25)实验3 电机转速实验 (26)十一、步进电机实验 (27)实验1 步进电机正反转实验 (27)十二、TFT液晶显示实验 (28)实验1 TFT液晶显示彩色条纹实验 (28)十三、16X16LED点阵显示汉字实验 (29)实验1 16X16LED点阵显示汉字实验 (29)一、单片机的IO编程实验1 IO开关量输入实验目的:学习单片机读取IO引脚状态的的方法。
内容:编程读取IO引脚状态。
设备:EL-EMCU-I试验箱、EXP-89S51/52/53 CPU板。
单片机实验指导书近年来,单片机技术的发展十分迅速。
越来越多的工程师和科技爱好者开始接触和学习单片机技术,这促使单片机实验指导书的需求越来越大。
然而,这方面的书籍并不是很多,而且很多都只是简略介绍了一些基础的知识,很难满足读者的需求。
因此,我们有必要撰写一本全面、详实的单片机实验指导书,以供广大读者参考。
一、实验前的准备工作在进行单片机实验之前,需要进行一些准备工作。
首先,应确保实验所需要的单片机、电路板、电路图和元件都准备齐全;其次,应找到合适的实验环境,比如一间安静、干净、通风的实验室;最后,需要特别注意使用电器设备时的安全问题,确保自己和他人的安全。
二、实验的流程和步骤在开始实验之前,需要认真研读实验指导书中的介绍和分析,了解实验的目的、原理和步骤。
然后,按照指导书中的步骤依次进行实验。
实验完成后,应按照要求记录实验数据,并进行分析和归纳总结。
如果有问题需要解决,可以查阅相关的资料和文献,或向老师和同学请教。
三、实验中的注意事项在进行单片机实验时,一定要注意以下几点:首先,要认真选择合适的元件和器材,确保其质量和性能符合要求;其次,要遵守电器设备的使用规范,比如正确连接电源和地线、避免引起短路等;最后,要防止过度使用单片机,以免出现电磁干扰、损坏设备等问题。
四、实验课堂作业单片机实验课堂作业的目的是让学生加深对单片机知识的理解和掌握。
作业内容应与实验内容相密切相关,包括设计实验电路、编写程序、测试运行结果等。
同时,作业应具有一定难度和挑战性,以激发学生的兴趣和创造力。
总之,单片机实验指导书是单片机科技研究和应用的基础。
只有通过认真研读和实践,才能真正掌握单片机技术,应用到实际生产和工程中。
希望我们的实验指导书能够对广大读者有所帮助。
实验一数制转换实验一、实验目的:(1)、熟悉单片机实验系统板、稳压电源及示波器的使用方法。
(2)、培养程序编制及调试的方法。
(3)、输入自己编写的程序(机器码),并通过实验板和示波器观察程序运行结果。
二、实验要求:(1)、给出程序设计流程图。
(2)、设计数制转换实验程序。
(3)、记录单片机实验板晶体振荡器的波形图。
(4)、记录单片机实验板上电复位电路的波形图。
三、实验原理:以下是把16进制数转换为10进制数的参考程序清单及机器码表:测试程序:四、实验仪器:稳压电源一台HB-51教学实验系统一套五、实验步骤:1、HB-51教学实验系统简介:(1)、+5V电源,+12V电源,-12V电源(2)、CPU、程序存储器、数据存储器、晶体振荡器、手动复位、LED发光管、键盘、显示器(LED 数码管)。
(3)、显示器介绍该系统共有6个数码管,分为两组,左边4个为一组,右边2个为一组。
在大部分情况下,左边4个数码管作为地址显示器,右边2个数码管作为内容显示器。
(4)、键盘介绍0~F 为数字键,用来输入0~F的数字,并且系统默认十六进制输入MEM 为程序存储器内容检查/修改键REG 为寄存器/内部RAM内容检查/修改键LAST 用来向上跳一个地址单元NEXT 用来向下跳一个地址单元EXEC 为连续执行键SCAL 为单步调用键STEP 为单步执行键MON 为返回系统监控状态,相当于让系统回到刚刚上电时的状态。
也是其他功能键的前导按键2、HB-51教学实验系统与稳压电源的连接。
实验系统上的+5V电源与稳压电源正确相连,接好以后,给稳压电源上电。
此时,如果系统工作正常,会在显示器上显示“HB--51”。
如果显示内容不是“HB--51”,则说明系统上电复位过程不正常。
此时按一下红色的手动复位按钮,系统就应当正常工作了。
如果系统还是有问题,甚至,显示器什么都不显示,处于黑屏状态,则立刻关掉稳压电源,然后请实验室老师来解决问题。
实验报告实验课程:单片机原理及接口技术实验学生姓名:刘麟峰学号:5801213031专业班级:测仪1312015年 6 月 7 日目录第一章系统安装与启动............................................... 第二章MCS-51单片机硬件接口实验部分................................................................实验一 mcs-51基本指令应用..............................................................................实验二 I/O口输入、输出实验............................................................................实验三外部中断实验..........................................................................................实验四定时计数器实验......................................................................................实验五串行静态数码显示实验..........................................................................实验六交通灯控制实验......................................................................................实验七单片机串行口与PC机通信实验............................................................第一章系统安装与启动一、实验系统工作在 51 实验模式当用户需要进行 MCS-51 单片机实验内容时,应进入这种工作模式。
1)将 JD2(CPU 插座)与 JD3(CPU51 插座)用“CPU 转接板”连接起来,JD1(CPU88 插座)空置。
2)用配套的串行通讯电缆,将 9 芯电缆的一端与实验机上(CPU 模块处)的 9 芯插座 SCOM1 相连,另一端与 PC 机的串行口相连。
3)先打开电源开关,再打开直流开关,在 PC 机上打开 THGMW-51 软件,运行实验程序,具体操作参见本实验指导书后面章节内容。
二、51 实验模式下各开关和跳线器的初始状态设置1)A1 区直流开关:实验内容若不用到 A 区模拟模块,则开关置位在下方,模拟模块电源为关闭状态。
2)B2 区 JT1B 跳线器:短路帽置位在左边,LED 点阵显示模块电源为关闭状态。
3)B3 区 JT2B 跳线器:短路帽全部置位在下方,LCD 液晶显示模块电源、背光为关闭状态。
4)C1 区 JT1C 跳线器和 C3 区 JT2C 跳线器的短路帽位置随意,由相关实验决定。
5)C3 区 JT3C 跳线器:短路帽置位在左边,语音接口模块电源为关闭状态。
6)E4 区 JT1E 跳线器:两只短路帽置位在左边,八位逻辑电平输出有效。
7)E7 区 S11E、S12E 开关:开关全部置位上方(ON),由 8279 来控制键盘、显示。
8)F3 区 JT1、JT2 跳线器:短路帽全部置位在上方。
9)A5 区 S4A 多位开关:开关置位最右端(温度控制),做温度控制实验用。
第二章 MCS-51 单片机硬件接口实验部分实验二 I/O 口输入、输出实验一、实验目的掌握单片机P1口、P3口的使用方法。
二、实验内容以P1 口为输出口,接八位逻辑电平显示,LED 显示跑马灯效果。
以P3 口为输入口,接八位逻辑电平输出,用来控制跑马灯的方向。
三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明和电路原理图P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止。
因为内部上拉电阻阻值是20K~40K,故不会对外部输入产生影响。
若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
本实验需要用到CPU模块(F3区)和八位逻辑电平输出模块(E4区)和八位逻辑电平显示模块(B5区),八位逻辑电平输出电路原理图参见图1-1。
八位逻辑电平显示电路原理图参见图1-2。
图2-1 八位逻辑电平输出图2-2 八位逻辑电平显示五、实验预习要求学习教材的相关内容,根据实验要求画出程序流程图,写出实验程序。
六、实验步骤1)系统各跳线器处在初始设置状态。
用导线连接八位逻辑电平输出模块的K0 到CPU 模块的RXD(P3.0 口);用8 位数据线连接八位逻辑电平显示模块的JD4B 到CPU 模块的JD8(P1 口)。
2)启动PC 机,打开THGMW-51 软件,输入源程序,并编译源程序。
编译无误后,下载程序运行。
3)观察发光二极管显示跑马灯效果,拨动K0 可改变跑马灯的方向。
七、实验参考程序;//******************************************************************;文件名: Port for MCU51;功能: I/O口输入、输出实验;接线: 用导线连接八位逻辑电平输出模块的K0到CPU模块的RXD(P3.0口);; 用8位数据线连接八位逻辑电平显示模块的JD2B到CPU模块的JD8(P1口)。
;//******************************************************************DIR BIT P3.0ORG 0000HLJMP STARTORG 0100HSTART:Output1:mov a, #0fEHmov r5, #8loop1: 3CLR Cmov C,DIRJC Output2mov P1, arl aAcall Delaydjnz r5, loop1Sjmp Output1Output2:mov a, #07fHmov r5, #8loop2:CLR Cmov C,DIRJNC Output1mov P1, arr aAcall Delaydjnz r5,loop2Sjmp Output2Delay:mov r6,#0DelayLoop1:mov r7,#0DelayLoop2:NOPNOPdjnz r7,DelayLoop2djnz r6,DelayLoop1ret八、实验总结通过做I/O 口输入、输出实验实验,我基本上掌握了单片机的输入输出使用方法,单片机中的四组并行输入输出口,都可以作为一般的输入输出口来用,程序中用MOV 指令可以实现输入输出。
学会了流水灯的实现方法和实现延时的程序编写方法。
受益匪浅。
实验三外部中断实验一、实验目的学习外部中断技术的基本使用方法。
二、实验内容INT0 端接单次脉冲发生器。
按一次脉冲产生一次中断,CPU 使P1.0 状态发生一次反转,P1.0 接LED 灯,以查看信号反转。
三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明和电路原理图1)外部中断的初始化设置共有三项内容:中断总允许即EA=1,外部中断允许即EXi=1(i=0或1),中断方式设置。
中断方式设置一般有两种方式:电平方式和脉冲方式,本实验选用后者,其前一次为高电平后一次为低电平时为有效中断请求。
因此高电平状态和低电平状态至少维持一个周期,中断请求信号由引脚INT0(P3.2)和INT1(P3.3)引入。
2)中断服务的关键:a、保护进入中断时的状态。
堆栈有保护断点和保护现场的功能使用PUSH 指令,在转中断服务程序之前把单片机中有关寄存单元的内容保护起来。
b、必须在中断服务程序中设定是否允许中断重入,即设置EX0 位。
c、用POP 指令恢复中断时的现场。
3)中断控制原理:中断控制是提供给用户使用的中断控制手段。
实际上就是控制一些寄存器,51 系列用于此目的的控制寄存器有四个:TCON 、IE 、SCON 及IP。
4)中断响应的过程:首先中断采样然后中断查询最后中断响应。
采样是中断处理的第一步,对于本实验的脉冲方式的中断请求,若在两个相邻周期采样先高电平后低电平则中断请求有效,IE0 或IE1 置“1”;否则继续为“0”。
所谓查询就是由CPU 测试TCON 和SCON 中各标志位的状态以确定有没有中断请求发生以及是那一个中断请求。
中断响应就是对中断请求的接受,是在中断查询之后进行的,当查询到有效的中断请求后就响应一次中断。
本实验需要用到CPU 模块(F3 区)和八位逻辑电平显示模块(B5 区)、单次脉冲模块(E3区)。
五、实验预习要求学习教材的相关内容,根据实验要求画出程序流程图,写出实验程序。
六、实验步骤1)系统各跳线器处在初始设置状态,用导线连接单次脉冲模块的输出端到CPU 模块的P32;CPU 模块的P10 接八位逻辑电平显示模块的灯。
2)启动PC 机,打开THGMW-51 软件,输入源程序,并编译源程序。
编译无误后,下载程序运行。
3)连续按动单次脉冲产生电路的按键,发光二极管L0 每按一次状态取反,即隔一次点亮。
七、实验参考程序;//*************************************************;文件名: EXint for MCU51;功能: 外部中断实验;接线: 导线连接单次脉冲模块的输出端到CPU模块的P32,; CPU模块的P10接八位逻辑电平显示模块的L0灯。
;//*************************************************LED BIT P1.0LEDBuf BIT 20Horg 0ljmp Startorg 3Interrupt0:push PSW ; 保护现场cpl LEDBuf ; 取反LEDmov c, LEDBufmov LED, cpop PSW ; 恢复现场retiStart:clr LEDBufclr LEDmov TCON, #01h ; 外部中断0下降沿触发mov IE, #81h ; 打开外部中断允许位(EX0)及总中断允许位(EA)OK: ljmp OKend八、实验总结在本实验中,我深入了解了中断的工作原理,及其作用,中断对于单片机的实时控制,软/硬件错误检查等有着重大的意义,是程序的重要功能之一,影响着程序工作方式,同时也可作为初级的人机交互的基础。