文档库 最新最全的文档下载
当前位置:文档库 › ADC0809与MCS-51单片机接口实验

ADC0809与MCS-51单片机接口实验

ADC0809与MCS-51单片机接口实验
ADC0809与MCS-51单片机接口实验

实验报告一

学院:电气工程学院专业:测控技术与仪器班级:测仪101 姓名学号实验组实验时间指导教师成绩

实验项目名称ADC0809与MCS-51单片机接口实验

实验目的

通过本实验的学习,使学生了解A/D转换器与计算机接口时数据线和信号线如何连接,数据采集电路的时序怎样设计,了解A/D芯片ADC0809转换性能及编程,掌握芯片ADC0809的程序设计方法,进一步训练进行软件和硬件联合调试的技能,为后续“测控系统原理课程设计”的学习奠定基础。

验要求

利用实验板上的ADC0809做A/D转换器,用电位器提供模拟量输入,编制程序,将模拟量转换成二进制数字量,用发光二极管显示。

实验原理

A/D转换器大致有三类:一是双积分A/D转换器,优点是精度高,抗干扰性好,价格便宜,但速度慢;二是逐次逼近法A/D转换器,精度,速度,价格适中;三是并行A/D转换器,速度快,价格也昂贵。

实验用的ADC0809属第二类,是八位A/D转换器,是采用逐次逼近式工作的转换器件,每采集一次一般需100us。它带有8路模拟开关,可进行8路模/数转换,通过内部3-8译码电路进行选通并锁存地址。

启动ADC0809的工作过程:先送通道号地址到A、B、C三端,由ALE信号锁存通道号地址,选中的通道的模拟量送到A/D转换器,执行语句 MOVX @DPTR,A产生写信号,启动A/D转换。当A/D转换结束时,ADC0809的EOC端将上升为高电平,执行语句MOVX A,@DPTR产生读信号,使OE有效,打开锁存器三态门,A/D转换结果的8位数据就读到CPU中。编程时可以把EOC信号作为中断请求信号,对它进行测试,用中断请求或查询法读取转换结果。

#include

#define set_bit(x,y) x|=1<

#define clear_bit(x,y) x^=1<

#define start 1

#define oc 2

int b=1;

int i;

void Init_INT0()

