18实验学时微机原理及应用实验指导书.docx

上传人:b****6 文档编号:5255146 上传时间:2022-12-14 格式:DOCX 页数:31 大小:1.05MB
下载 相关 举报
18实验学时微机原理及应用实验指导书.docx_第1页
第1页 / 共31页
18实验学时微机原理及应用实验指导书.docx_第2页
第2页 / 共31页
18实验学时微机原理及应用实验指导书.docx_第3页
第3页 / 共31页
18实验学时微机原理及应用实验指导书.docx_第4页
第4页 / 共31页
18实验学时微机原理及应用实验指导书.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

18实验学时微机原理及应用实验指导书.docx

《18实验学时微机原理及应用实验指导书.docx》由会员分享,可在线阅读,更多相关《18实验学时微机原理及应用实验指导书.docx(31页珍藏版)》请在冰豆网上搜索。

18实验学时微机原理及应用实验指导书.docx

18实验学时微机原理及应用实验指导书

 

微机原理及应用

(单片机)实验指导书

 

熊光洁

机电教研室

北京工商大学机械自动化学院

2008-3-28

第一部分单片机原理及汇编程序设计概述......................................3~12

实验一认识单片机开发系统,学习有关软件的使用............................3~7

实验二MCS-51汇编程序设计(分支、散转程序练习)...........................8

实验三查表程序设计......................................................9

实验四数据排序程序设计..................................................10

实验五位操作实验......................................................11

实验六定时/计数器实验...................................................12

实验七中断系统实验........................................................13

实验八静态存储器扩展实验..............................................14

实验九综合实验——特种车优先通过的交通灯控制..............................15

第二部分TD-NMC+教学实验系统简介.........................................18~30

2.1TD-NMC+系统功能及特点..................................................18

2.2TD-NMC+系统构成.......................................................19

2.3SST89E554RC简介......................................................19~20

2.4KeilC51的安装........................................................21~23

2.4.1系统要求.............................................................21

2.4.2软件安装.............................................................21~23

2.5μVision2集成开发环境.................................................24~26

2.6仿真调试与脱机运行间的切换方法.........................................26~29

2.6.1脱机运行..........................................................26~27

2.6.2与KeilC51开发环境联机调试的方法.....................................27

2.6.3从SoftICE返回IAP引导程序的方法.......................................29

第一部分单片机原理及汇编程序设计

实验一认识单片机开发系统,学习有关软件的使用

一、实验目的

1.学习KeilC51集成开发环境的操作;

2.熟悉TD-NMC+教学实验系统板的结构及使用;

3.熟悉程序汇编、装入、调试及执行过程。

二、实验设备

PC机一台,TD-NMC+教学实验系统平台

三、实验内容

1.观察TD-NMC+教学实验系统的结构;

2.编写实验程序,将00H~0FH共16个数写入单片机内部RAM的30H~3FH空间。

通过本实验,学生需要掌握KeilC51软件的基本操作,便于后面的学习。

3.练习编辑、调试、汇编、通信的方法和步骤。

四、实验步骤

1.观察TD-NMC+教学实验系统的结构,了解主机、主要芯片位置,电源连接方法,通信接口位置,复位方法,显示等。

2.创建KeilC51应用程序

在KeilC51集成开发环境下使用工程的方法来管理文件,所有的源文件、头文件甚至说明性文档都可以放在工程项目文件里统一管理。

下面创建一个新的工程文件Asm1.Uv2,以此详细介绍如何创建一个KeilC51应用程序。

(1)运行KeilC51软件,进入KeilC51集成开发环境。

(2)选择工具栏的Project选项,如图1-1-1所示,弹出下拉菜单,选择NewProject命令,建立一个新的μVision2工程。

这时会弹出如图1-1-2所示的工程文件保存对话框,选择工程目录并输入文件名Asm1后,单击保存。

图1-1-1工程下拉菜单

图1-1-2工程保存对话框

(3)工程建立完毕后,μVision2会马上弹出如图1-1-3所示的器件选择窗口。

器件选择的目的是告诉μVision2使用的80C51芯片的型号是哪一个公司的哪一个型号,不同型号的51芯片内部资源是不同的。

此时选择SST公司的SST89E554RC。

