单片机数据传送实验报告

单片机数据传送实验报告
单片机数据传送实验报告

实验名称:数据传送实验

实验类型:设计性实验

姓名:袁志生

时间:第五六节课

一、实验目的与要求

实验目的:1、掌握单片机的汇编指令系统及汇编语言程序设计方法。

2、掌握单片机的存储器体系结构。

3、熟悉ke订软件的功能和使用方法。

4、掌握单片机应用程序的调试方法。

实验要求:1、实现单片机内部RAM之间,外部RAM之间以及内部RAM 与外部RAM之间的数据传送。

2、利用Keil软件编辑、汇编、调试、运行实验程序并记录实验数据。

二、设计要求

1、编写程序将00H?OFH 16个数据分别送到单片机内部RAM30H?

3FH 单元中。

2、编写程序将片内RAM 30H?3FH的内容传送至片内RAM 40?4FH单元中。

3、编写程序将片内RAM 40H?4FH单元中的内容传送到外部RAM 4800H?480FH单元中。

4、编写程序将片外4800H?480FH单元内容送到外部RAM 5800H 580FH单元中。

5、编写程序将片外RAM 5800H?580FH单元内容传送凹片内RAM 50H 5FH单元中。

三、实验程序流程框图和程序清单.

厂'

开始

\7

结束

丿

程序清单:

ORG OOOOH

START: MOV RO, ft30H

MOV DPTR, #QW1

MOV R5, #0

MOV R7, #16

LOOP: MOV A, R5

MOVC A, ?A+DPTR

MOV @RO, A

INC RO

INC R5

DJNZ R7, LOOP

LJMP QW2

QW1: DB OOH, O1H, 02H, 03H, 04H, 05H, 06H, O7H

DB OSH, 09H, OAH, OBH, OCH, ODH, OEH, OFH QW2: MOV RO, #30H

MOV Rl, #40H

MOV R5, #16

LOOP1: MOV A, @R0

MOV @R1, A

INC RO

INC R1

DJNZ R5, L00P1

MOV Rl, #40H MOV DPTR, #4800H MOV R5, #16

L00P2: MOV A, @R 1

MOVX @DPTR, A

INC R1

INC DPTR

DJNZ R5, LOOP2

MOV SP, #60H

MOV 11H, #48H

MOV 1OH, #58H

MOV R2, ftOOH

L00P3: MOV DPL, R2

PUSH 1OH

PUSH 11H

POP DPH

MOVX A, @DPTR

POP DPH

MOVX @DPTR, A

INC R2

CJNE R2, #1OH, LOOP3

MOV Rl, #50H

四,实验小结

1通过本次实验熟悉了 keil 软件的功能和使用方法.

2掌握单片机的数据传送类和循环类汇编指令系统,学会了各种数

据传送形式的程序设计方法.

3学握了单片机的调试方法。为以后的实验开了个好头.

五、思考题

1、说明MCS-51系列单片机对片内RAM 和片外RAM 存贮器各有哪些寻 址方式

答:片内RAM 寻址方式有:寄存器寻址方式,直接寻址方式,寄存器 间接寻址方式,位寻址方式,立即数寻址。片外RAM 寻址方式:寄存器间 接寻址。

2、说明指令MOV A, 20H 和MOV C, 20H 中的20H 含义有什么不同传 送指令中的助记符MOV, MOVX, MOVC 各适用于访问哪个存储器空间

L00P4:

MOV DPTR, #5800H MOV

R5, #16

X A, @DPTR

MOV @R1, A

INC R1

INC DPTR

DJNZ R5, L00P4

END

答:(1) MOV A, 20H的含义是字节地址,MOV C, 20H的含义是位地址。

(2)助记符MOV适用于访问片内RAM,助记符MOVX适用于访问外部RAM,助记符MOVC适用于访问程序存储空间。

机械设计实验报告带传动

实验一 带传动性能分析实验 一、实验目的 1、了解带传动试验台的结构和工作原理。 2、掌握转矩、转速、转速差的测量方法,熟悉其操作步骤。 3、观察带传动的弹性滑动及打滑现象。 4、了解改变预紧力对带传动能力的影响。 二、实验内容与要求 1、测试带传动转速n 1、n 2和扭矩T 1、T 2。 2、计算输入功率P 1、输出功率P 2、滑动率ε、效率η。 3、绘制滑动率曲线ε—P 2和效率曲线η—P 2。 三、带传动实验台的结构及工作原理 传动实验台是由机械部分、负载和测量系统三部分组成。如图1-1所示。 1直流电机 2主动带轮 3、7力传感器 4轨道 5砝码 6灯泡 8从动轮 9 直流发电机 10皮带 图1-1 带传动实验台结构图 1、机械部分 带传动实验台是一个装有平带的传动装置。主电机1是直流电动机,装在滑座上,可沿滑座滑动,电机轴上装有主动轮2,通过平带10带动从动轮8,从动轮装在直流发电机9的轴上,在直流发电机的输出电路上,并接了八个灯泡,每个40瓦,作为发电机的负载。砝码通过尼龙绳、定滑轮拉紧滑座,从而使带张紧,并保证一定的预拉力。随着负载增大,带的受力增大,两边拉力差也增大,带的弹性滑动逐步增加。当带的有效拉力达到最大有效圆周力时,带开始打滑,当负载继续增加时则完全打滑。 2、测量系统 测量系统由转速测定装置和扭矩测量装置两部分组成。 (1)转速测定装置 用硅整流装置供给电动机电枢以不同的端电压实现无级调速,转动操纵面板上“调速”旋钮,即可实现无级调速,电动机无级调速范围为0~1500r/min ;两电机转速由光电测速装置测出,将转速传感器(红外光电传感器)分别安装在带轮背后的“U ”形糟中,由此可获得转速信号,经电路处理即可得到主、从动轮上的转速n 1、n 2。 (2)扭矩测量装置 电动机输出转矩1T (主动轮转矩)、和发电机输入转矩2T (从动轮转矩)采用平衡电机外壳(定子)的方法来测定。电动机和发电机的外壳支承在支座的滚动轴承中,并可绕转子的轴线摆动。当电动机通过带传动带动发电机转动后,由于受转子转矩的反作用,电动机定子将向转子旋转的相反方向倾倒,发电机的定子将向转子旋转的相同方向倾倒,翻转力的大小可通过力传感器测得,经过计算电路计算可得到作用于电机和发电机定子的转矩,其大小与主、从动轮上的转矩1T 、2T 相等。