{

P0=255;

EA=1; //首先开启总中断

EX0=1; //开启外部中断 0

IT0=0; //设置成低电平触发,1为下降沿触发}

void main(void)

{

Init_INT0();

clear_bit(P2,oc);

set_bit(P2,start);

for(i=0;i<100;i++);

clear_bit(P2,start);

while(1)

{

set_bit(P2,0);

while(b--);

b=50;

clear_bit(P2,0);

while(b--);

b=50;

}

}

void int_ex0(void) interrupt 0 using 1

{

set_bit(P2,oc);

clear_bit(P2,start);

P1=P0;

set_bit(P2,start);

for(i=0;i<100;i++);

clear_bit(P2,start);

clear_bit(P2,oc);

}

当模拟输入端的输入电压为两伏特是显示灯的明亮如上图所示。

PC机、Proteus软件、Keil μVision2软件

实验步骤 1.按照实验原理及接线图在Proteus中画出仿真电路图,接好AT89C51、ADC0809和电位器:电位器的两端分别接到+5V和地,电位器的输出端连到ADC0809的INT0。

2.编写中断方式工作的程序,输入程序。进行仿真。

3.旋转电位器,测取不同的模拟电压输入时,读取发光二极管显示的转换结果是否符合5V/256=Vin/D 的规律,并记录。画出模拟电压和数字量关系图,看两者是否成线性关系。

A/D转换接线图

实验数据 LED

输入电压

D8 D7 D6 D5 D4 D3 D2 D1 1V 灭灭亮亮灭灭亮亮2V 灭亮亮灭灭亮亮灭3V 亮灭灭亮亮灭灭亮4V 亮亮灭灭亮亮灭灭5V 亮亮亮亮亮亮亮亮

实验总结

1.通过本本实验更进一步了解了查询方式和用查询EOC状态的方式判断转换是否结

束,更进一步掌握了编程的原理和应用。

2.通过本实验采用软件延时的办法等待转换结束,更进一步了解了用实验法测定ADC0809的最短转换时间。

见签名:年月日

实验报告二

学院:电气工程学院专业:测控技术与仪器班级:测仪101 姓名学号实验组实验时间指导教师成绩

实验项目名称DAC0832与MCS-51单片机接口实验

验目的通过本实验的学习,使学生掌握D/A转换的工作原理,掌握芯片DAC0832与单片机接口电路的设计方法,掌握芯片DAC0832的程序设计方法,为后续“测控系统原理课程设计”的学习奠定基础。

实验要求

1.编写程序:送数据00~0FF到DAC0832,用万用表测量数模转换的输出端T-DAOUT,观察输出电压的变化。

2.试编写程序:使DAC0832输出三角波,并用示波器观察。

实验原理

DAC0832芯片是8位的D/A转换集成芯片,有数据锁存器,选片、读、写控制信号线,故可以和单片机直接接口。由于DAC0832芯片为电流输出方式,但在实际应用中,往往需要电压输出方式,所以在线路设计上接入一片运算放大器来实现电流转换为电压。当数字量输入在00H~FFH范围时,电压的输出量有两种形式:一种是单极性输出,电压的输出量为0~+XV或0~-XV,另一种是双极性输出,电压的输出量为±XV。在本实验中采用单缓冲器、单极性输出方式,数字量在00~FFH变化时,输出模拟量在0~2.5V之间变化。该电路包括一片DAC0832和一个运算放大器OP07。

实验原理及接线图电路如图10所示,DAC 0832片选信号CS为低电平有效,直接接P2.6,即P2.6为低时选中DAC 0832,据P2.6=0可算得DAC 0832选片地址。(XFER、2

WR同时与DGND 连接,1

WR与8031的WR连接,这样8位DAC寄存器始终处于导通状态,因此,当数据从数据线上输入寄存器时,便直接进入8位DAC寄存器,并且由8位D/A转换器,进行D/A转换,因此,此电路为异步输出结构方式。)DAC 0832内部没有参考电压,8脚接负的参考电压,输出为正电压,8脚接正的参考电压,输出为负电压。由于DAC 0832是有数字量的输入锁存功能,故数字量可以直接从P0口送入,执行

下面几个指令就能完成一次D/A转换。

MOV DPTR,#ADDR_DAC

MOV A,#DATA

MOVX @DPTR,A

验仪器PC机、Keil μVision2软件,COS5041CH示波器,万用表,TOP2003编程器,自制实验板。

实验步骤1.按照实验原理及接线图在实验板上连接好AT89C51、DAC0832和电位器。

2.编写两个程序:程序1将数据00~0FF送到DAC0832,程序2使DAC0832输出三角波。输入程序,编译并烧写到AT89C51中,并将芯片插入实验板插座上。

3.检查连线无误后接通电源。

4.对DAC0832进行校对:

调零:送数据00给0832,用万用表测试T—DAOUT端,若不为零,则调整VR1。

调满度:送数据给0832,测试T—DAOUT端电压,若不等于2.5V,则调整VR2。

5.在数据00~FFH之间选若干点(直接在程序中进行修改),送DAC0832进行转换,测试T—DAOUT端电压,运行程序1,并记录。

6.运行程序2,用示波器测试T—DAOUT端,观察输出波形。

验内容程序:

#include

#include

#define write P3&0XFE

#define cs P3&0XFD

#define unwrite P3|1

#define uncs P3|2

unsigned char cunter=2000;

unsigned char trans_data=0;

unsigned char time_interval=2;

bit flag=1;

void delay_ms(unsigned int a)

{

while(a--)

while(cunter--);

cunter=5;

DAC0832接线图

void trangle_data_display(void) {

while(1)

{

// P3=unwrite;

P0=trans_data;

P3=0;

delay_ms(time_interval);

P3=1;

delay_ms(time_interval);

if((trans_data<=250)&&flag)

{

trans_data++;

if(trans_data==250)

flag=0;

}

else if(flag==0)

{

trans_data--;

if(trans_data==0)

flag=1;

}

}

}

void port_initial(void)

{

P0=0;

P3=255;

void main(void)

{

port_initial();

trangle_data_display();

}

验总结

通过本实验的学习,我更进一步掌握D/A转换的工作原理,掌握芯片DAC0832与单片机接口电路的设计方法,掌握芯片DAC0832的程序设计方法,掌握了怎么编写程序才能使输出端输出方波或锯齿波。

见签名:年月日

实验报告三

学院:电气工程学院专业:测控技术与仪器班级:测仪101 姓名学号实验组实验时间指导教师成绩

实验项目名称键盘、LED显示综合实验

实验目的

通过实验掌握键盘、显示器的接口方法;掌握键盘子程序调试方法,掌握按一个键并将其键值显示出来的方法,训练最简单的人机接口的软件和硬件设计技能,为后续“测控系统原理课程设计”的学习奠定基础。

实验要求1.编写8279初始化程序(程序1),并向8279缓冲区写入显示字符,采用8位LED右端送入方式显示,程序控制字符“8”由右至左循环显示。

2.编写由左至右循环显示字符“F”的程序(程序2)。

3.编写每按下一个按键,将其键值显示在LED上的程序(程序3)。

实验原理 8279芯片是一种通用的可编程键盘、显示接口器件,能完成对64位按键和16位LED显示器的管理。8279有多种功能和多种工作模式,其功能和模式靠设定命令字

来确定。8279引脚功能图,如图11所示。与CPU的接口线共15个引脚:D0~D7

双向三态数据总线、RESET复位输入端;CS片选输入端;CLK时钟输入端;A0数据

选择输入端;读操作输入端;WR写操作输入端;IRQ中断请求输入端。

8279包括键盘与显示两部分。键盘部分可以为64个按键的阵列提供扫描;能够自动消除键抖动影响;具有对按键同时按下的保护;能把键信息存入8字符先进先出栈;可向CPU发中断请求,得到相应后,使CPU获取按键信息;也可以接受CPU对键信息的查询。显示部分有16字节显示RAM,可用于刷新显示;显示RAM可由CPU直接读/写;8279对显示RAM能够以地址自动增1方式进行读/写;显示方式具有从显示器左端或右端送入两种。

与键盘的接口线共14个引脚。SL0~SL3扫描输出端,用于扫描键盘和显示器,可以编程设定为编码或译码输出。RL0~RL7返回输入端,可通过键盘矩阵与扫描线相连,内部电路使其保持高电平,直至有键闭合使相应线拉向低电平。在选通方式下,用作8位

输入。SHIFT移位输入端,在键盘扫描方式下,它与键代码一起被存储,常用来扩充上下挡功能键。在传感器方式和选通方式下,SHIFT无效。CNTL/STB控制/选通输入端。在键盘工作方式下,用作输入存储键信息;在选通方式下,用作选通数据存入FIFO RAM;在传感器方式下无效。OUTA0~OUTA3 A组显示输出端。输出显示数据,多位数字显示时应与扫描线SL0~SL3同步。8279的命令字近10种,所以使用8279之前,应详细阅读其器件手册。

PC机、Keil μVision2软件,TOP2003编程器,自制实验板。

实验步骤1.运行程序1,观察显示是否正确。

2.运行程序2,观察显示是否正确。

3. 运行程序3,观察按键按下后LED上显示的键值是否正确。

实验内容

1.编写8279初始化程序(程序1),并向8279缓冲区写入显示字符,采用8位LED右端送入方式显示,程序控制字符“8”由右至左循环显示。

2.编写由左至右循环显示字符“F”的程序(程序2)。

3.编写每按下一个按键,将其键值显示在LED上的程序(程序3)。

实验程序:INIT: MOV DPTR,#7FFFH

MOV A,#0D1H

MOVX @DPTR,A

MOV A,#010H

MOVX @DPTR,A

MOV A,#28H

MOVX @DPTR,A ;设置扫描频率

SETB EA

SETB EX1

KINT: PUSH PSW

PUSH DPH

PUSH DPL

PUSH ACC

MOV DPTR,#7FFFH

MOV A,#40H

MOVX @DPTR,A

MOV DPTR,#7FFFH

MOVX A,@DPTR

MOV B,A

POP ACC

POP DPL

POP DPH

POP PSW

RETI

DISPL: MOV DPTR,#7FFFH

MOV A,#90H

MOVX @DPTR,A

MOV R0,#78H

MOV R7,#08H

MOV DPTR,#7FFEH

DISPL1: MOV A,@R0

ADD A,#05H

MOVC A,@A+PC

MOVX @DPTR,A

INC R0

DJNZ R7,DISPL1

RET

SEGPT: DB 08H,08H,08H,08H,08H,08H,08H,08H END

实验总结首先,通过本实验初步掌握了键盘、显示器的接口方法;掌握了键盘子程序调试方法;掌握了按一个键并将其键值显示出来的方法。其次,通过本实验使我初步掌握了简单人机接口的软件和硬件的设计技能,为后续“测控系统原理课程设计”的学习奠定了基础、确定了学习方向。再次,在本实验做过后,使我对Keil μVision2软件的开发和设计环境方面又得到了进一步的提升。最后,在实验过程中我又对以前的学过的单片机、数字电路等方面的知识进行很大程度上巩固,使我牢牢地掌握了理论知识和实验设计方法和分析方法。

见签名:年月日

实验报告四

学院:电气工程学院专业:测控技术与仪器班级:测仪101 姓名学号实验组实验时间指导教师成绩

实验项目名称PLD 实现三人表决器

实验目的1.通过本次实验,引导学生以计算机辅助设计的手段来设计数字逻辑电路;

2.掌握QuartusII集成开发环境软件原理图输入的设计流程;

3.掌握简单流水灯的工作原理,学会通过QuartusII建立原理图设计小型数字电路;

4.掌握可编程逻辑器件(PLD)的开发步骤;

5.掌握对设计进行编译、仿真的方法。

实验要求1 创建Vote工程

2 建立原理图文件

3 管脚分配和编译

4 编辑输入波形和进行仿真

实验原理1 创建Vote工程

2 建立原理图文件

3 管脚分配和编译

4 编辑输入波形和进行仿真

PC QuartusII

实验步骤1.1 双击桌面上 Quartus II5.0 的图标,启动 Quartus II5.0 软件。

1.2 通过 File => New Project Wizard…菜单命令启动新项目向导。

1.3 在随后弹出的对话框上点击 Next 按钮,继续。

1.4 在 What is the working directory for this project 栏目中设定新项目所使用的路径;在 What is the name of this project 栏目中输入新项目的名字: vote ,点击 Next 按钮。

1.5 在这一步,向导要求向新项目中加入已存在的设计文件。因为我们的设

计文件还没有建立,所以点击 Next 按钮,跳过这一步。

1.6 在这一步选择器件的型号。Family 栏目设置为 Cyclone ,选中

Specific device selected in ‘Available devices’ list 选项,在 Available device 窗口中选中所使用的器件的具体型号,这里以 EP1C6Q240C8 为例。点击

Next 按钮,继续。

1.7 在这一步,可以为新项目指定综合工具、仿真工具、时间分析工具。在

这个实验中,我使用 Quartus II5.0 的默认设置,直接点击 Next 按钮,继续。

1.8 确认相关设置,点击 Finish 按钮,完成新项目创建

2.1 在 File 菜单下,点击 New 命令。在随后弹出的对话框中选择 Block Diagram/Schematic File 选项,点击 OK 按钮。在 File 菜单下选择 Save As

命令,将其保存,并加入到项目中。

2.2 根据上面的真值表,做卡诺图简化,可以得出:F=S1S2+S1S3+S2S3 。

双击原理图的任一空白的处,会弹出一个元件对话框。在 Name 栏目中输入

and2 ,我们就得到一个2输入的与门。

2.3 点击 OK 按钮,将其放到原理图的适当位置。重复操作,放入另外两个

2输入与门。也可以通过右键菜单的 Copy 命令复制得到。

2.4 双击原理图的空白处,打开元件对话框。在 Name 栏目中输入 or3 ,

我们将得到一个3输入的或门。点击 OK 按钮,将其放入原理图。

2.5 双击原理图的空白处,打开元件对话框。在 Name 栏目中输入 not ,我

们会得到一个非门。点击 OK 按钮,将其放入原理图。

2.6 将鼠标入到元件的引脚上,鼠标会变成“十”字形状。按下左键,拖动鼠标,

就会有导线引出。根据我们要实现的逻辑,连好各元件的引脚。

2.7 双击原理图的空白处,打开元件对话框。在 Name 栏目中输入 Input , 我们

便得到一个输入引脚。点击 OK 按钮,放入原理图。重复操作,给我们的电路

加上3个输入引脚。

2.8 双击输入引脚,会弹出一个属性对话框。在这一对话框上,我们可更改引

脚的名字。我们分别给3个输入引脚取名 in1 、in2 、in3 。

2.9 双击原理图的空白处,打开元件对话框。在 Name 栏目中输入 output ,我

们会得到一个输出引脚。点击 OK 按钮,放入原理图。重复操作,给我们的电

路加上两个输出引脚。给两个输出引脚分别命名为 led1 、led2 。

3.1 在 Assignments 菜单下,点击 Pins 命令,启动 Pin Planner 工具。在这个工

具中,我们可以为我们的电路的端子分配器件的引脚。在 All Pins 表格中,双

击 Node Name 列的 new node 单元,输入端子的名字。在同一行的 Location 列,

选择要分配的位置。重复操作,为每个端子都分配适当的脚位。

3.2 在 Assignments 菜单下,点击 Device…命令。在随后弹出的对话框中点击

Device & Pin Options…按钮,进入 Device & Pin Options 对话框。切换到configuration 页,在 Configuration Device 栏目中,选中 use configuration device 选项,配置器件型号选择 EPCS1 ,同时,选中 Generate compressed bitstreams 选项。

3.3切换到 Unused Pins 页,在 Reserved all unused pins 栏目中,选择 As input tri-stated 。因为我们的设要在开发板上演示,所以把没有用到的管脚设为输入,

以避免与开发板上其它电路发生冲突。点击确定按钮,确认设置。回到 Seting

对话框,点击 OK 按钮。

3.4在 Processing 菜单下,点击 Start Compilation 命令,开始编译我们的项目。

编译结束后,点击确定按钮。

4.1 在把我们的设计下载到开发板上验证之前,我们可以先做一下仿真。首先,

我们要建立一个输入波形文件。仿真工具会用到该文件,以确定每个输入引脚

的激励信号。在 File 菜单下,点击 New 命令。在随后弹出的对话框中,切换到

Other Files 页。选中 Vector Waveform File 选项,点击 OK 按钮。

4.2 现在,我们已经进入到波形编辑界面。在 Edit 菜单下,点击 Insert Node or Bus…命令。

单片机实验指导书

《单片机原理与应用》 实验指导书 注意: 1、做实验前必须预习 2、带教材和实验指导书 理工大学 自动化学院自动化系

实验仪的使用 本实例是仿真INTEL的8031单片机,来循环点亮P1口的发光二极管(低电平有效)。程序是用汇编语言来编写。下面介绍相应的操作步骤: 1、运行桌面“星研集成软件”,画面如下: 2、建立源文件 执行 [主菜单?文件?新建],(或者点击图标)打开窗口。 选择存放源文件的目录,输入文件名,注意:一定要输入文件名后缀。对源文件编译、连接、生成代码文件时,系统会根据不同的扩展名启动相应的编译软件。比如:.ASM文件,使用A51来对它编译。本实 例文件名为xunhuan.asm 。窗口如下: 按“确定”即可。然后即出现文件编辑窗口: 输入源程序,参照实验一源程序。 .专业DOC.

这样一个源文件就建立好了。 3.编译、连接文件 首先选择一个源文件,然后可以编译、连接文件了。对文件编译,如果没有错误,再与库文件连接,生成代码文件(DOB、HEX文件)。编译、连接文件的方法有如下二种:(1)使用[ 主菜单?项目?编译、连接 ]或[主菜单?项目?重新编译、连接]”。(2)点击图标或来“编译、连接”或“重新编译连接”。编译、连接过程中产生的信息显示在信息窗的“建立”视中。编译没有错误的信息如下: 若有错误则出现如下信息框: 有错误、警告信息,用鼠标左键双击错误、警告信息或将光标移到错误、警告信息上,回车,系统自动打开对应的出错文件,并定位于出错行上。 这时用户可以作相应的修改,直到编译、连接文件通过。 4.调试 编译、连接正确后,可以开始调试程序。进入调试状态方法有: a)执行[ 主菜单?运行?进入调试状态] b)点击工具条的进入后的窗口如下:

基于MCS-51单片机的热量计

摘要 热量计在我们生活中最实际的应用应该是民用住宅的暖气计量了而我国现有的按使用面积收费的方式存在着许多不合理的因素。为解决这一问题,本论文介绍了一种新型的热量计,该热量计是基于51系列单片机,主要由流量传感器、温度传感器、单片机三部分组成。本文详细阐述了热量计的硬件和软件设计,并简要介绍了相应的抗干扰措施。 热量计可以精确的对实际热量的耗损进行测量,是实施城市供热体制改革,推行按热量计费的关键设备,对热量计消耗智能计算,以用户实际耗用热量为计量收费依据。如果将热量计作为供暖公司向每一位住户收费的依据和手段,是容易被百姓们所接受和推崇的,而且由于热量与费用直接相关,也加强了住户的节能意识。用热量计进行计量更为科学、合理,既方便用户,又便于管理。 关键词:热量计;单片机;温度传感器;流量传感器 Abstract

Calorimeter in our lives should be the most practical application of measurement of residential heating and use of the area by our existing way of charging, there are many irrational factors. To solve this problem, this paper introduces a new type of calorimeter, the calorimeter is based on the 51 series, mainly by the flow sensor, temperature sensor, microcontroller three parts. This paper describes the calorimeter hardware and software design, and briefly describes the corresponding anti-jamming measures. Calorimeter can accurately on actual measurement of heat loss is to implement the urban heating system, the implementation of key equipment by heat billing for consumption calorimeter intelligent computing to user's actual calorie consumption metering and charging basis. If the calorimeter as heating companies charge to every household basis and means, people who are likely to be accepted and respected, and because of the heat and the costs are directly related, but also strengthened the household energy awareness. Measured with a calorimeter more scientific and reasonable, not only user-friendly, and easy to manage. Keywords: Calorimeter; SingleChip Microcomputer; Temperature sensor; Flow sensors

MCS-51系列单片机实验设备存在的缺陷及设计方案

MCS-51系列单片机实验设备存在的缺陷及设计方案 摘要:本文讨论了国内几款MCS-51 系列单片机实验设备存在的缺陷,同时也提出了自己的设计方案,为新一代设备的问世提供参考,单片机实验设备中以MCS-51 为核心的产品最多。 关键词:单片机实验设备缺陷设计 引言 目前,虽然单片机家族的成员种类繁多,但MCS-51 系列单片机依旧占领着工业测控和自动化工程应用的主要市场,是国内单片机应用领域中的主流,这一客观事实决定了全国各大高校的单片机类教材仍以MCS-51系列单片机为主, 同时MCS-51 单片机教学和实验设备也得到了相当迅速的发展。 一、现有实验设备状况和特点 1、上海杭虹公司生产的ADEK单片机实验系统价格十分 昂贵,约为五千元左右,且需外接一个稳压电源,体积也相当庞大。开发环境仅支持汇编语言编程,不支持C语言。 2、浙江启东计算机有限公司生产的DAIS80958B+实验系统,技术相对比较成熟,功能也较多,但价格仍要在三千元以上,体积也比较庞大。开发环境也存在局限性。使用时灵活性差。

但它们只有仿真功能,是真正意义上的仿真设备,没有任何外围电路,而且每台价格在一千八百元左右,相对比较昂贵。 二、各种实验设备的共同问题 1、功能接口陈旧且价格昂贵实验系统上只是由一些传统的与教材同步的实验项目,一些综合性的、设计性的实验项目过于古老而失去的实际价值。在功能接口的数量上也相对较少,不利于系统结构的简化和扩展。在此种情况下,系统设备的整体价格仍旧保持在几千元以上,可以说其性价比很差。对于高校一般设备单位价值在500 元以上,专用设备单位价值在800 元以上,使用期限在一年以上,并在使用过程中基本保持原有物质形态的资产被称为固定资产。据统计,多数高校的单片机实验设备作为固定资产,使用期限一般为5-10 年之间,其中期限为8 年的占50%以上。对于当今电子行业的飞速发展可想而知,实验设备的经济价值与实用价值已经产生了矛盾,而且随着时间的推移正在逐步加深。 2、体积庞大 设备体积庞大意味着实验台面积要跟着增加,保存和管理均需占用很大空间,且在外观上也会失去美观。几大厂商的产品占用实验台面积基本上远超过一张A3 纸,每台设备的保存空间大约也要在 0.05 立方米左右(按长*宽*高=0.6米*0.4 米*0.2 米=0.048 立方米计算),如果一间实验室按配置40 套实验设备计算,保存空间

单片机实训报告范文精选5篇

单片机实训报告范文精选5篇 实训报告是展示自身实训收获成长的重要报告,那么实训报告该如何写呢?小编精选了一些关于实训报告的优秀范例,一起来看看吧。 单片机课程设计心得体会 在学校学习期间我有幸的参加了学校的单片机学习小组,在小组里我了解了什么是单片机,单片机有哪些用途,利用单片机可以实现哪些功能来方便人们的生活如交通灯,时钟,还有手机中,电子玩具等等,它们里面都有单片机的存在来实现某种功能。通过在单片机小组里的学习我简单总结了几点心得和体会: 第一:万事开头难,要勇敢的迈出第一步,不要总找借口说没有学习过就总推脱。凡事都有第一步可以先可简单的来,然后可以逐步的向深层次学习。可以从建项目开始,然后可以找一个简单的小程序先把它敲进单片机内然他运行起来,感觉一下单片机的运行,让自己了解单片机整个运行。 第二:对于知识点,学过的要掌握牢固,对于没有学的和暂时用不到的先不用学习。比如:小灯得点亮就没有用到中断可以先不用看。这样可以避免知识过多记不住的麻烦。对于程序这里的知识点不能只停留在理论层次上,一定要结合着程序进行学习这样才能掌握的很牢靠,当用到哪里的知识点不记得了可以去看书,对于用不到的可以不去看。 第三:程序不要只是看别人得,一定要自己写过才是自己的。开始

不懂可以参考别人的,看看每一句代表着什么意思,能够实现什么现象。明白之后自己再重新写一遍,你会发现看别人的能懂到自己写的时候很困难。当你自己能写出来的时候说明你真懂了。 第四:一定要学会程序调试的方法。有时候把程序写完了然后运行时不能实现理想的现象。这时有人就晕了不知该怎么办,然后就去问别人。当别人找出问题出在哪里时就会恍然大悟。其实当遇到问题一定要自己尝试着解决,不能遇到问题就去问别人。自己一定要掌握解决问的方法和思路。 第五:在学习初期看别人的代码,学习别人的思路这个很有用。通过看别人的代码特别是有多年编程经验的人的程序,可以迅速提高自己的编程水平。也可以结合着别人的手法,与自己的想法结合在一起写出更好的程序。但是切记将学习变成抄袭,不能认为抄袭别人的你就学会了,这样只能使你退步。第六:面对一个新项目时,自己一定要多想想,不要急着去看别人是怎么写的。有的人看到新项目时就去找别人的然后抄一小段,自己在写几句,放在一起完成任务,虽然省时间但不利你的学习。当你遇到一新项目时你应该先想一下程序的构架,想想如何来完成。然后自己动手去写,当你遇到实在是没办法解决的问题时再去请教别人,看他是怎么处理的,学习他的方法。这样起码你自己想过了,有自己的思路不会受到别人的影响,这样更容易提高自己。 在单片机的学习开始时感觉很吃力,在不断的学习过程中慢慢的对

C8051F021单片机实验指导

提要:实验项目 1、单片机的IO编程 实验1 IO开关量输入实验 实验2 IO输出驱动继电器(或光电隔离器)实验 实验3 IO输入/输出------半导体温度传感器DS18B20实验2、单片机的中断系统 实验1 外部外部中断----脉冲计数实验 3、单片机的定时器/计数器 实验1 计数器实验 实验2 秒时钟发生器实验 4、单片机的串口特点和编程 实验1 P C机串口通讯实验 实验2 R S485通讯实验 5、存储器 实验1 RAM存储器读写实验 6、PWM发生器 实验1 PWM发生器(模拟)实验 实验1 PWM发生器(内部)实验 7、WDG看门狗 实验1 外扩WDG(MAX813)实验 实验2 WDG(内部)实验

8、SPI总线 实验1 SPI(模拟)实验-----TLC2543 AD转换实验 实验2 SPI(模拟)实验-----TLV5616 DA转换实验 9、I2C总线 实验1 I2C(模拟)实验-----AT24C01读写实验 实验2 I2C(内部)实验-----AT24C01读写实验 10、综合实验 实验1 HD7279LED数码管显示实验 实验2 HD7279键盘实验 实验3 外部中断---电机转速显示实验 11、步进电机正反转实验 12、TFT液晶显示彩色条纹实验 13、16X16LED点阵显示汉字实验 一、单片机的IO编程 实验1 IO开关量输入实验 目的:学习单片机读取IO引脚状态的的方法。 内容:编程读取IO引脚状态。 设备:EL-EMCU-I试验箱、EXP-C8051F021 CPU板。 编程:首先要把相关的引脚设置在IO的输入状态,然后写一个循环,不停地检测引脚的状态。 步骤: 1、将CPU板正确安放在CPU接口插座上, 2、连线:用导线将试验箱上MCU部分的IO1--- IO8分别连接到SWITCH 的8个拨码开关的K1---K8的输出端子K1---K8上,连接好仿真器。

单片机实验指导书

实验一KEIL 51软件实验 实验目的: 1、掌握KEIL集成开发环境的使用 2、掌握算术运算程序 实验设备:计算机、KEIL51软件 实验内容: 编程实现把片人RAM30H单元和40H单元两个16字节数相加,结果放于30H单元开始的位置处。在KEIL51编译、连接、仿真调试。 实验步骤: 一、运行KEIL51软件,出现图1所示KEIL 51主界面。 图1 KEIL 51主界面 首先用Project菜单下的New Project命令建立项目文件,过程如下。 (1) 选择Project菜单下的New Project命令,弹出如图2所示的Create new Project对话框。 图2 Create New Project对话框 (2) 在Create New Project对话框中选择新建项目文件的位置(最好一个项目建立一个文件夹如E:\project), 输入新建项目文件的名称,例如,项目文件名为example,单击【保存】按钮将弹出如图3所示的Select Device for Target ‘Target 1’对话框,用户可以根据使用情况选择单片机型号。Keil uVision2 IDE几乎支

持所有的51核心的单片机,并以列表的形式给出。选中芯片后,在右边的描述框中将同时显示选中的芯片的相关信息以供用户参考。 图3 Select Device for Target ‘Target 1’对话框 (3) 这里选择atmel公司的AT89c51。单击【确定】按钮,这时弹出如图4所示的Copy Standard 8051 Startup Code to Project Folder and Add File to Project确认框,C语言开发选择【是】,汇编语言开发选择【否】。 单击后,项目文件就创建好了。项目文件创建后,在主界面的左侧的项目窗口可以看到项目文件的内容。 这时只有一个框架,紧接着需向项目文件中添加程序文件内容。 图4 Copy Standard 8051 Startup Code to Project Folder and Add File to Project确认框 二、给项目添加程序文件 当项目文件建立好后,就可以给项目文件加入程序文件了,Keil uVision2支持C语言程序,也支持汇编语言程序。这些程序文件可以是已经建立好了的程序文件,也可以是新建的程序文件,这里我们新建的汇编程序文件后再添加。 (1) 选择文件菜单上的new命令,出现新建文本窗口,如图5所示。

基于MCS-51单片机的可调频率方波发生器课程设计报告

摘要 本实验是基于PHILIPS AT89C51 单片机所设计的,可以实现键位和数字动态显示的一种频率可调方波发生器。通过键盘键入(10HZ-9999HZ)随机频率,使用七段数码管显示,每一个数码管对应一个键位。单片机对各个键位进行扫描,确定键位的输入,然后数码管显示输入的数值,方波发生器输出以数码管显示的数值为频率的方波。 关键词:单片机七段数码管键盘电路频率可调方波发生器

一、目的和功能 1.1 目的: 设计一种频率范围限定且可调的方波发生器,志在产生特定频率的方波。 1.2功能: 假设键盘是4*4的键盘,当键盘输入范围在10hz-9999hz的数字,单片机控制数码管显示该数值,并把该数值当做方波发生器的输入频率,单片机控制该方波发生器以该数值作为频率显示方波,从而得到我们想要频率的方波。 二、硬件设计 2.1 硬件设计思想 键盘的数字和键位关系固定,通过键盘输入产生频率,通过LED数码管显示出来,每一个数码管对应一个键位。基本设备是基于PHILIPS AT89C51单片机,外围设备采用的是4个七段数码管,PHILIPS A T89C51单片机,1个OSCILLOSCOPE 方波发生器,16个Button,若干电阻,电源电池。 2.2 部分硬件方案论述 2.2.1 七段数码管扫描显示方式的方案比较 方案一:静态显示方式:静态显示方式是指当显示器显示某一字符时,七段数码管的每段发光二极管的位选始终被选中。在这种显示方式下,每一个LED数码管显示器都需要一个8位的输出口进行控制。静态显示主要的优点是显示稳定,在发光二极管导通电流一定的情况下显示器的亮度大,系统运行过程中,在需要更新显示内容时,CPU才去执行显示更新子程序,这样既节约了CPU的时间,又提高了CPU的工作效率。其不足之处是占用硬件资源较多,每个LED数码管需要独占8条输出线。随着显示器位数的增加,需要的I/O口线也将增加。

单片机实验二、MCS-51单片机并行端口实验

大连理工大学实验报告 实验时间:2014年6月30日星期1时间:10:00~ 11 :40 实验室(房间号):420实验台号码:班级:姓名: 指导教师签字:成绩: 实验二 MCS-51单片机并行端口实验 一、实验目的和要求 1.目的:进一步熟悉、掌握KEIL软件和DP-51PROC综合试验系统的使用。掌握单片机并行端口的编程和使用方法。 2.要求:编制简单的程序,利用P1口的8位端口使用排线与LED1~LED8按顺序连接,使用一条单独连线将P 3.2与SW1连接,编制一个P1口的输出程序,实现8个LED灯依次点亮的流水灯效果。 二、实验算法 本程序属于无限循环结构,循环中通过判断P3.2的电平来决定彩灯的右移还是左移。主程序中主要变量是A,P3.2,P1,其中A作为数据移动寄存器,P3.2作为按键输入口,为高电平右移A,低电平则左移A,P1由A传送数据,外接LED1~8,实现彩灯移动现象。由于不加延时的循环在时钟频率作用下是很快的,现象是所有的灯一直是亮的状态。,解决这个问题就是在程序里面加延时函数。 三、实验流程图

四、程序清单 ORG 8000H LJMP START ORG 8100H START: MOV SP,#60H SETB P3.2 MOV A,#0FEH LED: JB P3.2,RIGHT RL A AJMP RUN RIGHT: RR A RUN: MOV P1,A CALL DELAY AJMP LED DELAY: PUSH 01H PUSH 02H MOV R1,#00H DELAY1: MOV R2,#00H DJNZ R2,$ DJNZ R1,DELAY1 POP 02H POP 01H RET END 五、实验结果与分析 实验现象:拨动开关闭合,彩灯左移;拨动开关断开,彩灯右移。无问题。 实验中,我们通过控制开关SW1能够控制彩灯移位的方向,SW1=1,即将P3.2口置一,理论上使小灯循环右移;SW1=0,即将P3.2口置零,理论上小灯应循环左移,但是由于实验仿真系统中的LED灯的高位和低位位置刚好相反,导致我们操作时看到的结果正好相反,但实际上实验是成功的。 六、实验体会和建议 通过本次单片机的并行输入输出端口实验,我对Keil仿真调试软件的操作更为熟练;也对单片机的P1等端口的应用有了更清楚的认识,同时学会了分支程序的设计,JB指令的方便和实用性。 七、主要仪器设备

单片机实验报告

实验报告 专业:计算机科学与技术班级:C093 姓名:孙丽君 学号:098677

实验一:数据传送实验 1.实验内容: 将8031内部RAM 40H—4FH单元置初值A0H—A FH,然后将片内RAM 40H—4FH单元中的数据传送到片内RAM 50H—5FH单元。将程序经模拟调试通过后,运行程序,检查相应的存储单元的内容。 2. 源程序清单: ORG 0000H RESET:AJMP MAIN ORG 003FH MAIN:MOV R0,#40H MOV R2,#10H MOV A,#0A0H A1:MOV@R0,A INC R0 INC A DJNZ R2, A1 MOV R1,#40H MOV R0, #50H

MOV R2, #10H A3: MOV A, @R1 MOV @R0, A INC R0 INC R1 DJNZ R2, A3 LJMP 0000H 3.实验结果: 4. CPU 对8031内部RAM存储器有哪些寻址方式? 答:直接寻址,寄存器寻址,寄存器间接寻址,位寻址。

5. 执行程序后下列各单元的内容是什么? 内部RAM 40H~4FH内容:A0~AF 内部RAM 50H~5FH内容:A0~AF 实验二多字节十进制加法实验 1.实验内容: 多字节十进制加法。加数首地址由R0 指出,被加数和结果的存储单元首地址由R1指出,字节数由R2 指出。将程序经模拟调试通过后,运行程序,检查相应的存储单元的内容。 2. 源程序清单: ORG0000H RESET: AJMP MAIN ORG0100H MAIN: MOV SP, #60H MOV R0, #31H MOV@R0, #22H DEC R0 MOV@R0, #33H

单片机原理及其接口技术实验报告

单片机原理及其接口技术实验指导书 实验1 Keil C51的使用(汇编语言) 一.实验目的: 初步掌握Keil C51(汇编语言)和ZY15MCU12BD型综合单片机实验箱的操作和使用,能够输入和运行简单的程序。 二.实验设备: ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。 三.实验原理及环境: 在计算机上已安装Keil C51软件。这个软件既可以与硬件(ZY15MCU12BD型综合单片机实验箱)连接,在硬件(单片机)上运行程序;也可以不与硬件连接,仅在计算机上以虚拟仿真的方法运行程序。如果程序有对硬件的驱动,就需要与硬件连接;如果没有硬件动作,仅有软件操作,就可以使用虚拟仿真。 四:实验内容: 1.掌握软件的开发过程: 1)建立一个工程项目选择芯片确定选项。 2)加入C 源文件或汇编源文件。 3)用项目管理器生成各种应用文件。 4)检查并修改源文件中的错误。 5)编译连接通过后进行软件模拟仿真。 6)编译连接通过后进行硬件仿真。 2.按以上步骤实现在P1.0输出一个频率为1Hz的方波。 3.在2的基础上,实现同时在P1.0和P1.1上各输出一个频率同为1Hz但电平状态相反的方波。 五:程序清单: ORG 0000H AGAIN:CPL P1.0 MOV R0,#10 ;延时0.5秒 LOOP1:MOV R1,#100 LOOP2:MOV R2,#250 DJNZ R2,$ DJNZ R1,LOOP2 DJNZ R0,LOOP1 SJMP AGAIN END 六:实验步骤: 1.建立一个工程项目选择芯片确定选项 如图1-1所示:①Project→②New Project→③输入工程名test→④保存工程文件(鼠标点击保存按钮)