另外,可以选择Project下拉菜单中的“SelectDeviceforTarget‘Target1’”命令来弹出图1-1-3所示的对话框。

图1-1-3器件选择对话框

(4)到此建立好一个空白工程,现在需要人工为工程添加程序文件,如果还没有程序文件则必须建立它。

选择工具栏的File选项,在弹出的下拉菜单中选择New目录,如图1-1-4所示,或点击

此时会在文件窗口出现如图1-1-5所示的新文件窗口Text1,若多次执行New命令,则会出现Text2、Text3等多个新文件窗口。

图1-1-4新建源文件下拉菜单图1-1-5源程序编辑窗口

(5)输入程序,完毕后点击“保存”命令保存源程序,如图1-1-6所示,将Text1保存成Asm1.asm。

KeilC51支持汇编和C语言,μVision2会根据文件后缀判断文件的类型,进行自动处理,因此保存时需要输入文件名及扩展名.ASM或.C。

保存后,文件中字体的颜色会发生一定变化,关键字会变为蓝色。

图1-1-6源文件保存对话框

(6)程序文件建立后,并没有与Asm1.Uv2工程建立任何关系。

此时,需要将Asm1.asm

源程序添加到Asm1.Uv2工程中,构成一个完整的工程项目。

在ProjectWindow窗口内,选中SourceGroup1点击鼠标右键,会弹出如图1-1-7所示的快捷菜单,选择AddFilestoGroup‘SourceGroup1’命令,此时弹出如图2-1-8所示的添加源程序文件对话框,选择文件Asm1.asm,点击Add命令按钮即可将源程序文件添加到工程中。

图1-1-7添加源程序文件快捷菜单

图1-1-8添加源程序文件对话框

2.编译、链接程序文件

(1)设置编译、链接环境,点击

命令,会出现如图1-1-9所示的调试环境设置窗口,在这里可以设置目标系统的时钟。

单击Output标签,在打开的选项卡中选中CreateHexFile选项,在编译时系统将自动生成目标代码*.Hex。

点击Debug标签会出现如图1-1-10所示的调试模式选择窗口。

从图2-1-10可以看出,μVision2有两种调试模式:

UseSimulator(软件仿真)和Use(硬件仿真)。

这里选择硬件仿真,点击Settings可以设置串口。

串口波特率选择38400。

图1-1-9KeilC51调试环境设置窗口

图1-1-10调试设置窗口

(2)点击

命令编译、链接程序,此时会在OutputWindow信息输出窗口输出相关信息,如图2-1-11所示。

图1-1-11编译、链接输出窗口

3.调试仿真程序

(1)打开系统板的电源,给系统复位后点击

调试命令(注:

每次进入调试状态前确保系统复位正常),将程序下载到单片机的FLASH中,此时出现如图1-1-12所示调试界面。

(2)点击

命令,可以打开存储器观察窗口,在存储器观察窗口的‘Address:

’栏中输入D:

30H(或0x30)则显示片内RAM30H后的内容,如图1-1-12所示。

如果输入‘C:

’表示显示代码存储器的内容,‘I:

’表示显示内部间接寻址RAM的内容,‘X:

’表示显示外部数据存储器中的内容。

(3)将光标移到SJMP$语句行,点击

命令,在此行设置断点。

图1-1-12调试界面

(4)接下来点击

命令,运行实验程序,当程序遇到断点后,程序停止运行,观察存储器中的内容,如图1-1-13所示,验证程序功能。

(5)如图1-1-12所示,在命令行中输入‘ECHARD:

30H=11H,22H,33H,44H,55H’后回车,便可以改变存储器中多个单元的内容,如图1-1-14所示。

图1-1-13运行程序后存储器窗口图1-1-14修改存储器内容

(6)修改存储器的内容的方法还有一个,就是在要修改的单元上点击鼠标右键,弹出快捷菜单,如图1-1-15所示,选择‘ModifyMemoryatD:

0x35’命令来修改0x35单元的内容,这样每次只能修改一个单元的内容。

图1-1-15存储器修改单元

(7)点击

命令,可以复位CPU,重新调试运行程序,点击

命令,单步跟踪程序。

(8)实验结束,按系统的复位按键可以复位系统,点击

命令,退出调试。

在此以Asm1.Uv2工程为例简要介绍了KeilC51的使用,KeilC51功能强大,关于KeilC51的使用需要通过日后的使用慢慢掌握。