单片机数据传送实验报告

实验名称: 数据传送实验 实验类型: 设计性实验 姓名:袁志生 时间:第五六节课 一、实验目的与要求 实验目的:1、掌握单片机的汇编指令系统及汇编语言程序设计方法。 2、掌握单片机的存储器体系结构。 3、熟悉keil软件的功能和使用方法。 4、掌握单片机应用程序的调试方法。 实验要求:1、实现单片机内部RAM之间,外部RAM之间以及内部RAM 与外部RAM之间的数据传送。 2、利用Keil软件编辑、汇编、调试、运行实验程序并记录实验数据。 二、设计要求 1、编写程序将00H~0FH 16个数据分别送到单片机内部RAM 30H~3FH 单元中。 2、编写程序将片内RAM 30H~3FH的内容传送至片内RAM 40~4FH单元中。 3、编写程序将片内RAM 40H~4FH单元中的内容传送到外部RAM 4800H~480FH单元中。 4、编写程序将片外4800H~480FH单元内容送到外部RAM 5800H~580FH 单元中。 5、编写程序将片外RAM 5800H~580FH单元内容传送回片内RAM 50H~5FH 单元中。

三、实验程序流程框图和程序清单.

程序清单: ORG 0000H START: MOV R0, #30H MOV DPTR, #QW1 MOV R5, #0 MOV R7, #16 LOOP: MOV A, R5 MOVC A, @A+DPTR MOV @R0, A INC R0 INC R5 DJNZ R7, LOOP LJMP QW2 QW1: DB 00H, 01H, 02H, 03H, 04H, 05H, 06H, 07H DB 08H, 09H, 0AH, 0BH, 0CH, 0DH, 0EH, 0FH QW2: MOV R0, #30H MOV R1, #40H MOV R5, #16 LOOP1: MOV A, @R0 MOV @R1, A INC R0 INC R1 DJNZ R5, LOOP1 MOV R1, #40H MOV DPTR, #4800H MOV R5, #16 LOOP2: MOV A, @R1 MOVX @DPTR, A INC R1 INC DPTR DJNZ R5, LOOP2 MOV SP, #60H MOV 11H, #48H MOV 10H, #58H MOV R2, #00H LOOP3: MOV DPL, R2 PUSH 10H PUSH 11H

单片机第一次实验报告

单片机第一次实验报告 姓名: 学号: 班级:

实验报告 课程名称:微机原理与接口技术指导老师:学生姓名:学号:专业:自动化日期:20140327 地点: 实验一实验名称 1. 实验目的和要求 1.掌握keil软件和STC-ISP 软件的使用方法 2.点亮第一个发光管. 3.点亮1,3,5,7发光管 4.尝试让第一个发光管闪烁. 2. 主要仪器设备 1.一台pc机 2.一个单片机开发板 点亮第一个发光管. #include void main () { P1 &=0xFE; while(1) } 点亮1,3,5,7发光管 void main () { P1 &=0xAA;

while(1) } 尝试让第一个发光管闪烁. #include #define uint unsigned int #define uchar unsigned char void delay_ms(uint timer) { uchar j = 0; while(timer--) { for(j = 124;j>0;j--) { ; } } } void main (void) { while(1) { P1 &=0xFE; delay_ms(100); P1 |=0x01; delay_ms(100); } }

实验心得:这第一次试验,没准备,所以这次实验一上机啥都不会,也不知道该做啥,在同学的帮助下安装了程序和驱动,代码也是问同学才明白的。第一个代码,通过很顺利,但是测试第二个代码的时候电脑无法连接板子,后来重新安装了驱动才就能连接了。虽然感觉还是好多不懂的,不过还是学到了一些东西,有一点成就感。

单片机实验报告

实验报告 专业:计算机科学与技术班级: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、理解受限信道上的数据传输率; 2、观察眼图,分析不同参数设置对眼图的影响。 二、实验原理 当一个信号通过一个受限的信道时,它的波形将发生变化。如图5-1所示,当数据传输率提高时,波形的失真也增大,甚至使得数据不能传输。 图5-1 受限信道中的波形的前后变化 眼图通常用于实时观察一个数字数据序列,它能够表达出很多有关传输质量的信息,而做这些仅一个常用的示波器和一位时钟序列就可以了。通过观察眼图,可以测量出传输的质量及接收到的数据中发生错误的可能性。其原理图如图5-2所示: 图5-2 眼图产生的原理 一个典型的眼图通常是用来显示传输在一个受限信道上的二进制序列,而这个受限的信道是忽略了噪音的。如图5-3所示: 图5-3眼图