Freescale单片机实验指导书2016

Freescale单片机实验指导书 物理与电子工程学院

目录 实验一飞思卡尔嵌入式实验系统入门—GPIO控制实验 (3) 实验二串口通信(SCI)实验 (6) 实验三键盘中断及LED数码块实验 (11) 实验四定时器输入捕捉与输出比较功能实验............................................. 错误!未定义书签。实验五AD转换与PWM综合实验 .............................................................. 错误!未定义书签。

实验一飞思卡尔嵌入式实验系统入门—GPIO控制实验 一、实验目的: 熟悉CodeWarrior集成开发环境及飞思卡尔嵌入式实验开发系统 掌握AW60的GPIO结构及控制方法 掌握CodeWarrior工程结构及创建汇编工程 熟悉汇编指令及应用汇编语言编程方法 二、实验内容 1.运用CodeWarrior新建工程,进行工程程序编辑、编译、下载、调试 2.利用飞思卡尔嵌入式实验开发系统根据实验需要进行硬件连接 3.根据连接在PTD口上的两个拨动开关的状态,控制接中PTB口上的八个LED处在以下四种不同状态:八个LED亮—灭循环;四个灯交替亮—灭;一个LED左移流水灯;两个LED右移流水灯。 实验接线原理图

图1-1 I/O 口实验接线图 三、实验步骤 1.将飞思卡尔嵌入式实验开发系统实验箱接上电源,写入器BDM 接头插接入核心卡BDM 座,USB 头接入PC 机USB 口。 2.PC 机上启动CodeWarrior ,新建工程LED.mcp(注意设置工程保存路径) 3.观察工程文件结构,查看相应文件。 4.在main.asm 中编辑工程主文件 5.编辑相关子程序 6.编译,如果有错误修改,直至编译通过 7.链接、下载,调试观察LED 灯现象 四、思考题 1.CodeWarrior 建立工程有什么工程框架文件,这些文件的作用? 2.嵌入式开发系统有哪些主要元器件? 3.如果采用模块化设计方法,将系统初始化、LED 灯控制、延时程序等各自形成文件, GND PTB 口 Vcc

