自编单片机微机原理实验指导

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一汇编语言程序设计实验

---- 存储器块清零或赋值一.实验目的

1 熟悉存储器的读写方法,熟悉51汇编语言结构。

2 熟悉循环结构程序的编写。

3 熟悉编程环境和程序的调试。

二.实验内容

指定存储器中某块的起始地址和长度,要求将其内容清零或赋值。例如将4000H开始的100个字节内容清零或全部赋值为33H。

三.实验仪器

微机、WAVE6000编程环境软件,单片机实验箱

注意:

1 文件不要用中文名称保存时不要用中文路径(目录),不要放在“桌面”上,源文件和工程要放在同一个文件夹下,文件名称和路径名称不要太长。

2 查看存储器菜单使用:窗口---数据窗口---XDATA 观察存储器内容

3 查看SFR:窗口---CPU窗口查看CPU寄存器SFR

4 单步执行:执行---单步执行(F8),每执行一步,查看每条语句涉及到的寄存器和存储器内容的变化结果,是否是指令所要得到的结果,如不是,检查错误原因,修改。

5利用多种执行方法和观察各种窗口调试程序,直至程序满意为止。

编译器默认设置:

实验二存储块移动

一.实验目的

1 熟悉51汇编语言程序结构。

2 熟悉循环结构程序的编写,进一步熟悉指令系统。

3 熟悉编程环境和程序的调试。

二.实验内容

将指定源地址(3000H)和长度(100字节)的存储块移动到目的地址(4000H)。

三.实验仪器微机、WAVE6000软件,单片机实验箱注意:在编程环境中,可以通过软件仿真,观察程单片机运行情况。

实验三数据排序

一.实验目的

1了解数据排序的常用算法,掌握冒泡算法。

2进一步熟悉编程环境和调试方法。

3熟悉汇编程序设计。

二.实验内容

将50H开始的10个随机数按从小到大的顺序排列。三.实验仪器微机、WA VE6000编程环境

注意:由于上电后数据都一样,所以需要手动修改50H后10个数据(要排序的数)方法是:

窗口---数据窗口---DATA 找到50H开始的10个2位16进制数,双击,修改其数值

如(6,2,4,9,3,7,1,5,8,0)

之后编译(下载),单步执行,查看排序执行过程

冒泡算法(两层循环,以下是内层循环开始……)。

6,2,9,4,3,7,1,5,8,0

前大后小交换位置如下:

2,6,9,4,3,7,1,5,8,0

前小后大不交换位置如下;

2,6,9,4,3,7,1,5,8,0

前大后小交换位置如下;

2,6,4,9,3,7,1,5,8,0…第一次内层循环结束顺序如下:最大的数9先冒出来

2,6,4,3,7,1,5,8,0,9 接着开始第二次内层循环……

实验四P1口输入输出实验

一.实验目的

1.熟悉P1 口的功能。

2.熟悉延时子程序或定时中断程序的编写和使用。3.初步熟悉单片机软硬件设计方法。

二.实验内容(两内容分开做)

1.P1口做输出口接八只发光二极管,编写程序,使发光二极管循环亮灭。

2.P1.0,P1.1作输入口接两个拨动开关,P1.2,P1.3作输出口,接两个发光二极管。编写程序读取开关状态,将此状态在发光二极管上显示出来。

三.实验仪器

微机,WAVE6000编程环境、实验箱

注意:当P1口用作输入口时,必须先对它置”1”。编程时应注意P1.0,P1.1作为输入时应先置1,才能正确读入值。

实验五计数器实验

一.实验目的

1 熟悉计数器的使用方法。

2 熟悉计数器的硬件电路连接。

3 熟悉计数器的软件设计。

二.实验内容

8031内部定时计数器0,按计数器模式和工作方式1工作,对P3.4(计数器0计数脉冲输入T0)引脚进行计数。将其计数数值按二进制数用P1口驱动LED灯显示出来。

三.实验仪器

微机、WAVE6000编程环境,伟福6000实验箱

注意:

实验六外部中断实验

一.实验目的

1 熟悉外部中断的硬件电路,中断技术的基本使用方法。

2 熟悉外部中断的软件设计。

二.实验内容

利用实验箱上的单脉冲按键和发光二极管实现:用单次脉冲申请中断,在中断服务程序中对输出信号进行翻转(每当单脉冲按键按下时(产生一个脉冲),发光二极管(L0)亮灭变化)。

三.实验仪器

微机、WAVE6000编程环境,实验箱

连线:P1.0连接L0 INT0连接低电平单次脉冲。注意

中断服务程序(ISR)关键:

1 保护进入中断时的现场,并在退出中断之前恢复现场;中断重入的设置中断相关寄存器的设置:中断寄存器IE,中断触发罚方式的设置。

2 中断程序和子程序的区别。中断程序不是程序调用的,中断发生时,CPU就执行相应中断服务程序。

实验1 设备使用及简单示例程序验证

一.实验目的

1 熟悉软件编程环境和硬件设备资源

2 熟悉工程创建的步骤,其中各个文件作用

3 掌握软件菜单的使用,掌握程序的调试基本步骤。二.实验内容

以课本例4-1为源文件创建工程

进行工程的调试,查看程序运行过程和结果

三.实验仪器

微机、WAVE6000编程环境,实验箱

注意:

1 文件不要用中文名称,保存时不要用中文路径(目录),不要放在“桌面”上,源文件和工程要放在同一个文件夹下,文件名称和路径名称不要太长。

2 查看存储器菜单使用:窗口---数据窗口---MEMORY,观察或者修改MEMORY内容。

3 查看CPU寄存器:窗口---CPU窗口,CPU寄存器

4 单步执行:执行---单步执行(F8),每执行一步,查看每条语句涉及到的寄存器和存储器内容的变化结果,是否是指令所要得到的结果,如不是,检查错误原因,修改。

ASSUME CS:CSEG , DS:DSEG , ES:ESEG

SUM DW 2 DUP(?) DUP (duplicate) 含义

定义变量(数组)SUM,类型为字(DW),大小为2,内容不定(?)设置:编译器将用户定义的数据段分配在0400H (0040H×16)开始的存储器中。数据段段基址寄存器DS(0040H)。查看方法:

窗口---数据窗口--- MEMORY ---0400

物理地址=段基址×16+段内偏移

相关文档
最新文档