信息工程类实验报告课程名称:单片机技术姓名:系:信息与机电工程系专业:电子信息工程年级:2013级学号:指导教师:职称:2015 年11 月22 日系:信息与机电工程专业:电子信息工程年级: 2013 姓名:学号:实验课程:《单片机技术》实验室号:实验设备号:实验时间:指导教师签字:成绩:实验一 Keil C51 和Proteus 软件的使用1.实验目的和要求1)熟悉Keil C51软件界面,以及编辑、编译、运行程序的步骤;2)熟悉Proteus软件界面,掌握用Proteus画仿真图的方法。
3)掌握电子电路的设计与仿真调试的方法。
2.实验原理1)Keil C51软件使用在Keil C51集成开发环境下,建立一个工程并编辑以下源程序,熟悉KeilC51集成开发环境下各种菜单、命令的使用。
#include "reg51.h"#define uchar unsigned char#define uint unsigned intsbit in=P3^0;sbit out=P1^0;void main(void){ while(1){ in=1;if(in= =0)out=0;elseout=1;}}2)Protues软件使用下图2-1-1为利用单片机、1个开关和1个发光二极管,构成一个简单的开关检测系统的仿真电路图。
单片机P3.0引脚接按钮开关,P1.0引脚接发光二极管的阴极。
当开关闭合时,发光二极管亮;开关打开时,发光二极管灭;按钮开关与发光二极管没有任何电气上的联系。
利用Protues仿真软件画出仿真电路图,并进行电气规则检查。
图2-1-13)Proteus仿真电路图绘制完毕后,加载“.hex”文件到电路图中的单片机内进行仿真,观察运行结果。
注意系统时钟频率的设置3.主要仪器设备(实验用的软硬件环境)安装有Keil C51软件与Proteus仿真软件PC机1台; Dais-52PRO+或Dais-PRO163C实验系统一套。
4.操作方法与实验步骤1)Keil C51软件使用(1)建立用户文件夹(2)建立工程(3)建立文件并编码。
输入以下源程序,并保存在项目所在的目录中(4)把文件加入工程中(5)编译工程。
编译时观察在界面下方的“Build”页中的到编译错误信息和使用的系统资源情况等。
(6)调试。
利用常用调试命令,如复位、运行、暂停、单步、单步跳过、执行完当前子程序、运行到当前行、下一状态、打开跟踪、观察跟踪、反汇编窗口、观察窗口、代码作用范围分析、1#串行窗口、内存窗口、性能分析、工具按钮等命令进行调试,观察并分析调试结果。
(7)目标代码文件的生成。
运行生成相应的.HEX文件。
2)proteus电路设计(1)建立新文件(2)设定绘图纸大小(3)选取元器件并添加到对象选择窗口中(4)放置、调整元器件位置(5)放置电源、地(终端)(6)电路图布线调(7)电气检测(8)电路图存盘。
3)Keil C与Proteus连接仿真调试在Keil C中编译输出*.HEX文件,右键选中工作区中单片机芯片,左键单击打开属性对话框,在弹出的选择文件对话框中选择相应的*.HEX文件。
通过运行控制按钮控制程序的执行,观察K1闭合和打开时的程序运行过程。
4)实验箱实验步骤(1)按照图2-1-2连接实验箱各个模块并仔细检查线路,确保无误后上电。
(2)连线说明:通用机型因受PCB面积所限,单片机的I/O口均使用排针引出,可使用8芯排线整体接入发光二极管或逻辑电平开关的排针插头。
当需要单独使用某一位或多位I/O口时则需转接,以本实验为例:先用8芯排线将P1.0~P1.7连接逻辑电平开关K0~K7,再将K0~K7拨至下方(预置高电平),最后用单根导线将K0的插孔连接发光二极管L0。
(3)运行Dais软件,进入集成开发环境,软件弹出设置通信端口对话框(如图2-1-2),请确保实验装置与PC正确连接,并已打开实验装置电源,使其进入在待命状态。
这里选择与实验装置实际相连的通信端口,并单击“确定”。
如通信正确则进入Dais软件主界面,否则弹出“通信出错”的信息框(如图2-1-3),请检查后重试。
图2-1-2 设置通信端口对话框图2-1-3 通信错误信息框(4)通信成功后,单击菜单栏“设置”→“仿真模式”项打开对话框,选择需要设置型号、程序/数据空间。
这里我们将型号设置为“MCS-51实验系统”,外部数据区设置为“系统RAM”,用户程序区设置为“片外(EA=0)”,如图2-1-4所示,最后单击“确定”按钮保存设置。
图2-1-4 设置工作方式对话框(5)工作方式设置完毕后,单击菜单栏“文件”→“新建”项或按Ctrl+N组合键(建议单击工具栏“”按钮)来新建一个文件,软件会出现一个空白的文件编辑窗口。
(6)在新窗口中输入程序代码:#include "reg51.h"#define uchar unsigned char#define uint unsigned intsbit in=P3^0;sbit out=P1^0;void main(void){ while(1){ in=1;if(in= =0) out=0;else out=1;}}(7)单击菜单栏“文件”→“保存”项(建议单击工具栏“”按钮)保存文件。
若是新建的文件尚未命名,系统会弹出文件保存对话框(如图2-1-5),提示用户选择文件保存的路径和文件名,注意文件扩展名为.c,再单击“保存”按钮。
(8)单击菜单栏“编译”→“文件编译、链接、装载”项或按Ctrl+F9组合键(建议单击工具栏“”按钮),对当前文件进行编译和链接,若程序无语法错误,则开始自动装载,装载完毕提示如图2-1-6所示的信息框。
图2-1-5 文件保存对话框图2-1-6 编译信息框(9)当编译无误且下载成功后,即进入调试状态,当前PC行高亮突出显示,源程序窗口左侧显示小圆点以标识可执行语句行。
(10)单击菜单栏“调试”→“单步运行”项或按F7快捷键(建议单击工具栏“”按钮),单步运行程序,观察寄存器和内存单元的数据变化;(11)也可单击菜单栏“调试”→“连续运行”项或按F9快捷键(建议单击工具栏“”按钮),开始全速运行。
在全速运行后,须暂停运行以便在待命状态查看运行结果,暂停可单击菜单栏“调试”→“暂停”项或按Esc快捷键(建议单击工具栏“”按钮)。
(12)除了单步或全速运行,还可以使用断点手段来调试程序。
单击菜单栏“调试”→“复位”项或按Ctrl+F2组合键(建议单击工具栏“”按钮)进行复位,以便重新运行程序。
(13)设置断点后,单击菜单栏“调试”→“连续运行”项或按F9快捷键(建议单击工具栏“”按钮),使用全速运行方式,待程序运行到断点行时自动停下。
观察各个LED灯的状态,并做好相关记录。
5.实验内容及实验数据记录6.实验数据处理与分析XXXXXXXXX7.质疑、建议、问题讨论XXXXXXXXX系:信息与机电工程专业:电子信息工程年级: 2013 姓名:学号:实验课程:《单片机技术》实验室号:田实405 实验设备号:实验时间: 2015/11/14 指导教师签字:成绩:实验二单片机I/O接口应用实验—流水灯1.实验目的和要求1)进一步掌握单片机仿真软件的使用方法;熟悉C51程序编程和调试方法。
2)掌握单片机最小系统的构成。
3)掌握单片机I/O口的使用方法,如何控制I/O口来驱动LED发光二极管。
2、实验方法利用AT89C51单片机控制8个发光二极管按照要求实现以下各个功能:(1)点亮板子上的第一个灯D0。
(2)点亮D0、D2、D4、D6灯,与D1、D3、D5、D7灯交替闪烁。
(3)按顺序循环移动点亮。
2.实验原理XXXXXXXXX3.主要仪器设备(实验用的软硬件环境)安装有Keil C51软件与Proteus仿真软件PC机1台;Dais-52PRO+或Dais-PRO163C实验系统一套。
4.操作方法与实验步骤1)利用Proteus软件设计以下电路图2-2-1。
图2-2-12)源程序设计分析设计要求,根据任务要求,绘制源程序流程图,然后使用Keil C进行源程序文件的设计与调试,观察并分析程序调试结果。
3)Proteus仿真加载目标代码至单片机中,利用Proteus硬件仿真功能,进行流水灯的仿真运行,观察运行结果。
4)实验箱实验步骤(1)参照图2-2-1、2-2-2,连接实验箱各个模块并仔细检查线路,确保连接无误后上电。
图2-2-2 实验箱线路连接(2)文件编译、链接的无语法错误后,装载到实验系统,观察时候成功装载的提示信息。
(3)运行程序,观察各个LED灯的状态,并做好相关记录。
实验完毕后,应使用暂停命令中止程序的运行。
5.实验内容及实验数据记录6.实验数据处理与分析XXXXXXXXX7.质疑、建议、问题讨论XXXXXXXXX系:信息与机电工程专业:电子信息工程年级: 2013 姓名:学号:实验课程:《单片机技术》实验室号:田实405 实验设备号:实验时间: 2015/11/14 指导教师签字:成绩:实验三中断优先级实验1.实验目的和要求1)掌握单片机系统中断嵌套及中断优先级的原理和使用方法。
2)学习中断控制技术的基本原理,掌握中断程序的设计方法。
2.实验原理(1)在单片机的P1口上接有8只LED,单片机主程序控制P1口发光二极管进行同亮同灭的闪烁显示,按钮K0接至P3.2/INT0*引脚,按钮K1接至P3.3/INT1*引脚。
(2)当只单击K0按钮时,一个黑灯(8个发光二极管只有一个熄灭,其余为亮)由下向上流水显示一次,然后P1口的发光二极管进行同亮同灭的闪烁显示;当只单击K1按钮时,一个亮灯(8个发光二极管只有一个为亮,其余为暗)由下向上流水显示一次,然后然后P1口的发光二极管进行同亮同灭的闪烁显示;如果先单击K0按钮再单击K1按钮,一个黑灯由下向上流水显示一次后,才能再一个亮灯由下向上流水显示一次,然后再回到8个灯同亮同灭的闪烁显示状态;如果先单击K1按钮后,一个亮灯由下向上流水显示,在亮灯显示没有到达D0显示时,此时再单击K0按钮,则一个黑灯由下向上流水显示,表明执行了外中断0的高优先级中断。
一个黑灯向上流水显示完毕时,再执行一个亮灯到D0显示完毕的外中断0中断程序,从而说明高优先级的外部中断0能够把低优先级的外中断1的中断服务程序打断。
3.主要仪器设备(实验用的软硬件环境)安装有Keil C51软件与Proteus仿真软件PC机1台;Dais-52PRO+或Dais-PRO163C实验系统一套。
4.操作方法与实验步骤1)利用Proteus软件设计以下电路图。
2)源程序设计分析设计要去,根据任务要求,绘制源程序流程图,然后使用Keil C51进行源程序文件的设计与调试,观察并分析程序调试结果。