三、实验设备 1、主机TIMS-301F 2、TIMS基本插入模块 (1)TIMS-153序列产生器(Sequence generator) (2)TIMS-148音频振荡器(Audio Oscillator) (3)TIMS-153 可调低通滤波器(Tuneable LPF) 3、计算机 4、PICO虚拟设备 四、实验步骤: 1、将TIMS系统中的音频振荡器(Audio Oscillator)、序列产生器(Sequence generator)、可调低通滤波器(Tuneable LPF)三个模块按图5-4连接。 2、PICO软件的设置:打开PICO软件,设置眼图参数。在“Settings”菜单中选择“Options”选项,如下图所示: 在弹出的窗口菜单中,在“Sco pe options”里的“Data to display”项选择“Accumulate”。如下图所示:

单片机实验报告

院系:计算机科学学院专业:智能科学与技术年级: 2012 学号:2012213865 姓名:冉靖 指导教师:王文涛 2014年 6月1日

一. 以下是端口的各个寄存器的使用方式: 1.方向寄存器:PxDIR:Bit=1,输出模式;Bit=0,输入模式。 2.输入寄存器:PxIN,Bit=1,输入高电平;Bit=0,输入低电平。 3.输出寄存器:PxOUT,Bit=1,输出高电平;Bit=0,输出低电平。 4.上下拉电阻使能寄存器:PxREN,Bit=1,使能;Bit=0,禁用。 5.功能选择寄存器:PxSEL,Bit=0,选择为I/O端口;Bit=1,选择为外设功能。6.驱动强度寄存器:PxDS,Bit=0,低驱动强度;Bit=1,高驱动强度。 7.中断使能寄存器:PxIE,Bit=1,允许中断;Bit=0,禁止中断。 8.中断触发沿寄存器:PxIES,Bit=1,下降沿置位,Bit=0:上升沿置位。 9.中断标志寄存器:PxIFG,Bit=0:没有中断请求;Bit=1:有中断请求。 二.实验相关电路图: 1 MSP430F6638 P4 口功能框图: 主板上右下角S1~S5按键与MSP430F6638 P4.0~P4.4口连接: 2按键模块原理图: 我们需要设置两个相关的寄存器:P4OUT和P4DIR。其中P4DIR为方向寄存器,P4OUT 为数据输出寄存器。 主板上右下角LED1~LED5指示灯与MSP430F6638 P4.5~P4.7、P5.7、P8.0连接:

3 LED指示灯模块原理图: P4IN和P4OUT分别是输入数据和输出数据寄存器,PDIR为方向寄存器,P4REN 为使能寄存器: #define P4IN (PBIN_H) /* Port 4 Input */ #define P4OUT (PBOUT_H) /* Port 4 Output */ #define P4DIR(PBDIR_H) /* Port 4 Direction */ #define P4REN (PBREN_H) /* Port 4 Resistor Enable */ 三实验分析 1 编程思路: 关闭看门狗定时器后,对P4.0 的输出方式、输出模式和使能方式初始化,然后进行查询判断,最后对P4.0 的电平高低分别作处理来控制LED 灯。 程序流程图: 2 关键代码分析: #include void main(void) { WDTCTL = WDTPW + WDTHOLD; // 关闭看门狗 P4DIR |= BIT5; // 设置4.5口为输出模式 P4OUT |= BIT0; // 选中P4.0为输出方式 P4REN |= BIT0; // P4.0使能 while (1) // Test P1.4 { if (P4IN & BIT0) //如果P4.0为1则执行,这是查询方式按下去后是低,否则为高

单片机实验内容

实验一P1口输入输出实验、继电器控制、音频控制 一、实验目的: 1.学习I/O端口的使用方法 2.掌握继电器控制的基本方法,了解用弱点控制强电的工作原理 3.学习单片机汇编语言源程序的编制方法和调试方法,学习延时子程序的编写和使用 4.了解音频发声原理 二、实验要求: 1.P1口做输出口,接8只发光二极管,编写程序使发光二极管循环点亮。 2.P1.0、P1.1作输入口,接两个拨动开关,P1.2、P1.3作输出口接两个发光二极管,编程 读取开关状态,并在二极管上显示出来。 3.利用单片机的端口,输出电平控制继电器的吸合和断开,实现对外部装置的控制。 4.用端口输出不同频率的脉冲,控制喇叭发出不同音调。 5.用P1.0和延时子程序实现占空比可调的PWM电压波形。 三、实验说明: 1. P1口用为输入口时,必须先对它置“1”才能正确读入数据。 2. 继电器可以实现电子电路和电气电路的连接桥梁。其控制电压是5V,控制端为高电平时继电器的工作常开触点吸合,电气线路连接;控制端为低电平时,触点断开,电气线路切断。 3. 声音的频率由端口输出时延时时长来控制,输出的方波经放大滤波后驱动扬声器发声。 4. PWM是脉宽调制电压信号,可以通过占空比(脉冲中高电平与低电平的宽度比)来输出可调模拟电压,是单片机上常用的模拟量输出方法。例如50%(5:5),10%(1:9),90%(9:1)占空比。 四、实验思考题: 将1位十六进制数存放在40H单元中,利用查表法将其转换为相应的ASCII码 实验二外部中断实验 一、实验目的: 1.学习外部中断技术的基本使用方法 2.学习中断处理程序的编程方法 二、实验要求: 1.用单次脉冲申请中断INT0,在中断处理程序中对输出信号进行反转。 2.用单次脉冲申请中断INT1,在中断处理程序中实现8个小灯左移点亮1次。 三、实验思考题: 1. 相应中断请求的条件是什么? 2. 写出同级中断的查询优先次序。

