单片机实验指导 - 图文

更新时间:2023-09-30 21:44:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 1

实验一 基于WAVE6000集成开发环境的仿真与调试

——单片机I/O口使用

1.实验目的:

学习伟福仿真器+SICELab-G2200/2100实验平台+WAVE6000集成开发环境的实验步骤

2.实验内容:

P1端口接发光二极管,加1闪亮。

3.实验器材:

(1)G2200/2100 实验平台 1 台 (2)仿真器/ 仿真板 1 台 (3)连线 若干 根 (4)计算机 1 台

4.连线方案:

5.实验步骤

(1) 连接Lab51CPU板:

第 1 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 2

(2)仿真器与实验平台的连接:将Lab51板的DC34芯插座与G6W仿真器上的DC34插座用扁平电缆连接起来。

Lab51-CPU板 在实验平台的右下角有三个插座, 是用来安装实验Lab51CPU板的。 (3)仿真器与计算机的连接:

第 2 页 共 38 页 8051 单片机实验指导(伟副实验台) 苏州经贸职业技术学院 3

用随机配带的串口通讯电缆,将仿真器与计算机连接起来,串口

1、串口2均

可。但务必注意所选用的串口未被设置成它用,如Modem口、鼠标口。

● 应特别注意的是,在仿真器与计算机连接串口电缆时,两台机器必须都关

断电流。否则易损坏计算机和仿真器。 (4)实验连线:

按连线方案,用随机的实验连线插入孔后, 轻轻转动一下锁紧插头, 保证良好接触。拆线时,应先回转一下,不要硬拨, 以免损坏线路板。 不管是拆线还是插线,都应在断电的情况下进行。实验例程中“接线方案”的粗线即为需用户动手接连的线。

(5)检查接线是否有误,确信没有接错后,接上电源,打开电源开关。

(6)在计算机上打开“WAVE6000集成调试环境”,参见“实验一”第4步,设置项目,在“仿真器”和“通信设置”栏的下方有“使用伟福软件模拟器”的选择项。将其前面框内的勾去掉。在通信设置中选择正确的串行口。按“好”确认。

如果仿真器和仿真头设置正确,并且硬件连接没有错误,就会出现如图的“硬件仿真”的对话框,并显示仿真器、仿真头的型号及仿真器的序列号。表明仿真器初始

去掉前面的“勾” 即为硬件仿真方式

化正确。如果仿真器初始化过程中有错,软件就会再次出现仿真器设置对话框,这时你应检查仿真器、仿真器的选择是否有错,硬件接线是否有错,检查纠正错误后,再次确认。直至显示如图的硬件仿真确认对话框。

第 3 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 4

(7)我们现在用硬件仿真方式来调试这个程序,因为程序是对P1端口加1操作,我们可以打开外设的端口来观察P1口。方法是选择主菜单[外设 | 端口]功能打开端口窗口。重新编译程序,全速执行程序,因为有断点,程序会暂停在断点处。我们观察端口窗口的P1口值,会发生变化。再次全速执行,观察P1口的变化。同时也可以用电压表去测量仿真头的P1管脚,可以看到与之对应的发光二极管状态也随之发生变化。点击端口窗口的P1

端口窗P1口发生改口的白框来改变P1口的值,再次运行程序,P1从改变后的值加1。(P1口的值也可以从SFR窗口观察、修改)

(8)如果用户已经有写好的程序,可以从“实验一”的第4步“新建项目”开始,将你的程序加入项目,就能以项目方式仿真了。如果用户不想以项目方式仿真,则要先关闭项目,再打开你的程序,并且要正确设置仿真器、仿真头,然后再编译、调试程序。

第 4 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 5

实验二 基于键盘显示的仿真、调试与实验方法

1.实验目的:

掌握汇编语言设计方法;学习手工汇编的方法;学习键盘输入机器代码的方法;

2.实验内容:

把8000H地址上的内容拆开,高位送8001H地址的低位,低位送8002H地址的低位,8001H、8002H地址的高位清零.本程序通常在把数据送显示缓冲区时使用。

3.实验器材:

(1) G2200/2100实验平台 1 台 (2) G2K仿真板 1 个

4.实验原理:

尽管手工编译由于效率太低而在实际工作中不再使用,然而对于初学者而言,手工编译对理解编译原理是必不可少的,同时对于理解一些譬如相对偏移、绝对偏移等专用名词的含义,对理解单片机的指令系统和空间概念还是相当有用的。比如:MOV,MOVX指令;MOV R0,A和MOV @R0,A;MOVX @R0,A和MOVX @DPTR,A等。 仿真工具为了使得工具的64K的程序空间(也称仿真ROM)、64K的数据空间(也称仿真RAM)和用户的64K的程序空间(也称用户ROM)、64K的数据空间(也称用户RAM)完全分离,从而达到全资源开放(或准全资源开放)目的,分别对/PSEN、/WR、/RD信号进行了硬件处理,分别对应仿真ROM空间、仿真RAM空间、用户ROM空间、用户RAM空间,这四个空间的组合,即为四种工作模式。

5.程序框图:

结 束 屏蔽高位后送8002H 8000内容送A 高低位交换 屏蔽高位后送8001H 8000H内容送A 6.实验步骤:

(1)按流程图编写程序,借助MCS51指令速查表手工编译成机器代码。以下是通过计算机交叉汇编得到的.LST文件清单,供参考。

第 5 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 6

ORG 0000H

0000 908000 MOV DPTR,#8000H 0003 E0 MOVX A,@DPTR 0004 F5F0 MOV B,A 0006 C4 SWAP A 0009 A3 INC DPTR 000A F0 MOVX @DPTR,A 000B A3 INC DPTR 000C E5F0 MOV A,B 000E 540F ANL A,#0FH 0010 F0 MOVX @DPTR,A 0011 80FE LOOP: SJMP LOOP

(2)参阅《G2200/2100使用手册》的“伟福? G2K 通用仿真板”的使用方法,把

G2200/2100实验平台与G2K仿真板连接好。打开电源,数码管应显示8051,否则,请速关机。

(3) 通过键盘输入程序代码:

键盘操作

LED数码管显示

;指定字节的内容屏敝高位

0007 540F ANL A,#0FH

;指定的字节

;暂存 ;交换

;屏敝高位

上电 8 0 5 1 MON

P

0 0 0 0 0 0 0

0 0 0 0 0 0 0 第 6 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 7

NEXT

9

0

NEXT

8

0

NEXT 0 0 NEXT E 0 0 0 0 0 × × 0 0 0 0 9 _ 0 0 0 0 9 0

0 0 0 1 × × 0 0 0 1 8 _ 0 0 0 1 8 0 0 0 0 2 × × 0 0 0 2 0 _ 0 0 0 2 0 0 0 0 0 3 × × 0 0 0 3 E _ 0 0 0 3 E 0 第 7 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 8

NEXT 0 0 0 4 × ×

F

5

┆ 按以上方法输入完程序代码 ┆

(4)外部数据XDATA查看及修改 0 0 0 4 F _ 0 0 0 4 F 5 MON

MON

8

0

0

0

NEXT P ’ 8 8 0 8 0 0 8 0 0 0 8 0 0 0 X X

6

8 0 0 0 6 _ B 8 0 0 0 6 B 第 8 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 9

NEXT

(5)设置工作模式

8 0 0 1 X X MON

MON

MODE

P

P I E I LAST

P E E I LAST

P I E E “PI EI”为工作模式1,即程序和数据存储器均使用仿真器的;“PI EE”为工作模式2,即程序空间使用G2K仿真板、数据空间使用用户板,此时,则使用实验平台的U2扩展 RAM 6264,其地址空间为8000H-9FFFH。为了更深刻的了解不同工作模式时的不同的作用空间,可把G2010+上的EPR0M27C256(即所谓的用户ROM)和RAM6264(即所谓的用户RAM)拔下,观察不同工作模式下这两片芯片的插上和拔下所得到的值有什么不同。

(6)单步调试 MON P

0

0

0

第 9 页 共 38 页