基于MCS51单片机步进电机的控制系统设计与实现

学校代码:11509 学号:1005073029 Hefei University 毕业设计(论文) BACH ELOR DISSERTATI ON 论文题目:基于MCS51单片机步进电机的控制系统设计与实现学位类别:工学学士 学科专业: 10级自动化2班 作者姓名: 导师姓名: 完成时间: 2014年5月12日

基于MCS51单片机步进电机的控制系统设计与实现 中文摘要 步进电机最早出现在十九世纪初期,经过一段时期的发展步进电机被广泛应用在各个领域,因为其具有良好的控制作用。所以对步进电机控系统进一步的探索有着更为深远的意义。 本设计是基于单片步进电机的控制系统,硬件设计采用STC89C52单片机为控制核心;选取ULN2003作为驱动器提供脉冲频率,驱动步进电机运转;通过键盘的加减速按钮、正反转按钮和停止按钮来控制步进电机的速度、方向和停止,最后通过测试传感器将这几个参数显示在12864液晶显示器上。软件设计采用KEIL软件工具进行C语言编写,通过各个模块端口的定义,编写出了步进电机加减速控制和正反转的程序,最后通过各模块程序调试对硬件电路施行控制。 本设计以经济实用为原则,通过软硬件结合的设计,实现了对步进电机转动速度和方向的有效控制。该系统具有控制性好,设计成本低等优点。 关键字:STC89C52;步进电机;控制系统;测速传感器

