实验一 仿真软件使用.docx

上传人:b****6 文档编号:4414095 上传时间:2022-12-01 格式:DOCX 页数:14 大小:1.05MB
下载 相关 举报
实验一 仿真软件使用.docx_第1页
第1页 / 共14页
实验一 仿真软件使用.docx_第2页
第2页 / 共14页
实验一 仿真软件使用.docx_第3页
第3页 / 共14页
实验一 仿真软件使用.docx_第4页
第4页 / 共14页
实验一 仿真软件使用.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

实验一 仿真软件使用.docx

《实验一 仿真软件使用.docx》由会员分享,可在线阅读,更多相关《实验一 仿真软件使用.docx(14页珍藏版)》请在冰豆网上搜索。

实验一 仿真软件使用.docx

实验一仿真软件使用

实验一仿真软件使用

*采用KeiluVision仿真软件

一、实验目的和要求

1.掌握汇编语言的设计和调试的基本方法。

2.熟悉仿真软件的应用。

二、实验设备

计算机仿真软件

三、仿真软件的使用

1.打开PC机电源,正常工作后,在显示器的桌面上点击快捷图标“KeiluVision”,进入仿真软件。

2.源文件的建立和打开:

(1)选菜单栏点击Project菜单,选择弹出的下拉式菜单中的NewProject,在“文件名”中输入项目名称,“保存”后的文件扩展名为uv2,这是KEILuVision2项目文件扩展名,以后可以直接点击此文件以打开先前做的项目。

(2)选择所要的单片机,这里选择常用的Ateml公司的AT89S52。

完成上面步骤后,就可以进行程序的编写了。

(3)首先在项目中创建新的程序文件。

点击File中的New,输入相应程序。

输入结束后用菜单File-Save或快捷键Ctrl+S进行保存。

如果是汇编语言编写的文件,文件的扩展名为“.ASM”,如果是C语言编写的C51文件,文件的扩展名为“.C”,

(4)将文件保存在项目所在的目录中。

在图2.1屏幕左边的SourceGroup1文件夹图标上右击弹出菜单,在这里可以做在项目中增加减少文件等操作。

选“AddFiletoGroup‘SourceGroup1’”弹出文件窗口,选择刚刚保存的文件,按ADD按钮,关闭文件窗,程序文件已加到项目中了。

这时在SourceGroup1文件夹图标左边出现了一个小+号说明,文件组中有了文件,点击它可以展开查看。

图2.1图2.2

3.编译调试源文件

如果只是用做程序仿真,使用软件默认的编译设置,它不会生成用于芯片烧写的HEX文件。

图2.2中1、2、3都是编译按钮,不同是1是用于编译单个文件。

2是编译链接当前项目,3是重新编译,每点击一次均会再次编译链接一次,不管程序是否有改动。

在3右边的是停止编译按钮,只有点击了前三个中的任一个,停止按钮才会生效。

5是菜单中的它们。

在4中可以看到编译的错误信息和使用的系统资源情况等,6是有一个小放大镜的按钮,这就是开启\关闭调试模式的按钮,它也存在于菜单Debug-Start\StopDebugSession,快捷键为Ctrl+F5。

如图2.3所示。

图中1为运行,当程序处于停止状态时才有效,2为停止,程序处于运行状态时才有效。

3是复位,模拟芯片的复位,程序回到最开头处执行。

按4可以打开5中的串行调试窗口,这个窗口可以看到从51芯片的串行口输入输出的字符。

图2.3图2.4

运行程序时,首先打开调试窗口,再按运行键,就可以观察到程序运行的结果,最后要停止程序运行回到文件编辑模式中,就要先按停止按钮再按开启\关闭调试模式按钮。

如果让编译好的程序能通过编程器写入51芯片中,要先用编译器生成HEX文件,(具体步骤见硬件实验)。

4.观察程序运行结果

图2.5

(1)寄存器窗口:

在调试状态下,点击View菜单下的ProjectWindow命令或对应的按钮,就会显示或隐藏工程管理器窗口,然后点击窗口下边的寄存器标签,即显示出寄存器窗口。

“寄存器”中显示当前各寄存器中的内容。

两种修改寄存器(除了sec和states之外)值的方式:

一是用鼠标直接点击左键进行修改;二是在图2.5所示的调试命令窗口直接输入寄存器的值,如输入“A=0x32”。

(2)变量窗口:

在调试状态下,点击View菜单下的Watch&CallStackWindow命令或对应的按钮,就会显示或隐藏变量窗口。

观察变量更简单的方法:

在程序停止运行时,将光标放到要观察的变量上停大约1秒,就会出现对应变量的当前值。