0 0 0 0 0 0 单片机实验指导(伟副实验台) 苏州经贸职业技术学院 10

0

STEP

STEP

STEP

0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 4 6 B (7)断点调试 下一条指令的首址

MON 累加器A的值

P

0

0

0

A

HERE 0 0 0 0 0 0 0 0 0 A 0 0 0 A 0 6 (8)特殊功能寄存器查看

MON

0

P 0 第 10 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 21

实验六 八段数码管显示

1.实验目的:

(1) 了解数码管动态显示的原理。

2.实验要求:

利用实验仪提供的显示电路,动态显示一行数据.

3.实验说明:

(1) 本实验仪提供了8段码LED显示电路,学生只要按地址输出相应数据,就可

以实现对显示器的控制。显示共有6位,用动态方式显示。8位段码、6位位码是由两片74LS374输出。位码经MC1413或ULN2003倒相驱动后,选择相应显示位。

本实验仪中 8位段码输出地址为0X004H,位码输出地址为 0X002H。此处X是由CS40 决定,参见地址译码。做键盘和LED实验时,需将CS40孔 接到相应的地址译码上。以便用相应的地址来访问。例如,将CS40孔接到CS0上,则段码地址为08004H,位码地址为08002H。

(2)七段数码管的字型代码表如下表:

a

显示字形 0 1 2 3 4

5 6 7 8 9 A 1 1 0 1 1 1 1 1 0 1 1 1 0 1 0 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0 0 1 1 1 1 g f b g e c d 。dp f 1 0 0 0 1 e 1 0 1 0 0 d 1 0 1 1 0 c 1 1 0 1 1 b 1 1 1 1 1 a 1 0 1 1 0 段码 3fh 06h 5bh 4fh 66h 0 0 1 1 1 1 1 1 1 1 1 6dh 7dh 07h 7fh 6fh 77h 第 21 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 22

b C d E F 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 0 0 0 0 1 0 0 0 1 0 1 1 7ch 39h 5eh 79h 71h

4.实验器材:

(1)G2200/2100 实验平台 1 台 (2)仿真器/仿真板 1 台 (3)计算机 1 台

(4)实验连线 若 干

5.程序框图:

开始 取显示数据 指向下一个显示数据 初始化显示参数 延时 关所有位显示 位选通信号移位 输出位选通信号 否 输出段码数据 6位完成 是

返回 6.实验线路:

第 22 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 23

第 23 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 24

6.实验步骤:

(1)设定工作模式为模式2,即程序空间在仿真器上,数据空间在用户板上。把

第“40”号模块“键盘显示”的片选信号CS40孔接第“36”号模块“片选信

号”YS0(08000-08FFFH)

(2)编程并调试。

连线 1 连接孔1 连接孔2 CS40 YS0 孔。

7.程序清单:(MCS51\\A19.ASM C51\\C19.C)

第 24 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 25

实验七 键盘扫描显示实验

1.实验目的:

(1)掌握键盘和显示器的接口方法和编程方法。 (2)掌握键盘扫描和LED八段码显示器的工作原理。

2.实验要求:

在上一个实验的基础上,利用实验仪提供的键盘扫描电路和显示电路,做一个扫描键盘和数码显示实验,把按键输入的键码在六位数码管上显示出来。

实验程序可分成三个模块。

①键输入模块:扫描键盘、读取一次键盘并将键值存入键值缓冲单元。 ②显示模块:将显示单元的内容在显示器上动态显示。 ③主程序:调用键输入模块和显示模块。

3.实验器材:

(1)G2200/2100 实验平台 1 台 (2)仿真器/仿真板 1 台

(3)计算机 1 台

(4)实验连线 若 干

4.实验电路:

详细原理参实验十九“八段数码管显示”的原理图。

5.实验说明:

本实验仪提供了一个6×4的小键盘,向列扫描码地址(0X002H)逐列输出低电平,然后从行码地址(0X001H)读回。如果有键按下,则相应行的值应为低,如果无键按下,由于上拉的作用,行码为高。这样就可以通过输出的列码和读取的行码来判断按下的是什么键。在判断有键按下后,要有一定的延时,防止键盘抖动。地址中的X是由KEY/LED CS 决定,参见地址译码。做键盘和LED实验时,需将CS40孔 接到相应的地址译码上。以便用相应的地址来访问。例如将CS40孔接CS0上,则列扫描地址为08002H,行码地址为08001H。列扫描码还可以分时用作LED的位选通信号。

第 25 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 26

6.实验框图:

有键输入? 是 读取键值 读入行信号 键值转换为显示数据 程序框图 显示程序框图见上个实验 按照行列计算键值 是 该列有键输入? 否 6列扫描完? 返回 否 否 LED显示 初始化地址参数 显示缓冲区初始化 开始 输出列扫描信号 列扫描信号移位 查表得键码 等待键盘释放 返回 键输入子程序框图

7.实验步骤:

(1)设定工作模式为模式2,即程序空间在仿真器上,数据空间在用户板上。把

第“40”号模块“键盘显示”的片选信号CS40孔接第“36”号模块“片选信号”YS0(08000-08FFFH)孔。

第 26 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 27

(2)编程并调试。

连线 1 连接孔1 连接孔2 CS40 YS0

8.程序清单:(MCS51\\A20.ASM C51\\C20.C)

第 27 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 28

实验八 串行模数转换TLC549实验

1.实验目的

了解串行模数转换TLC549转换基本原理及使用方法。

2.实验要求

通过串行模数转换TLC549把模拟信号转换成数字信号,并在数码器上显示。

3.实验器材:

(1)G2200/2100实验平台 1 台 (2)仿真器/仿真板 1 台 (3)计算机 1 台 (4)实验连线 若 干

4.实验说明

4.1硬件描述

TLC549是以八位开关电容逐次逼近A/D转换器为基础而构造的CMOS A/D转换器。其设计能通过三态数据输出和模拟输入与微处理器或外围设备串行接口。TLC549仅用输入/输出时钟(CLK)和芯片选择(CS)输入做数据控制。TLC548的最高CLK输入频率为2.048MHZ,而TLC549的最高CLK输入频率为1.1 MHZ.

TLC548/549的内部提供了片内系统时钟,它通常工作在4 MHZ且不需要外部元件.片内系统时钟使内部器件的操作独立于串行输入/输出的时序,并允许TLC548/549像许多软件和硬件要求的那样工作.CLK和内部系统时钟一起,可以实现高速数据传送以及对TLC548为每秒45 500次转换、对TLC549为每秒40 000次的转换。

TLC548/549为了提高灵活性和访问速度,设有两个控制输入端(时钟CLK和片选CS)。这些控制输入和与TTL兼容的三态输出易于与微处理器或小型计算机串行通信。器件可在较 短的时间内完成转换。TLC548每22μ?重复一次完整的输入—转换—输出周期,TLC549每25μ?重复一次输入—转换—输出周期。

内部时钟和CLK独立使用,且不需要任何特定的速度或二者之间的相位关系。这种独立性简化了硬件和软件控制任务。由于这种独立性和系统时钟的内部产生,控制硬件和软件只需关心利用I/O时钟读出先前转换结果和启动转换。

TLC548/549的其它特点包括通用控制逻辑,可自动工作或在微处理器控制下工作,且有片内采样保持电路,具有差分高阻抗基准电压输入端,易于实现定标以及与逻辑电路和电源噪声的隔离;整个开关电容逐次逼近转换器的设计,允许在小于1 7μ?的时间内以最大总误差为±0.5最低有效位(LSB)的精度实现转换;电源范

围为+3~+6V,功耗小于15mW;能理想地用于包括电池供电便携式仪表的低成本、高性能

第 28 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 29

系统中。

TLC548/549C的工作温度范围为0℃~70℃,TLC548I/549I的工作温度范围为-40℃~85℃。TCL548C/549C的引脚和控制信号与TLC540八位A/D转换器以及TLC1540 10位A/D转换器兼容。