Stepper motor control system design and implementation based on MCS51 microcontroller ABSTRACT The stepping motor was invented in the early 1800s, after a long period of development of the stepper motor is widely used in various fields, because it has good control effect. Therefore, the study of the stepper motor control system has a very important significance. This design is stepper motor control system based microcomputer, hardware design uses STC89C52 microcontroller as the control core; select ULN2003 as driver provides pulse frequency drive stepper motor rotation; through acceleration and deceleration button keyboard,forward and reverse button and stop buttons to control the stepper motor speed, direction and stops, Then these several parameters was displayed on the LCD monitor 12864 by the speed sensor. Software design using KEIL software tools for C language, defined each module port, and write a stepper motor control acceleration and deceleration and reversing the process. finally to control the hardware circuit through debugging. The design principle of economical and practical, through combination of software and hardware designed to achieve the effective control of the stepper motor rotation speed and direction. The system has good controllability and low coat. Keywords: STC89C52; stepper motor; control systems; speed sensor

MCS-51单片机实验

当前位置:网络教学综合平台 > 电子科学与信息技术学院 > <<微机原理与接口技术>> 《微机原理与接口技术》 《微机原理与接口技术》课程教学大纲 (通信工程05级) 课程中文名称:微机原理与接口技术 课程英文名称:Principles of Microcomputer and Interfacing Technology 课程类别:专业课,必修 课程编号: 071210T202 课程归属单位:贵州大学电子科学与信息技术学院 修定时间:2005 年8月 一、课程的性质、任务 1、课程的性质 本课是电子、通信工程类专业的专业基础课限选课程。 本课程以单片机系统为主线,使学生获得单片机应用系统设计的基本理论、基本知识与基本技能,掌握单片机应用系统接口设计、软件编码、调试方法,了解单片机在通信、测控等电子技术应用领域的应用,培养学生的动手能力,初步具备应用单片机系统开发产品的能力。 2、课程要求 通过本课程的学习使学生: 1)熟悉MCS-51单片机的硬件基本原理 2)掌握MCS-51系列单片机的指令系统和汇编语言的程序的编写调试方法。3)掌握MCS-51系列单片机扩展RAM、ROM和I/O的方法,掌握MCS-51单片机常用接口的设计和应用。 3、课程适用专业与学时、学分 授课对象:通信工程05级。 授课学时:总学时72,其中理论教学54,实验18学时。 学分:4 4、先修课程 计算机概论,电路分析,电子技术,数字逻辑,高级语言程序设计等。