变量窗口包含有4个显示区(标签),可以分别显示局部变量(Locals标签)、指定变量(Watch#1和Watch#2两个标签)、及堆栈调用(CallStack标签);局部变量:

显示的是当前函数中的变量,这些变量不用设置,自动出现在窗口中。

其它变量:

可以在Watch#1或Watch#2标签按F2输入变量名。

在程序运行中,可以观察这些变量的变化,也可以用鼠标点击修改它们的值。

(3)存储器窗口:

在调试状态下,点击View菜单下的MemoryWindow命令或对应的按钮,就会显示或隐藏存储器窗口。

“Address”栏输入不同类型的地址,可以观察不同的存储区域。

1)观察片内RAM直接寻址的data区:

在Address栏输入D:

xx(xx为十六进制数),便显示从xx地址开始的数据。

高128字节显示的是特殊功能寄存器的内容。

2)观察片内RAM间接寻址的idata区:

在Address栏输入I:

xx,便显示从xx地址开始的数据。

高128字节显示的也是数据区的内容。

3)观察片外RAM的xdata区:

在Address栏输入X:

xxxx,便显示从xxxx地址开始的数据。

4)观察程序存储器ROMcode区:

在Address栏输入C:

xxxx,便显示从xxxx地址开始的程序代码

除程序存储器的内容不能修改外,其它3个区域数据的修改方法:

用鼠标对准欲修改的单元,点击鼠标右键,在弹出的菜单中有一“ModifyMemoryat0x…”命令,执行该命令,对又弹出的数据输入栏输入数据,然后用鼠标左键点击“OK”即可。

(4)串行口窗口:

在调试状态下,点击View菜单下的SerialWindow#1或SerialWindow#2命令或对应的按钮,就会显示或隐藏串行口窗口。

串行口窗口提供了一个调试串行口的界面,从串行口发送或接收的数据,都可以在该窗口显示或输入。

(5)片内外设的观察与修改:

(a)片内外设的观察:

在调试状态下,点击Peripherals菜单下的不同外设选项命令,就会显示或隐藏对应外设的观察窗口。

如显示定时器0窗口,点击Peripherals菜单下的Timer下面的Timer0选项即可,如P1口,点击Peripherals菜单下的I/Oports下面的Port1选项即可。

(b)刷新观察:

在程序运行时,各个片内外设的状态会不断地变化,为了随时观察它们的变化,可以启用View菜单下的PeriodicWindowsUpdate命令,让KeilC自动周期刷新各个调试窗口。

(c)片内外设的修改:

可以在窗口中对设备直接进行设置,与程序中的命令设置一样,并且立即生效。

四、实验内容

首先单步运行程序,选主菜单/执行/单步运行或者选工具栏单步运行。

运行一个循环,观察相关的寄存器和存储区的变化(R0,DPTR,A等)。

记录下数据区2000H~201FH中,在执行程序S1前后的内容变化。

学会断点的设置和利用断点进行程序调试的方法。

xdataunsignedcharbuffer[32]_at_0x2000;

voidmain(void)

{unsignedchari;

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

{buffer[i]=33

}

}

1.程序S1的功能是什么?

画出S1程序框图,并写出注释。

2.把2000H~201FH中内容改成FF,如何修改程序S1?

3.把3000H~301FH中内容改成AA,如何修改程序S1?

2请编写一个能在以内部RAM20H为起始地址的连续10个存储单元(无符号数)中找出最大值并存入1FH单元和程序。

硬件及接口实验

在KeiluVision仿真软件中,按照软件实验一中步骤建立好相关项目及文件,进行编译调试。

如果让编译好的程序能通过编程器写入51芯片中,要先用编译器生成HEX文件。

右击图4.1中的项目文件夹,弹出项目功能菜单,选OptionsforTarget’Target1’,弹出项目选项设置窗口,转到Output选项页图2.5所示,图中1是选择编译输出的路径,2是设置编译输出生成的文件名,3则是决定是否要创建HEX文件,选中它就可以输出HEX文件到指定的路径中。

将程序编译一次,在编译信息窗口中就显示HEX文件创建到指定的路径中了,如图4.2。

这样就可用编程器所附带的软件去读取并烧到芯片了,再用实

验板观察结果。

图4.1

图4.2

AT89S5X系列单片机ISP在线下载使用说明

双击运行51单片机ISP在线下载软件“SLISP”,界面如图4.3:

图4.3

通信参数设置及器件选择如图4.4:

图4.4

点击“编程”按钮,即可下载。

硬件设置:

(1)将MCUISP下载电缆,一端接PC机并口LP1,一端接5208K实验仪右上角的“ISP下载接口”。

(2)KB1开关:

KB1开关有两种工作模式,平时都工作在“一般模式”,当我们用到单片机ISP在线编程功能时,将KB1开关打在“编程模式”。

(ISP在线可编程AT89S系列单片机)。

(3)SW1(EA端):

程序空间选择开关,SW1—>IP,选择CPU内部(一般不设置此模式,如果将目标程序通过烧写器写入单片机内部FALSHROM中,要运行写入的程序时需设置到该模式,一般用于工程人员的目标系统开发),SW1—>UP(出厂模式),选择CPU外部,此时可脱机运行外部EPROM中固化的程序,也可用仿真器进行联机实验。