微机原理上机实验(一)实验报告数据传输传送实验

微机原理上机实验(一)实验报告 主题:数据传送 一、实验目的 熟悉星研集成环境软件的使用方法。熟悉Borland公司的TASM编译器 熟悉8086汇编指令,能自己编写简单的程序,掌握数据传输的方法。 二、实验内容 1、熟悉星研集成环境软件。 2、编写程序,实现数据段的传送、校验。 三、实验代码 _STACK SEGMENT STACK DW 100 DUP() _STACK ENDS DATA SEGMENT DATA ENDS CODE SEGMENT START PROC NEAR ASSUME CS:CODE, DS:DATA, SS:_STACK MOV AX, DATA ;将数据段的地址存入AX寄存器。AX=004DH MOV DS,AX ;对DS段寄存器赋值。DS=004DH MOV ES,AX ;对ES段寄存器赋值。ES=004DH NOP ;空指令

MOV CX,100H ;把100H送到CX寄存器。CX=0100H MOV SI,3000H ;把3000H送到SI寄存器。SI=3000H MOV DI,6000H ;把6000H送到DI寄存器。DI=6000H CALL Move ;调用Move子程序 MOV CX,100H ;把100H送到CX寄存器。CX=0100H MOV SI,3000H ;把3000H送到SI寄存器。SI=3000H MOV DI,6000H ;把6000H送到DI寄存器。DI=6000H CLD ;将DF标志位置0。设置SI、DI为递增移动,DF=0 REPE CMPSB ;比较[SI]和[DI],CX减1,ZF=0或CX=0跳出 ;若ZF=0或CX=0不成立,则继续比较。SI和DI持续递增 1 JNE ERROR ;若ZF=0,跳到ERROR子程序 TRUE: JMP $ ;跳到目前地址 ERROR: JMP $ ;跳到目前地址 Move PROC NEAR ;Move子程序 CLD ;将DF标志位置0。设置SI、DI为递增移动。DF=0 CMP SI,DI ;比较SI、DICF=SF=PF=1,仅有该三个标志位变化JZ Return ;如果相等,跳到Return JNB Move1 ;如果SI大于等于DI,跳到Move1 ADD SI,CX ;SI=SI+CX。SI=3100H DEC SI ;SI减1。SI=30FFH

单片机实验报告

单片机实验报告 班级:信科09-3 姓名:王艳辉 学号:08093581 指导老师:陈岱 完成时间:2012年1月8日

实验一 I/O接口P1、P3口实验 一,实验题目 1,用P1口做输出,接八只发光二极管,编写程序,使发光二极管循环点亮。 2,用P3口做输入口,接八个扭子开关,通过P1口在实验箱上LED 灯上输出,编写程序读取开关状态,将此状态,在发光二极管上显示出来。 二,实验目的 1.熟悉使用CPLD实验箱进行单片机实验的方法。 2.设计出符合实验要求的CPLD硬件电路。 3.学习单片机仿真开发软件Keil 51的使用方法。 4.学习MCS-51汇编语言编程方法。 5.学习Pl口的使用方法。 6.学习延时子程序的编写和使用。 三,实验准备 P1和P3口为准双向口,Pl、P3的每一位都能独立地定义为输出线或输入线,作为输入时,必须向锁存器相应位写入“l”,该位才能作为输入。803l中所有口锁存器在复位时均置为“1”,如果后来在口锁存器写入过“0”,在需要时应写入一个“l”使它再成为一个输入。再来看一下延时程序的实现。现常用的有两种方法:一是用定时器中断来实现,一是用指令循环来实现。在系统时间允许的情况下可以采用后一种方法。根据实验系统的工作主频,计算出延时0.1s的

时间常量,编制延时程序: MOV R7, #200 (1) DEl:MOy R6,#X (2) DE2:DJNZ R6,DE2 (3) DJNZ R7,DEl (4) 上面MOV、DJNZ指令均需两个机器周期,所以每执行一条指令需1÷0.256us现求出X值: (X*1/0.256+1/0.256+l/0.256)*200+l/0.256=0.1*10^6。解出X=l26。代入上式可知实际延时约0.100O04s,近似符合要求。 四,实验步骤 (1)打开MAX+PLUSⅡ CPLD实验开发系统。 (2)点击File菜单Project子菜单之Name项,出现Project Name 对话框。为当前的实验选择恰当的路径并创建项目名称”E:\AT8031”。(3)点击File菜单之New项,出现对话框,为选择输入方式,选择Graphic Editor File。出现图形编辑窗口。 (4)双击空白编辑区,出现Enter Symbol 对话框。 (5)从Symbol Libraries项中选择mf子目录(双击),在prim子目录中选择输入脚input 和输出引脚output。 (6)在图形编辑窗口中的左侧点击连线按钮,并完成对电路的连线。(7)在引脚的PIN_NAME处左键双击使之变黑,键入引脚名称。