硬盘中提供有SoftICE_Tutorial.exe文件,该文件以动画的形式展示了基于SST公司的SoftICE在KeilC51环境下的调试过程。

实验二MCS-51汇编程序设计(分支、散转程序练习)

一、实验目的

1、学习分支程序的设计方法,熟悉51的指令系统;

2、学习散转程序的设计方法,熟悉51的指令系统;

3、学习设计延时循环程序。

二、实验设备

PC机一台,TD-NMC+教学实验系统

三、实验内容

1.采用比较分支结构设计程序,实现以下温度控制。

设某温度检测系统,在控制器的RAM的40H单元存放标准温度,50H单元存放检测温度值。

当检测温度大于标准温度时,使P1.0的灯亮报警,当检测温度低于标准温度时启动加热灯(假设P1.7置“1”,接通加热电路);当检测温度等于标准温度时,关掉加热炉,保持温度,并使P1.2的灯亮。

2.用散转结构编程实现以下要求

当R7等于0、1、2时,分别散转到OPR0、OPR1、OPR2三个程序入口。

OPR0入口后P1口8个灯不停的闪烁;

OPR1入口后P1.7灯先亮,然后右移,循环不止;

OPR1入口后P1口中间两灯先亮,然后向两边散开,循环不止。

四、实验线路图

 

五、接线方法

用排线将P1口的P1.0—P1.7与D0--D7相接,P1口相应的位输出高电平,就可以点亮相应的发光二极管。

 

实验三查表程序设计实验

一、实验目的

学习查表程序的设计方法,熟悉51的指令系统。

二、实验设备

PC机一台,TD-NMC+教学实验系统

三、实验内容

1.通过查表的方法将16进制数转换为ASCII码;

2.通过查表的方法实现y=x2,其中x为0~9的十进制数,以BCD码表示,结果仍以BCD码形式输出。

四、实验步骤

1.采用查表的方法将16进制数转换为ASCII码

根据ASCII码表可知,0~9的ASCII码为30H~39H,A~F的ASCII码为41H~46H,(假定待转换的数存放在R7中):

实验程序:

自己编写(待转换的数存放在R7中,R6、R5存放转换结果。

实验步骤:

(1)编写实验程序,编译、链接无误后联机调试;

(2)将待转换的数存放在R7中,如令R7中的值为0x86;

(3)在语句行SJMPMAIN设置断点,运行程序;

(4)程序停止后查看寄存器R6、R5中的值,R6中为高4位转换结果0x38,R5中为低4

位转换结果0x36;

(5)反复修改R7的值,运行程序,验证程序功能。

2.通过查表实现y=x2

x为0~9的十进制数,存放与R7中,以BCD码的形式保存,结果y以BCD码的形式存放于寄存器R6中。

实验程序:

自己编写

实验步骤:

(1)编写实验程序,经编译、链接无误后,进入调试状态;

(2)改变R7的值,如0x07;

(3)在语句行SJMPMAIN处设置断点,运行程序;

(4)程序停止后,查看寄存器R6中的值,应为0x49;

(5)反复修改R7中的值,运行程序,验证程序功能。

实验四数据排序实验

一、实验目的

熟悉51的指令系统,掌握数据排序程序的设计方法。

二、实验设备

PC机一台,TD-NMC+教学实验系统

三、实验内容

在单片机片内RAM的30H~39H写入10个数,编写实验程序,将这10个数按照由小到大

的顺序排列,仍写入RAM的30H~39H单元中。

四、实验步骤

根据实验内容要求,画出程序流程图,参考图4,编写实验程序。

实验步骤如下:

(1)编写实验程序,编译、链接无误后联机调试;

(2)为30H~39H赋初值,如:

在命令行中键入ECHARD:

30H=9,11H,5,31H,20H,16H,

1,1AH,3FH,8后回车,可将这10个数写入30H~39H中;

(3)将光标移到语句行SJMP$处,点击命令,将程序运行到该行;

(4)查看存储器窗口中30H~39H中的内容,验证程序功能;

(5)重新为30H~39H单元赋值,反复运行实验程序,验证程序的正确性。

图4实验程序流程图

实验五位操作实验

一、实验目的

掌握位指令的使用,学习位程序的设计方法。

二、实验设备

PC机一台,TD-NMC+教学实验系统

三、实验内容

编写实验程序,计算Y=A⊕B,。

MCS-51单片机内部有一个一位微处理器,借用进位标志Cy作为位累加器。

位操作指令的操作对象是内部RAM的位寻址区,即字节地址为20H~2FH单元中连续的128位(位地址为00H~7FH),以及特殊功能寄存器中的可位寻址的位。

四、实验步骤

程序需要实现A与B的异或运算,将A、B分别存放在位地址00H、01H中,结果Y存放在位地址04H中。

实验程序清单:

(Asm6.asm)

 

QAEQU00H

QBEQU01H

QYEQU04H

ORG0000H

LJMPMAIN

ORG0100H

MAIN:

MOVC,QA

ANLC,/QB;C=QA(QB非)

MOVQY,C

MOVC,QA

CPLC

ANLC,QB;C=(QA非)QB

ORLC,QY;C=QA(QB非)+(QA非)QB

MOVQY,C

SJMPMAIN;设置断点,观察20H或C中的值

END

实验步骤:

(1)编写实验程序,经编译、链接无误后,联机调试;

(2)修改20H单元的值,例如01H;

(3)在语句行SJMPMAIN设置断点,运行实验程序;

(4)程序停止运行后查看20H中的值,应为11H;

(5)修改20H中的值,重新运行程序,验证程序的正确性。

附:

在汇编语言中,除了MCS-51指令系统所规定的指令外,还定义了一些伪指令,这些伪指

令只对汇编程序提供必要的控制信息,不产生任何代码。

因此伪指令不是单片机执行的指令。

常用的伪指令有如下几条:

(1)起始地址伪指令:

ORGnn(nn表示16位地址)

(2)定义字节伪指令:

DBn1,n2,···,nN

(3)定义字伪指令:

DWnn1,nn2,···,nnN

(4)定义存储区伪指令:

DSx

从指定的地址单元开始,预留x个存储单元,以备程序使用。

(5)等值伪指令:

字符名EQU数或汇编符号

将一个数(8位或16位二进制数)或特定的汇编符号赋予所定义的字符名。

(6)数据地址赋值伪指令:

字符名DATAnn

将16位地址赋予所定义的字符名。

通常用来定义数据地址。

(7)定义位地址符号伪指令:

字符名BITbit

将位地址bit赋予所定义的字符名。

如果所使用的汇编程序不具备识别BIT伪指令的能力,

可以用EQU命令来定义位地址变量。

(8)汇编结束伪指令:

END

实验六定时/计数器实验

一、实验目的

1.了解MCS-51单片机定/计数器的工作原理与工作方式;

2.掌握定时/计数器T0和T1在定时器和计数器两种方式下的编程;

二、实验设备

PC机一台,TD-NMC+教学实验系统,示波器一台。

三、实验内容

1.使用定时器0与定时器1进行定时,在P1.0和P1.1引脚上输出方波信号,通过示波器观察波形输出,测量并记录方波周期。

2.将定时/计数器1设定为计数器方式,每次计数到10在P1.0引脚上取反一次,观察发光二极管的状态变化。

四、实验步骤

1.定时器实验

实验步骤:

(1)编写实验程序,编译、链接后联机调试;

(2)运行实验程序,使用示波器观察P1.0与P1.1引脚上的波形并记录周期;

(3)改变计数初值,观察实验现象,验证程序功能。

2.计数器实验

实验步骤:

图3-3-1计数器实验接线图

(1)按图3-3-1连接实验线路图;

(2)编写程序,联机调试;

(3)运行实验程序,按单次脉冲KK1,观察发光管D0的状态,每10次变化一次;

(4)实验结束,按复位按键退出调试。

实验七中断系统实验

一、实验目的

了解MCS-51单片机的中断原理,掌握中断程序的设计方法。

二、实验设备

PC机一台,TD-NMC+教学实验系统,示波器一台。

三、实验内容

1.单片机集成的定时器可以产生定时中断,利用定时器0和定时器1,编写实验程序在P1.0及P1.1引脚上输出方波信号,通过示波器观察实验现象并测量波形周期。

2.手动扩展外部中断INT0、INT1,当INT0产生中断时,使LED8亮8灭闪烁4次;当INT1产生中断时,使LED由右向左流水显示,一次亮两个,循环4次。

因为51单片机加入了中断系统,从而提高了CPU对外部事件的处理能力和响应速度。

增强型单片机SST89E554RC共有8个中断源,即外部中断0(INT0)、定时器0(T0)、外部中断1(INT1)、定时器1(T1)、串行中断(TI和RI)、定时器2(T2)、PCA中断和Brown-out中断。

中断使能寄存器(IE)

中断使能A(IEA)

四、实验步骤

1.定时器中断

实验步骤:

(1)编写实验程序,经编译、链接无误后,启动调试功能;

(2)运行实验程序,使用示波器观察P1.0及P1.1引脚上的波形;

(3)使用示波器测量波形周期,改变计数值,重新运行程序,反复验证程序功能;

(4)按复位键退出调试状态。

2.外部中断

实验步骤:

(1)按图3-2-1连接实验电路,单次脉冲单元原理图如图3-2-2所示。

(2)编写实验程序,编译、链接无误后启动调试;

(3)运行实验程序,先按KK1-,观察实验现象,然后按KK2-,观察实验现象;

(4)验证程序功能,实验结束按复位按键退出调试。

 

图3-2-1外中断实验接线图

 

图3-2-2单次脉冲单元原理图

实验八静态存储器扩展实验

一、实验目的

1.掌握单片机系统中存储器扩展的方法;

2.掌握单片机内部RAM和外部RAM之间数据传送的特点。

二、实验设备

PC机一台,TD-NMC+教学实验系统

三、实验内容

编写实验程序,在单片机内部一段连续RAM空间30H~3FH中写入初值00H~0FH,然后将这16个数传送到RAM的0000H~000FH中,最后再将外部RAM的0000H~000FH空间的内容传送到片内RAM的40H~4FH单元中。

四、实验原理

存储器是用来存储信息的部件,是计算机的重要组成部分,静态RAM是由MOS管组成的触发器电路,每个触发器可以存放1位信息。

只要不掉电,所储存的信息就不会丢失。

因此,静态RAM工作稳定,不要外加刷新电路,使用方便。

但一般SRAM的每一个触发器是由6个晶体管组成,RAM芯片的集成度不会太高,目前较常用的有6116(2K×8位),6264(8K×8位)和62256(32K×8位)。

本实验以62256为例讲述单片机扩展静态存储器的方法。

图4-1-162256引脚图

SST89E554RC内部有1K字节RAM,其中768字节(00H~2FFH)扩展RAM要通过MOVX指令进行间接寻址。

内部768字节扩展RAM与外部数据存储器在空间上重叠,这要通过AUXR寄存器的EXTRAM位进行切换,AUXR寄存器说明如下:

EXTRAM:

内部/外部RAM访问

0:

使用指令MOVX@Ri/@DPTR访问内部扩展RAM,访问范围00H~2FFH,300H以上的空间为外部数据存储器;

1:

0000H~FFFFH为外部数据存储器。

AO:

禁止/使能ALE

0:

ALE输出固定的频率;

1:

ALE仅在MOVX或MOVC指令期间有效。

五、实验步骤

1.按图4-1-2连接使用电路;

2.按实验内容编写实验程序,经编译、链接无误后启动调试;

3.打开存储器观察窗口,在存储器#1的Address中输入D:

0x30,在存储器#2的Address中输入X:

0x0000来监视存储器空间;

4.可单步运行程序,观察存储器内容的变化,验证实验程序的功能。

图4-1-2扩展存储器实验线路图

注:

连接实验线路时,若使用TD-PITE接口实验箱,应将BHE#和BLE#信号接GND;若使用TD-PIT++实验箱,需将BE3~BE0接GND。

实验九综合实验——特种车优先通过的交通灯控制

一、实验目的

1.学习交通灯的实用控制技术;

2.培养学生汇编语言程序设计的综合应用能力,使学生能够综合运用分支、转移、定时、中断、查表、子程序等结构。

二、实验设备

PC机一台,TD-NMC+教学实验系统

三、实验内容

一般情况控制器控制交通灯的正常亮灭,指挥十字路口的灯,有急救车到达时,两方向的交通信号为全红,以便让急救车通过,急救车通过

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 艺术

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1