5、推荐教材及主要教学参考用书 推荐教材: 胡汉才.单片机原理及其接口技术(第2版),清华大学出版社,2004年。书号:978730207737-4 教学参考书: 1、何立民. 单片机初级教程—原理与应用,北京航空航天大学出版 社,2000年。 2、何立民. 单片机中级教程—原理与应用,北京航空航天大学出版 社,2000年。 3、李朝青. 单片机原理及接口技术,北京航空航天大学出版社,1994 年。 4、薛均义. MCS51/96系列单片微型计算机及其应用,西安交通大学 出版社,2001年。 5、刘乐善. 微型计算机接口技术及应用,华中科技大出版社,书号:7560922104 6、周佩玲等. 16位微型计算机原理.接口及其应用(修订版),中国科学技术大学出版社,2005 7、姚凯学、孟传良.单片机原理与应用,重庆大学出版社,2000年 6、教学方法 ●教学方式:以课堂讲授为主,实验为辅;以多媒体课件为主, 板书为辅。 ●考核方式:期末总成绩=期末考试成绩(70%)+学习表现和平 时成绩(20%)+实验考查成绩(10%)。 二、各章教学内容和要求 第1章、单片机概述 1. 基本要求 了解:单片机的结构特点、发展历史、应用领域以及系列产品。 熟悉:MCS-51单片机的内部组成及信号引脚,8051的存储器结构,并行输入、输出口电路结构,时钟电路、时序及指令序列以及MCS-51单片机的工作方式。 2.重点和难点: 难点:(1)MCS-51单片机的内部结构原理; (2)MCS-51单片机的引脚功能; (3)内部存储器的组成和特殊功能寄存器的功能。 第2章 MCS-51指令系统与汇编语言程序设计 1. 基本要求: 了解:MCS-51指令格式、寻址方式以及指令的执行过程。 熟悉:MCS-51的指令系统――数据传送类指令、算术运算类指令、逻辑运算及移位类指令、控制转移类指令和布尔变量操作类指令。 掌握:MCS-51汇编语言程序设计步骤;要求具备独立设计简单程序、分支程序、循环程序和子程序能力。 2.重点和难点: 重点:MCS-51的指令系统、常用指令的用法;汇编语言程序设计和调试。