TL549引脚排列如右图,其中,基准(REF+,REF-)为差分输入,可以将REF-接地,REF+接VCC端,但要加滤波电容。大于加至REF电压的模拟输入电压转换为全“1”,小于加至REF电压的模拟输入电压转换为全“0”。为了工作良好,REF+电压应比REF-电压至少高1V。而且,当此差分基准电压降至4.75V以下时,总失调误差可能增加。

4.2 操作说明

TLC548/549的CS为高电平时,DATA OUT处于高阻态且CLK(I/O时钟)被禁止。当使用另外的TLC548或TLC549器件时,这种CS控制功能允许CLK与其共用同一时钟。当使用多个TLC548和TLC549器件时,这也使所需的控制逻辑为最少。该器件的工作时序如图4.3所示。其正常的控制时序如下。

(1)CS被拉至低电平。为了使CS端噪声所产生的误差为最小,在识别低跳变之前,内部电路在CS之后等待内部系统时钟两个上升沿与其后的下降沿.然而,由于CS上升沿的作用,即使直到经历了一段时间,其余的集成电路仍不识别跳变.DATA OUT也将在较短时间之内变为高阻状态.当器件用于噪声环境中时,这种技术可用来保护器件使其免受噪声的影响.当CS变为低电平时,前次转换结果的最高有效位(MSB)开始出现在DATA OUT端。

(2)前四个CLK周期输出前次转换结果的第七、六、五、四、三位。在CLK第四个高电平至低电平的跳变之后,片内采样和保持电路开始对模拟输入采样。采样操作主要是将模拟输入信号充到内部电容器上。

(3)其后再把三个时钟送至CLK端,在这些时钟周期的下降沿,第二、一、0位被移出。

(4)最后一个(第八个)时钟周期被加至CLK端。此时钟周期高电平至低电平的跳变使片内采样和保护电路开始保持。保持功能在接着四个内部系统时钟后结束,且在下面32

个内部时钟周期内完成转换,总共为36个周期。在第八个CLK周期之后,CS必须变为高电平,否则,CLK必须保持低电平至少36个内部系统时钟周期,以供保持和转换功能的完成。在多个转换周期内使CS保持低电平,必须特别注意防止CLK线上的噪声闪变。如在CLK上发生闪变,那么在微处理器和器件之间的I/O时序将失去同步。此外,如果CS为高电平,那么它必须保持高电平直至转换结束为止;否则,CS的有效高电平至低电平跳变将引起复位,使正在进行的转换失败。

在36个系统时钟周期发生之前,通过完成以上步骤(1)至(4)可以启动新的转换,同时正在进行的转换中止。所读取的是先前的转换结果而不是正在进行的转换结果。

对于某些应用,诸如选通应用,需要在特定的时间点启动转换。TLC548/549可以实现之。虽然片内采样和保持在第四个有效CLK时钟周期的负沿开始采样,但是直到第八

第 29 页 共 38 页

单片机实验指导(伟副实验台) 苏州经贸职业技术学院 30

个有效I/O时钟周期的负边之前,保持功能并不开始。它应当开始于必须转换模拟信号的瞬间。TCL548/549继续采样模拟输入,到I/O时钟的第八个下沿为止。然后,控制电路或软件立即拉低I/O CLK并启动保持功能以及在所需时间点保持模拟信号并开始转换。

5.接线方案

通常在正常的室温附近,对于远程数据采集(传感器和A/D转换器放在离微处理器几英尺远处),在输入时钟跳变时间慢至2μS的情况下,TLC548/549仍可正常工作。为了使CS端噪声所引起的误差最小,在响应控制输入信号以前,器件内部电路在CS之后等待内部系统时钟两个上升沿和一个下降沿。这样可以确保器件工作的可靠性。

6.实验步骤:

(1)按以下方式接线

(2)设计程序并执行,观察结果。

连线 1 2 3 4 5 连接孔1 CS40 P1.4 P1.5 P1.6 AIN 连接孔2 YS0 CLK DOUT CS18 Vout1 7.程序清单:(MCS51\\A36.ASM C51\\C36.C)

第 30 页 共 38 页

本文来源:https://www.bwwdw.com/article/se2d.html

Top