数据传送实验报告-文少轩

数据传送实验报告 西安交通大学 文少轩 一、实验目的 1.熟悉8086指令系统的数据传送指令及8086的寻址方式; 2.利用Turbo Debugger(TD.EXE)调试工具来调试汇编语言程序。 二、实验设备 IBM-PC 微型计算机一台 三、实验要求 1. 复习8086指令系统中的数据传送类指令和8086的寻址方式; 2. 预习Turbo Debugger的使用方法; 3. 按照题目要求预先编写好实验中的程序段。 四、实验内容及数据记录 1.通过述程序段的输入和执行来熟悉Turbo Debugger的使用,并通过显示器屏幕观察程 序的执行情况。练习程序段如下: 2.用以下程序段将一组数据压入PUSH堆栈区,然后通过三种不同的出栈方式出栈,查看

4.设置各寄存器及存储单元的内容如下:

5.将DS:1000H字节存储单元中的内容送到DS:2020H单元中存放。试分别用8086的直接 寻址、寄存器间接寻址、变址寻址、寄存器相对寻址传送指令编写程序段,并上机验证结果。 先对DS:1000H和DS:2020H单元赋值,结果如下:

6.设AX寄存器中的内容为1111H,BX寄存器中的内容为2222H,DS:0010H单元中的内容 为3333H。将AX寄存器中的内容与BX寄存器中的内容交换。试编写程序段,并上机验 7.设DS=6000H,ES=6100H,存储器中的内容如下图所示。要求将DS段的内容传送到AX 寄存器,DS

五、实验小结 1.Turbo Debugger界面虽然不华丽,但是很实用; 2.各寄存器的状态、内容直观地从界面中显示出来,程序执行造成的内容变化以高亮状态显示,方便跟踪程序每一步运行的结果; 3.修改各寄存器或者某内存单元的内容很方便,可以直接从键盘输入。 4.

单片机实验报告

单片机实验报告 实验一:存储器块清零或赋值 一、实验目的 1 熟悉存储器的读写方法,熟悉51汇编语言结构。 2 熟悉循环结构程序的编写。 3 熟悉编程环境和程序的调试。 二、实验内容 指定存储器中某块的起始地址和长度,要求将其内容清零或赋值。例如将4000H开始的10个字节内容清零或全部赋值为33H。 注意: 1 文件不要用中文名称保存时不要用中文路径(目录),不要放在“桌面”上,源文件和工程要放在同一个文件夹下,文件名称和路径名称不要太长。 2 查看存储器菜单使用:窗口---数据窗口---XDATA 观察存储器内容 3 查看SFR:窗口---CPU窗口查看CPU寄存器SFR 4 单步执行:执行---单步执行(F8),每执行一步,查看每条语句涉及到的寄存器和存储器内容的变化结果,是否是指令所要得到的结果,如不是,检查错误原因,修改。 5利用多种执行方法和观察各种窗口调试程序,直至程序满意为止。 三、实验仪器 微机、VW,WA VE6000编程环境软件,(单片机实验箱) Lab6000/Lab6000通用微控制器MCS51实验 四、实验步骤 1、新建工程文件。(注意:文件不要用中文名称保存时不要用中文路径)

2、编写程序。 3、运行和调试过程。 外部数据存储器(4000H为首地址的10个字节)中初始状态(随便赋值FFH): 单步执行程序,观察SFR中外部地址指针的变化; 全速执行程序,可以看到外部数据存储器已赋值33H:

五、实验结果 可以看到外部数据存储器已赋值33H: 六、问题讨论 本次实验能够清楚地了解存储器中数据的移动和赋值过程,通过单步执行,对于每一步的指令操作过程能够了解如何执行,查看每条语句涉及到的寄存器和存储器内容的变化结果。同时,学习掌握汇编程序的编写和调试过程。 实验二:存储块移动 一、实验目的 1 熟悉51汇编语言程序结构。 2 熟悉循环结构程序的编写,进一步熟悉指令系统。 3 熟悉编程环境和程序的调试。 二、实验内容 将指定源地址(3000H)和长度(10字节)的存储块移动到目的地址(3050H)。 注意:在编程环境中,可以通过软件仿真,观察程单片机运行情况。 由于源地址和目的地址的内容都一样(FF),调试时看不到内容的变化,所以需要给源地址内容赋值。有多种赋值方式(比如在搬移循环体内,赋值一个搬移一个,请在空白处添

单片机实验报告

南京晓庄学院电子工程学院 实验报告 课程名称:单片机系统设计与应用 姓名:森 专业:电子信息科学与技术 年级: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)

单片机数据传送实验报告

竭诚为您提供优质文档/双击可除单片机数据传送实验报告 篇一:单片机数据传送实验报告 实验名称:数据传送实验 实验类型:设计性实验 姓名:袁志生 时间:04.17第五六节课 一、实验目的与要求 实验目的:1、掌握单片机的汇编指令系统及汇编语言程序设计方法。 2、掌握单片机的存储器体系结构。 3、熟悉keil软件的功能和使用方法。 4、掌握单片机应用程序的调试方法。 实验要求:1、实现单片机内部RAm之间,外部RAm之间以及内部RAm与外部RAm之间的数据传送。 2、利用Keil软件编辑、汇编、调试、运行实验程序并记录实验数据。 二、设计要求