(用短路块选择)

(4)编程完毕后,将开关打在"一般模式",按复位键"RST",运行程序。

实验二P1口控制发光二极管实验

一、实验目的

1.学习P1口的使用方法。

2.学习延时子程序的编写和使用。

二、实验内容

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

2、P1口做输出口,接八只发光二极管,编写程序,使发光二极管按照十六进制加一方式点亮。

三、实验说明

1.P1口为准双向口,P1的每一位都能独立地定义为输出线或输入线,作为输入的口线,必须向锁存器相应位写入“1”,该位才能作为输入。

8031中所有口锁存器在复位时均置为“1”,如果后来在口锁存器写入过“0”,在需要时应写入一个“1”使它再成为一个输入。

2.延时程序的实现。

现常用的有两种方法,一是用定时器中断来实现,一是用指令循环实现。

在系统时间允许的情况下可以采用后一种方法。

本实验中延时子程序采用指令循环来实现。

四、连线方法

P1口作输出口:

P1.0—P1.7接发光二极管L1—L8

五、实验电路

图4.5

六、程序框图

七、实验要求

1.编写程序,观察实验现象

2.写出完整程序,并对关键语句作出注释。

3.程序中,如点亮二极管出现不同亮灯样式,应改动程序中的哪些内容?

实验三工业顺序控制实验

一、实验目的

掌握工业顺序控制程序的简单编程,中断的使用。

二、实验内容

在工业控制中,象冲压、注塑、轻纺、制瓶等生产过程,都是一些继续生产过程,按某种顺序有规律的完成预定的动作,对这类继续生产过程的控制称顺序控制,象注塑机工艺过程大致按“合模

注射

延时

开模

产伸

产退”顺序动作,用单片机最易实现。

三、实验内容

P1.0~P1.6控制注塑机的七道工序,现模拟控制七只发光二极管的点亮,低电平有效,设定每道工序时间转换为延时,P3.4为开工启动开关,高电平动作。

P3.3为外部故障输入模拟开关,低电平报警,P1.7为报警声音输出,设定6道工序只有一位输出,第七道工序三位有输出。

四、实验电路

图4.7电路连线

五、连线方法

将JP插针用短路块将+5V,0N短接,P3.4接K1,P3.3接K2,P1.0~P1.6接L1~L7,

P1.7接VIN(音频功放),按图接好连线,初始状态K1为低电平,K2为高电平。

执行程序,把K1接到高电平,启动开工,观察发光二极管点亮情况,确定工序执行是否正常,然后把K2置为低电平,看是否有声音报警,恢复中断1报警停,又从刚才报警时一道工序执行下去。

可用单步、单步跟踪,非全速断点、全速断点,连续执行功能调试软件,直到符合自己程序设计要求为止。

六、程序框图

七、报告要求

写出相应程序及相应的注释语句。

实验四定时/计数器实验

一、实验目的

熟悉单片机内部定时/计数器功能,掌握初始化编程方法。

二、实验内容

1、把定时器0外部输入的脉冲进行计数,并送发光二极管显示。

2、把定时器0对时钟信号定时1S进行计数,并送发光二极管显示。

三、实验程序框图实验程序框图

计数工作模式定时1S工作模式

图4.11

四、实验步骤

1、P3.4接单脉冲输出孔,P1口连接发光二极管,执行程序,利用按钮ANO产生单脉冲信号,观察数码管上计数脉冲的速度及个数。

2、P1口连接发光二极管,执行程序,观察数码管上1S定时的速度及个数

五、报告要求

写出程序及主要注释语句。

实验五A/D转换实验

一、实验目的

1.掌握A/D转换芯片与单片机的接口方法。

2.了解A/D芯片ADC0809转换性能及编程方法。

3.通过实验了解单片机如何进行数据采集。

二、实验内容

利用实验台上的ADC0809做A/D转换器,实验台上的电位器提供模拟量输入,编写程序,利用8155将模拟量转换成数字量,用数码管显示。

三、实验说明

1、开发板上系统I/O接口分配

2、8155使用

8155方式控制:

MOVA,#43H

MOVDPTR,#0FF20H

MOVX@DPTR,A

四、实验电路

图4.10电路连线

五、实验步骤

IN0→VOUT,VIN→+5V,CS4→8000H,JX0→JX6,WR→/IOWR,RD→/IORD,ADDA、ADDB、ADDC→0V(地)CLK→500K运行程序,数码管上显示FF-5.00,前两位显示当前采集的电压量转换成的数字量,后三位显示对应的模拟电压值,调节W1,显示数字发生相应改变。

五、程序框图

六、实验要求

1.观察现象

2.写出程序及相应注释语句

七、思考题

修改程序,用其他通道轮流显示采样?

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

当前位置:首页 > 高中教育 > 初中教育

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

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