单片机实验报告

南京晓庄学院电子工程学院 实验报告 课程名称:单片机系统设计与应用 姓名:森 专业:电子信息科学与技术 年级:14级 学号:05 2016年12 月1 日

实验项目列表 序号实验项目名称成绩指导教师 1 单片机仿真软件的使用 2 单片机I/O接口应用实验——流水灯 3 外部中断实验——工业顺序控制模拟 4 定时/计数器实验——矩形波 5 定时/计数器实验——计数器 6 综合实验 7 8 9 10 注: 1、实验箱端口为com6。 2、芯片选择切换到51 3、停止运行使用实验箱上的复位按钮

实验室号:___ 实验时间:成绩: 实验一仿真软件的使用 1.实验目的和要求 1)熟悉Keil C51软件界面,以及编辑、编译、运行程序的步骤; 2)掌握单片机仿真软件使用和调试的方法。 2.实验原理 Keil C51软件使用 在Keil C51集成开发环境下,建立一个工程并编辑源程序,熟悉Keil C51集成开发环境下各种菜单、命令的使用。 3.主要仪器设备(实验用的软硬件环境) 安装有Keil C51软件的PC机1台 4.操作方法与实验步骤 Keil C51软件使用 (1)建立用户文件夹 (2)建立工程 (3)建立文件并编码。输入以下源程序,并保存在项目所在的目录中 (4)把文件加入工程中 (5)编译工程。编译时观察在界面下方的“Build”页中的到编译错误信息和使用的系统资源情况等。 (6)调试。利用常用调试命令,如复位、运行、暂停、单步、单步跳过、执行完当前子程序、运行到当前行、下一状态、打开跟踪、观察跟踪、反汇编窗口、观察窗口、代码作用范围分析、1#串行窗口、内存窗口、性能分析、工具按钮等命令进行调试,观察并分析调试结果。 (7)目标代码文件的生成。运行生成相应的.HEX文件。 5.实验内容及程序 1)从DATA区地址起始地址为40H的连续10个内存单元的内容传送到XDATA区起始地址为2000H的10个内存单元中。 注意:DATA区地址起始地址为40H的连续10个内存单元必须先赋初值。 P83-5源程序 #include #define uchar unsigned char xdata unsigned char buffer1[10]_at_ 0x2000; //在xdata区定义数组变量BUF1,首地址为2000H data unsigned char buffer2[10]_at_ 0x40; //在data区定义数组变量BUF2,首地址为40H void main(void)

单片机实验指导书

§4 单片机应用系统实验 §4.1 软件实验(使用软件仿真设置) 软件实验一数据传送实验 一、实验内容: 1.编写程序,将内部RAM中30H-5FH中的数据设置为55H。 2.编写程序,将内部RAM中30H-5FH中的内容传送到90H开始的内部RAM 中去。 3.编写程序,将内部RAM中30H-5FH中的内容传送到200H开始的外部RAM 中去(注意实际系统中为扩展的内部RAM)。 二、实验目的与要求: 1.学习与掌握针对不同区域RAM的操作方法。 2.学习与掌握指针的使用与循环程序的编写方法。 3.学习与掌握如何查看各个部分存储器的内容。 三、实验说明: 对于不同区域的RAM操作需要使用不同的寻址方式与指令。对于内部RAM 的低128字节,可以使用直接寻址也可以使用间接寻址;对于内部RAM的高128 字节,只能使用间接寻址;对于外部RAM,只能使用指针DPTR进行间接寻址。 对于数据块的操作一般使用循环程序完成。 编写程序并编译(build)检查语法错误。编译通过后进入调试环境,单步执行 程序检查程序的正确性。最后连续执行程序并检查RAM内容是否正确。 注意主程序的最后应该加一条SJMP $ 指令,以避免由于连续执行时无法停机 四、实验程序流程图: 五、思考题:如果源与目的数据块 均为外部RAM