1、编写程序将00h~0Fh16个数据分别送到单片机内部RAm30h~3Fh单元中。 2、编写程序将片内RAm30h~3Fh的内容传送至片内RAm40~4Fh单元中。 3、编写程序将片内RAm40h~4Fh单元中的内容传送到外部RAm4800h~480Fh单元中。 4、编写程序将片外4800h~480Fh单元内容送到外部RAm5800h~580Fh单元中。 5、编写程序将片外RAm5800h~580Fh单元内容传送回片内RAm50h~5Fh单元中。 三、实验程序流程框图和程序清单. 程序清单: oRg0000h sTART:moVR0,#30h moVDpTR,#Qw1 moVR5,#0 Loop: Qw1: Qw2: Loop1: Loop2: Loop3:

R7,#16A,R5A,@A+DpTR@R0,AR0IncR5R7,LoopQw200h,01h,02 h,03h,04h,05h,06h,07h08h,09h,0Ah,0bh,0ch,0Dh,0eh,0F hR0,#30hR1,#40hmoVR5,#16A,@R0@R1,AR0R1R5,Loop1R1,#4 0hmoVDpTR,#4800hR5,#16A,@R1@DpTR,AR1DpTRR5,Loop2moV sp,#60h11h,#48h10h,#58hR2,#00hDpL,R210h11hDphmoVxA, @DpTRmoVmoVmoVcmoVIncDJnZLJmpDbDbmoVmoVmoVmoVIncInc DJnZmoVmoVmoVmoVxIncIncDJnZmoVmoVmoVmoVpushpushpop pop moVx Inc cJne moV moV moV Loop4:moVx moV Inc Inc DJnZ enD 四,实验小结

单片机实验报告

单片机实验报告 学院:姓名:学号:指导老师:

目录 第一章实验内容、目的及要求 (2) 一、内容 (2) 二、目的及要求 (3) 第二章实验 (3) 实验一数字量输入输出实验 (3) 实验二定时器/计数器实验 (4) 实验三A/D、D/A转换实验 (11) 实验四串行通信设计 (20) 第三章实验体会 (28)

第一章实验内容、目的及要求 一、内容 实验一数字量输入输出实验 阅读、验证C语言程序功能。使用汇编语言编程,完成实验指导书之“3.1 数字量输入输出实验”基本实验项目。 实验二定时器/计数器实验 阅读、验证C语言程序功能。使用汇编语言编程,完成实验指导书之“3.3 定时/计数器实验”基本实验项目。 提高部分:定时器控制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亮……一直循环下去。 实验三A/D、D/A转换实验 阅读、验证C语言程序功能。使用汇编语言编程,完成实验指导书之“4.3 A/D转换实验”项目(P64)和“4.4 D/A转换实验”项目。 提高部分:(要求:Proteus环境下完成) 小键盘给定(并显示工作状态),选择信号源输出波形类型(D/A 转换方式),经过A/D采样后,将采样数据用LED灯,显示当前模拟信号值大小及变化状态。 实验四串行通讯实验 阅读、调试C语言程序功能。使用汇编语言编程,完成实验指导书之“3.7 串口通讯实验”项目。(要求:实验仪器上完成)提高部分:(要求:Proteus环境下完成) 利用单片机实验系统,实现与PC机通讯。功能要求:将从实验系统键盘上键入的数字,字母显示到PC机显示器上,将PC机键盘输入的字符(0-F)显示到单片机实验系统的数码管上。

C51单片机实验报告

实验报告册 课程名称:单片机原理与应用B 指导老师:xxx 班级:xxx 姓名:xxx 学号:xxx 学期:20 —20 学年第学期南京农业大学工学院教务处印

实验目录实验一:指示灯/开关控制器 实验二:指示灯循环控制 实验三:指示灯/数码管的中断控制 实验四:电子秒表显示器 实验五:双机通信

姓名:学号:班级:成绩: 实验名称:指示灯/开关控制器 一、实验目的: 学习51单片机I/O口基本输入/输出功能,掌握C语言的编程与调试方法。 二、实验原理: 实验电路原理图如图所示,图中输入电路由外接在P1口的8只拨动开关组成;输入电路由外接在P2口的8只低电平驱动的发光二极管组成。此外,还包括时钟电路、复位电路和片选电路。 在编程软件的配合下,要求实现如下指示灯/开关控制功能:程序启动后,8只发光二极管先整体闪烁3次(即亮→暗→亮→暗→亮→暗,间隔时间以肉眼可观察到为准),然后根据开关状态控制对应发光二极管的亮灯状态,即开关闭合相应灯亮,开关断开相应灯灭,直至停止程序运行。 三、软件编程原理为; (1)8只发光二极管整体闪烁3次

亮灯:向P2口送入数值0; 灭灯:向P2口送入数值0FFH; 闪烁3次:循环3次; 闪烁快慢:由软件延时时间决定。 (2)根据开关状态控制灯亮或灯灭 开关控制灯:将P1口(即开关状态)内容送入P2口;无限持续:无条件循环。 四、实验结果图: 灯泡闪烁:

按下按键1、3、5、7:

经检验,其余按键按下时亦符合题目要求。 五、实验程序: #include"reg51.h" void delay(unsigned char time) { unsigned int j=15000; for(;time>0;time--) for(;j>0;j--); } void main(){ key,char i; for(i=0;i<3;i++) { P2=0x00; delay(500); P2=0xff; delay(500) } while(1) { P2=P3;

星期四的实验报告-带传动

实验二 带传动的滑动率和效率测定 一、实验目的 1.了解实验台的结构及工作原理,了解机械的转矩、转速等机械参数的测量手段。 2.观察带传动的弹性滑动和打滑现象,加深对带传动工作原理和设计准则的理解。 3.通过对滑动曲线(ε —F 曲线)和效率曲线(η—F 曲线)的测定和分析,深刻认识带传动特性、承载能力、效率及其影响因素。 二、实验的理论依据 带传动是靠带与带轮间的摩擦力来传递运动和动力的。因此,带传动需以一定的预紧力F 0紧套在两个带轮上,使带与带轮的接触面上产生正压力。工作时,由于带与轮面间的摩擦力作用,使带传动的紧边拉力F 1和松边拉力 F 2不等,两者之差F =F 1-F 2, 即为带的有效拉力,它等于带沿带轮的接触弧上摩擦力的总和F f 。在一定条件下,摩擦力有一极限值,如果工作载荷超过极限值,带就在轮面上打滑,传动不能正常工作。预紧力F 0愈大,带传动的传动能力愈大。 由于带是弹性体,受力不同时带的弹性变形不等。紧边拉力大,相应的伸长变形量也大。在主动轮上,当带从紧边转到松边时,拉力逐渐降低,带的弹性变形逐渐变小而回缩,带的运动滞后于带轮。也就是说,带与带轮之间产生了相对滑动。而在从动轮上,带从松边转到紧边时,带所受到的拉力逐渐增加,带的弹性变形量也随之增大,带微微向前伸长,带的运动超前于带轮。带与带轮间同样也发生相对滑动。这种由于带的弹性变形而引起的带与带轮之间的滑动,称为弹性滑动。这种弹性滑动在带传动中是不可避免的,其结果是使从动带轮的圆周速度低于主动轮的圆周速度,使传动比不准确,并引起带传动效率的降低以及带本身的磨损。 带传动中滑动的程度用滑动率表示,其表达式为 %100)1(1 122121?-=-= n D n D v v v ε (1) 式中 v 1、v 2——分别为主动轮、从动轮的圆周速度,单位:m/s ; n 1、n 2——分别为主动轮、从动轮的转速,r/min ; D 1、D 2——分别为主动轮、从动轮的直径,mm 。 如图2-1所示,带传动的滑动(曲线1)随着带的有效拉力F 的增大而增大,表示这种关系的曲线称为滑动曲线。当有效拉力F 小于临界点F '点时,滑动率与有效拉力F 成线性关系,带处于弹 性滑动工作状态;当有效拉力F 超过临界点F '点以后,滑动率急剧上升,带处于弹性滑动与打滑同时存在的工作状态。当有效拉力等于F max 时,滑动率近于直线上升,带处于完全打滑的工作状态。图中曲线2为带传动的效率曲线,即表示带传动效率η与有效拉力F 之间关系的曲线。当有效拉力增加时,传动效率逐渐提高,当有效拉力F 超过临界点F '点以后,传动效率急剧下降。 带传动最合理的状态,应使有效拉力F 等于或稍小于临界点F ',这时带传动的效率最高,滑动率ε =1% ~ 2%, 并且还有余力负担短时间(如启动时)的过载。 三、实验台的结构与工作原理 本实验的设备是PC —A 型带传动实验台。该实验 1-滑动曲线 2-效率曲线 图2-1 带传动的滑动曲线和效率曲

微机原理及应用 上机实验报告2 数据传送

课程名称:_________微机原理及应用___________指导老师:_____钟崴_______成绩:__________________ 实验名称:_________数据传送___________实验类型:________________同组学生姓名:__________ 一、实验目的和要求(必填)二、实验内容和原理(必填) 三、主要仪器设备(必填)四、操作方法和实验步骤 五、实验数据记录和处理六、实验结果与分析(必填) 七、讨论、心得 一、实验目的和要求(必填) 掌握MCS-51指令系统中的数据传送类指令的应用,通过实验,切实掌握数据传送类指令的各种不同的寻址方式的应用。 二、实验内容和原理(必填) 1.编制一段程序,要求程序中包含7中不同寻址方式。 2.编制一段程序,将片内RAM30H~32H中的数据传送到片内RAM38H~3AH中。 3.编制一段程序,将片内RAM30H~32H中的数据传送到片外RAM1000H~1002H中。 4.编制一段程序,将片内RAM40H~42H中的数据与片外RAM2000H~2002H中的数据互换。 三、主要仪器设备(必填) PC机一台。 四、操作方法和实验步骤 逐段编制程序,汇编无误后,用连续或者单步的方式运行程序,检查程序的运行结果,看是否达到预期的效果。 五、程序清单 1. ORG 0000H CLEAR MOV R0,#30H ;间接寻址 MOV A,#40H ;立即寻址 MOV @R0,A ;间接寻址 MOV A,30H ;直接寻址 MOV DPTR,#0100H ;间接寻址 MOV A,#36H MOVX @DPTR,A MOV R0,#50H ;立即寻址 MOV A,#10 MOVC A,@A+DPTR ;变址寻址 END

单片机实验报告

汇编语言程序设计 1)编译后,系统提示:目标越界,改为AJMP后编译通过,将ORG 07FFH 改为0800H, 系统提示:目标越界,这说明AJMP可以在2KB 范围内无条件转移。 2.改为LJMP编译通过,这说明LJMP可以在64KB 范围内无条件转移。 3.将LJMP LP1改为SJMP LP0,机器码为80FC,其中FC为偏移量,它是一个补码,01H~7FH说明向PC(增大√、减小)方向跳,80H~FFH说明向PC(增大、减小√)方向跳,这说明SJMP可以在当前PC值-128B~+127B 范围内无条件转移。 1、X、Y以补码的形式存放在20H、21H中,编写程序实现如下函数: 实验程序: MOV A,20H JZ ZREO JB ACC.7,NEG MOV 21H,#01H SJMP PEND ZREO:MOV 21H,A SJMP PEND NEG:MOV 21H,#0FFH PEND:SJMP$ END 结果记录: 1.将数89H存放于20H中,运行程序,观察到21H单元中的内容为FF; 2.将数05H存放于20H中,运行程序,观察到21H单元中的内容为01; 3.将数00H存放于20H中,运行程序,观察到21H单元中的内容为00; 2、将20H~27H中的压缩BCD码拆为两个单字节BCD码,存放在以2000H为首地址的外部RAM 中。 实验程序: MOV R0,#20H MOV R7,#08H MOV DPTR,#2000H LOOP:ACALL CZ INC R0

INC DPTR DJNZ R7,LOOP SJMP $ CZ:MOV A,@R0 SWAP A ANL A,#0FH MOVX @DPTR,A INC DPTR MOV A,@R0 ANL A,#0FH MOVX @DPTR,A RET END 结果记录: 20H 21H 22H 23H 24H 25H 26H 27H 87H 54H 36H 23 19H 43H 77H 69H 2000H 2002H2004H2006H2008H200AH200CH200EH 07H 04H 06H 03H 09H 03H 07H 09H 2001H 2003H2005H2007H2009H200BH200DH200FH 08H 05H 03H 02H 01H 04H 07H 06H 1、数在计算机中是以补码形式存放的,因此,判断数据的正负,往往采用判断第7 位,是0 则为正数,是1 则为正数 2、实验内容2中JZ ZREO 的机器码为600DH ,其中0DH 为偏移量,当前PC值0004 加上这个偏移量等于0011H ,这正是即将执行的程序的首地址,即标号为ZREO 语句。程序计算器PC的功能是指向下一条指令,因此,跳转语句是依靠偏移量来改变程序计数器PC的值,从而改变程序的流向。 3、分支程序一定要注意分支的语句标号的正确性,每一分支之间必须用跳转(如SJMP)指令分隔,并跳转到相应标号。 4、子程序往往用间址寄存器传递数据,内部RAM用@Ri ,外部RAM用@DPTR ,绝对不能用直接地址。最后以RET 结尾。 5、循环程序往往用寄存器传递数据,用R7控制循环次数,用调用作为循环体,用指令INC 修改地址指针,用指令DJNZ 判断循环结束。 6、执行ACALL前(SP)= 07H ,执行ACALL时,(SP)= 09H ,(08H)= 09H ,(09H)= 00H ,(PC)= 000FH ,PC的值正是子程序的入口地址,而堆栈中这两个单元存放的是断点处PC的值;执行到RET后,(SP)= 07H , 原08H的值弹给(PC)7~0 ,原09H的值弹给(PC)15~8 ,因此,返回断点继续执行主程序。

单片机实验报告

实 验 报 告 实验课程:单片机原理及应用 班级: 12自动化2班 学号: 姓名: 教师:张玲 成绩: 实验日期:年月日 实验名称:实验1——计数显示器 一、实验目的: 学习Proteus 软件的使用,掌握单片机原理图的绘图方法。 二、实验内容: 1、绘制“计数显示器”电路原理图; 2、利用提供的hex文件验证此电路的运行效果。 三、实验要求: 提交的实验报告中应包括:1、绘图方法简述,要求说明元件与电源的选取、摆放及属性编辑,总线与标签的画法等内容;2、电路原理图; 3、仿真运行效果展示,要求就仿真文件加载方法及3~4幅运行截图进行简要说明;4、实验小结,说明遇到的主要问题或实验

1体会等。 参考电路原理图如下: 元件类别电路符号元件名称 Microproces sor ICs “U1”80C51 Miscellaneo us “X1”/12MHz CRYSTAL Capacitors“C1”~“C2” /1nF CAP Capacitors“C3”/22μF CAP-ELEC Resistors Packs “RP1”/7-100ΩRESPACK-7 Resistors“R1”/100ΩRES Optoelectro nics “LED1”~ “LED2” 7SEG-COM-CAT-G RN Switches & Relays “BUT”BUTTON 1、编程思路及C51源程序:

2、电路原理图: 3、仿真运行效果展示:

4、实验小结: 熟悉Proteus软件,了解软件的结构组成与功能;学习ISIS模块的使用方法, 学会设置图纸、选元件、线画总线、修改属性等基本操作;学会可执行文件 加载及程序仿法;理解Proteus在单片机开发中的作用,完成单片机电路原 理图的绘制。

相关文档
最新文档