软件实验二数据分类与校验实验 一、实验内容: 1.编写程序,将内部RAM中30H-5FH中的数据设置为1-48。 2.编写程序,将内部RAM中30H-5FH中的奇数传送到90H开始的内部RAM 中去。 3.编写程序,将内部RAM中30H-5FH中的数据按照奇校验设置最高位。二、实验目的与要求: 1.学习与掌握判断数据奇偶性的方法。 2.学习与掌握分支程序的编写方法。 3.学习与掌握如何给存储器中的数据增加校验位。 三、实验说明: 汇编语言中判断数据的奇偶性很简单,数据的最低位为1为奇数,否则为偶数。分支处理是程序设计中的基本技巧,是根据某一条件是否成立执行或不执行规定操作的方法。数据的奇偶校验不是判断数据的奇偶性,而是判断数据中有奇数个1还是偶数个1。如果是奇校验,则增加校验位后的数据应该具有奇数个1。 编写程序并编译(build)检查语法错误。编译通过后进入调试环境,单步执行程序检查程序的正确性。最后连续执行程序并检查RAM内容是否正确。 (传送奇数) 五、思考题: 1.如果只传送正数或负数应该如何编程? 2.如果只传送大于某个规定数值的数据应该如何编程?

基于MCS51单片机的压力测量 系统的设计与实现

基于MCS51单片机的压力测量 系统的设计与实现 班级; 学号: 姓名: 指导老师:

摘要 以STC-51单片机为核心,应用变阻式应变片测量压力并通过ADC0809的转换,经过单片机处理后在数码管模块显示的智能压力测量系统。是变阻式应变片和51单片机相结合的一个很典型的应用,本系统包括信号采集及转换电路、单片机最小系统、显示模块三个最基本的核心模块。外围扩展了键盘模块、蜂鸣器报警模块,用以调节系统的测量和显示范围。 经试验证明,系统能正常工作且误差在允许误差范围内,符合所有技术指标。 1.方案设计 通过应变片,将机械形变变为电压信号,再通过三级集成放大电路把信号放大,之后,ADC0809把模拟信号转化为数字信号,输入到单片机中,通过按键的控制,将电压的信号输出以数码管的形式显示出来,如果电压信号超出报警上线,蜂鸣

器就发出报警信号。 2.硬件系统设计与分析 (1)应变片与信号放大器的电路分析 应变片运用的是电阻式应变片,原理是吸附在基体材料上的应变电阻随机械性形变而产生电阻变化的现象,即它可以将被测件上的应变变化转化成一种电信号。桥式电路的输入信号是0~10v,经过电路后,输出的电压经过集成运放电路放大后,输入到A/D的In0口,完成信号的输入与传 (2)AD转换分析 A/D转换器是将模拟信号转化为数字信号,start与ale信号接到51到单片机的的p2.6接口,完成信号的输出,而clock接口接到74ls74d的2q接口, D0~D7接到单片机的p1.0~p1.7接口. (3)单片机最小系统分析

单片机的RST是复位接口,刚开始时是低电平,闭合s1开关,接通电源,获得高电平,完成复位。Xtal1与xtal2是晶振电路,为单片机提供工作频率,为12m。P0.0~p0.7接到74hc573的段锁存器,完成数码管的段选择,p2.4~p2,7接到位锁存器,完成数码管的位选择。 (4)按键分析 (5)数码管分析

MCS-51单片机实验基础知识介绍

MCS-51单片机实验基础知识介绍 一、MCS-51单片机(51子系列) (2) 1.基本结构 (2) DIP封装管脚描述 (2) 存储器 (3) 输入/输出口 (4) 中断系统 (4) 定时器/计数器(T/C) (5) 2.寻址方式 (5) 3.指令系统(3大类共111条) (6) 指令系统介绍要点 (7) 助记符、操作数形式,对标志位的影响 (7) 数据传送(两个操作数、源操作数不变) (8) 数据传送(堆栈操作) (8) 数据传送(交换) (9) 算术运算 (9) 逻辑运算 (10) 控制程序转移 (10) 4.汇编语言程序编程 (11) 简单例程 (11) 伪指令 (12) 指令格式 (13) 程序基本格式 (13) 中断服务子程序格式 (14) 5.源程序编译→机器语言目标程序 (14) 二.EXP-51实验板 (15) 三. 接口方法 (16) 实验2 ADC/DAC (17) 实验3 键盘与数码显示接口 (17) 实验4 串行口通信 (18) 四. 单片机开发系统 (19) 1.单片机的开发 (19) 2.单片机开发工具、AEDK (19) 3.单片机开发系统组成 (20) 4.AEDK使用方法简介 (21) 5.程序编辑/调试主要步骤 (21)

一、MCS-51单片机(51子系列) 1.基本结构 DIP封装管脚描述

存储器 包括程序存储器(内/外64K)、内RAM和专用寄存器(SFR) 内部RAM128字节 工作寄存器区1-3,由程序状态字(PSW)的RS1/RS0两位定义。 专用寄存器(不包括PC) 专用寄存器复位状态:除Pn(n=0,3)寄存器和SP寄存器外,其它皆为00H

单片机实验报告

单片机实验报告 【实验一】 一、实验名称 KEIL基本汇编语言测试 二、实验内容 1.建立KEIL工程。添加汇编程序 2.实现将R0的内容送R6,R0的初值设置为38H。

3.实现R1里的数据52H,和R3里的数据1DH相加功能。

上面结果相加后存储到A中,值为6FH 4.数据传送程序编写,把片内RAM的40H-4FH的16个字节的内容传送到片外RAM的 2000H单元开始的位置处。40H-4FH的内容在RAM里随机手动设置(我这里设置的是07,09) 5.发挥题,将上题40H-4FH的内容程序设置为100-115,并实现传输功能。

三、实验总结 1.初步实现了keil软件的应用,从程序的建立到编译再调试,从中领悟到了许多的困惑, 但后来自己也慢慢理解了 2.在第二题中,是将两个数相加,在这个过程中必须要借助累加器,不能直接相加,最 后的结果存放在A存储器中 3.在第三道题中,分别自己手动设置值存放在以2000H开始的16个字节单元中,在学 习过程中要认真的思考和观察,memory的变化 在循环体LOOP中,首先是将最开始40H放入R0中的值再传送到A中,然后又传送到指针指向的位置,传送数据的部分就是这样;然后又用INC R0和INC DPTR 分别将地址向后移一个,为下一个地址的传送做准; DJNZ R2,LOOP 计数减少循环,直至结束; SJMP $ 跳转到循环体LOPP的开始位置,再次循环。 【实验二】 一、实验名称 中断应用C51程序设计 二、实验内容 1.设计一个脉冲计数器,脉冲信号通过开关产生,能对脉冲的个数准确计数,数码管译 码代码参考程序已给出。(掌握外部中断计数器相关寄存器的设置应用!) 程序运行初态为100开始,按下计数就加1,按下清零则恢复为0

相关文档
相关文档 最新文档