单片机原理与应用实验指导书.docx

上传人:b****2 文档编号:18568216 上传时间:2023-08-19 格式:DOCX 页数:34 大小:86.68KB
下载 相关 举报
单片机原理与应用实验指导书.docx_第1页
第1页 / 共34页
单片机原理与应用实验指导书.docx_第2页
第2页 / 共34页
单片机原理与应用实验指导书.docx_第3页
第3页 / 共34页
单片机原理与应用实验指导书.docx_第4页
第4页 / 共34页
单片机原理与应用实验指导书.docx_第5页
第5页 / 共34页
单片机原理与应用实验指导书.docx_第6页
第6页 / 共34页
单片机原理与应用实验指导书.docx_第7页
第7页 / 共34页
单片机原理与应用实验指导书.docx_第8页
第8页 / 共34页
单片机原理与应用实验指导书.docx_第9页
第9页 / 共34页
单片机原理与应用实验指导书.docx_第10页
第10页 / 共34页
单片机原理与应用实验指导书.docx_第11页
第11页 / 共34页
单片机原理与应用实验指导书.docx_第12页
第12页 / 共34页
单片机原理与应用实验指导书.docx_第13页
第13页 / 共34页
单片机原理与应用实验指导书.docx_第14页
第14页 / 共34页
单片机原理与应用实验指导书.docx_第15页
第15页 / 共34页
单片机原理与应用实验指导书.docx_第16页
第16页 / 共34页
单片机原理与应用实验指导书.docx_第17页
第17页 / 共34页
单片机原理与应用实验指导书.docx_第18页
第18页 / 共34页
单片机原理与应用实验指导书.docx_第19页
第19页 / 共34页
单片机原理与应用实验指导书.docx_第20页
第20页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

单片机原理与应用实验指导书.docx

《单片机原理与应用实验指导书.docx》由会员分享,可在线阅读,更多相关《单片机原理与应用实验指导书.docx(34页珍藏版)》请在冰点文库上搜索。

单片机原理与应用实验指导书.docx

单片机原理与应用实验指导书

单片机原理与应用

试验指导书

自动化实验室编

河北工程大学教务处

(二〇一〇年)

目录

第一章伟福实验系统组成和结构

第二章MCS51系列单片机实验

MCS96系列单片机实验

软件实验

1.存储器块清零(51/96/88)

2.二进制到BCD码转换(51/96/88)

3.二进制到ASCII码转换(51/96/88)

4.内存块移动(51/96/88)

硬件实验

1.P1口输入输出(51/96)

2.计数器实验(51)

3.定时器实验(51/96)

4.八段数码管显示(51/96/88)

5.键盘扫描显示实验(51/96/88)

6.直流电机控制实验(51/96/88)

7.步进电机控制实验(51/96/88)

8.单片机串行口通讯实验(51/96)

 

第一章伟福实验系统组成和结构

伟福实验系统可根据教学实践的需要实现MCS51/MCS196单片机原理与接口,8088/8086微机原理与接口的一系列实验,并在硬件上预留了自主开发实验的空间。

该实验系统对基本实验仅需少量连线就可进行,以减轻学员的工作量,同时也提供了一些需较多连线的扩展性实验以进一步锻炼学员的动手能力。

此外,它还为学员们提供了强大的软硬件调试手段。

§2.1伟福实验系统的硬件组成

本实验仪上有丰富的实验电路和灵活的组成方法。

这些电路既可以和8031系列、也可以和80C196系列CPU及8088/8086CPU组合完成各种实验。

本实验仪将高档仿真器所具有的逻辑分析仪、波形发生器和程序跟踪器等强大的分析功能移植到了过来,让学生在做实验时不仅能知道软件的执行过程,也能直观地看到程序运行时,电路上的信号状态,工作时序,非常详细地了解电路的工作情况。

2.1LED6位数字显示器

2.24ⅹ6键盘电路

本实验仪的LED显示电路和键盘电路如图1。

显示控制的位码由74HC374输出,经MC1413反向驱动后,做LED的位选通信号。

位选通信号也可做为键盘列扫描码,键盘扫描的行数据从74HC245读回,374输出的列扫描码经245读入后,用来判断是否有键被按下,以及按下的是什么键。

如果没有键按下,由于上拉电阻的作用,经245读回的值为高,如果有键按下,374输出的低电平经过按键被接到245的端口上,这样从245读回的数据就会有低位,根据374输出的列信号和245读回的行信号,就可以判断哪个键被按下。

LED显示的段码由另一个74HC374输出。

键盘和LED显示的地址译码见下图,做键盘和LED实验时,需将KEY/LEDCS接到相应的地址译码上。

位码输出的地址为0X002H,段码输出的地址为0X004H,键盘行码读回的地址为0X001H,此处X是由KEY/LEDCS决定,参见地址译码。

例如将KEY/LEDCS接到地址译码的CS0上,那么位码输出的地址就为08002H,段码输出的地址就是08004H,键盘行码读回的地址为08001H。

图1:

键盘及LED显示电路

2.3LED电平显示电路

图2:

LED电平显示电路

实验仪上装有8只发光二极管及相应驱动电路。

见图2,L0―L7为相应发光二极管驱动信号输入端,该输入端为高电压电平“1”时发光二极管点亮。

我们可以通过P1口对其直接进行控制,点亮或者熄灭发光二极管。

2.4逻辑电平开关电路

实验仪上有8只开关K0―K7,并有与之相对应的K0―K7引线孔为逻辑电平输出端。

开关向上拨相应插孔输出高电平“1”,向下拨相应插孔输出低电平“0”。

见图3

图3:

逻辑电平开关电路

2.5单脉冲电路

单脉冲电路由按键(PULSE)和去抖动电路组成,每按一次(PULSE)键产生一个单脉冲。

板上有单脉冲的输出信号插孔,图为“”和“”,分别为正脉冲和负脉冲。

图:

单脉冲发生电路

2.6脉冲发生电路

下图是4MHz脉冲信号输出电路。

如想得到其它频率的脉冲信号,可将4MHz脉冲信号接到分频电路上,经过分频后,能得到2MHz、1MHz、500KHz、250KHz、125KHz、62.5KHz多种频率的脉冲信号。

脉冲产生电路和分频电路如下:

图:

脉冲产生电路

2.7分频电路

图4:

脉冲分频电路

2.8继电器输出电路

当控制端电平置高,公共触点与常开端吸合。

我们可以将常开端接入一发光二极管,公共端接+5V电平,通过对控制端进行控制,观察发光二极管的状态。

见图5。

图5:

继电器控制电路

2.9A/D转换电路

实验仪上有一个0~5V的可调电位器,将可变电压输出端接入A/D转换电路的输入端,通过CPU软件处理,读进A/D转换值,再将转换值送数码管显示。

我们可以调节电位器,使之输出不同电压值,通过数码管的显示,检验A/D转换正确与否。

图6:

A/D转换电路

2.10D/A转换电路

实验仪上提供了D/A转换电路如下图所示。

我们可以通过软件编程控制D/A转换芯片DAC0832,输出相应电流值,经过采样电路取出模拟量电压值,用电压表测量电压输出端子,读出电压值。

图7:

D/A转换电路

2.11PWM转换电路

图8:

PWM转换电路

2.12音频放大电路

 

图9:

音频放大滤波电路

 

2.13可调模拟量输入电路

电位器电路用于产生可变的模拟量。

图10:

电位器

2.14逻辑测量(逻辑笔)电路

本实验仪上有逻辑测量电路,如图11。

可用于测量各种电平,其中红灯亮表示高电平,绿灯亮表示低电平。

如果两灯同时闪动,表示有脉冲信号;两灯都不亮时,表示浮空(高阻态)。

 

图11:

逻辑笔电路

 

2.15存储器电路

本实验仪上有一片32K存储器61256。

提供给学生做存储器实验,由于地址译码为4K一段,所以只能提供4K容量使用,地址从0000H~0FFFH。

用RAMCS来选择不同的地址段,以适应不同的应用电路。

2.16逻辑门电路

本实验仪提供系列门电路:

非门,或门,与门,D触发器。

逻辑门电路由7400和7404组合实现。

或门与门非门

2.17液晶屏显示控制电路

2.18实验电路插座

本实验仪具有1个40芯通用电路插座,每个插座的全部引脚都被引出到相应的插孔,40芯通用插座可兼容28芯、24芯、16芯和14芯插座。

利用这个插座,可对双列直插式的各种微机芯片进行实验。

2.19总线插孔

本实验仪上有三排总线插座,用于引出各种总线信号,其中AD0~AD7为8根数据总线,A0~A15为16根地址总线。

另外ALE,RD,WR为控制总线。

与CPU相关的一些控制信号和I/O信号例如P1口、RXD、TXD等信号在相应的仿真板上。

2.20地址译码插孔

CS0

08000H~08FFFH

CS1

09000H~09FFFH

CS2

0A000H~0AFFFH

CS3

0B000H~0BFFFH

CS4

0C000H~0CFFFH

CS5

0D000H~0DFFFH

CS6

0E000H~0EFFFH

CS7

0F000H~0FFFFH

2.21串口通信程序实验插孔

用户在做串行通信时,如果不需要将TTL电平转到RS232电平,可直截将POD51/96仿真板或POD8086仿真板上的TXD、RXD、地与通信对方交叉对接即可。

如果想要与标准的设备通信,就要做电平转换,将TTL电平转到RS232电平或将RS232电平转成TTL电平。

本实验仪提供用户串行通信接口,可以用这两个插孔进行RS232通信程序实验,经电平转换后,再通过实验仪的“用户串口”接到PC机或其它RS232设备,实现数据互传。

2.22仿真板选择

1.若要做80C51或80C196的实验,将POD51/96仿真板插在实验仪上,POD51/96仿真板如下图:

做80C196仿真实验

做80C51仿真实验

在POD51/96仿真板上有两个跳线器,其中跳线器S1用于CPU种类的选择

选择8051对8051单片机进行仿真实验。

选择80C196对80C196单片机进行仿真实验。

另一个跳线器接80C51的EA脚,用于选择80C51的程序在内部还是外部,一般情况下接地,程序在CPU外部。

本仿真板上有两个CPU插座,一个为8051,一个为80C196KC。

仿真哪一种CPU,就插哪一种CPU芯片,两种CPU芯片不能同时插。

所插CPU的种类应和跳线器的选择相同。

2.若要做8088/86的实验,将POD8086仿真板插在实验仪上,POD8086仿真板如图:

POD8086仿真板上已包括8088/86常用的

实验器件,有8251串行通信芯片,8253

定时器芯片,8259外部中断芯片。

并有这

些实验所需的信号接线座。

§2.2伟福实验系统的支持软件

1、板上单片机仿真部分(使用WAVE集成调试软件)

●具有编辑、汇编、编译、调试和软件模拟等功能,所有操作均可通过窗口和菜单的选择来完成。

方便用户编写和调试软件、直观反映程序运行情况,提高软件开发效率。

●支持汇编语言,C,PLM高级语言源程序调试

●可观察数组,记录等各种复杂变量

●可脱开实验系统单独进行软件模拟,这种方式尤其适用于软件实验

第二章

MCS51系列单片机实验说明

§4.1系统的安装和启动

1、仿真开发系统集成调试软件的安装和使用见WAVE仿真开发系统使用手册。

2、用户根据实验要求,进行MCS51单片机实验时,应插上POD51/96仿真板,并插上8051或8052CPU(如果68脚的插座上装有80C196芯片应将其拨下)。

3、将配套的串行通讯电缆的一端与实验仪上的“仿真器串口”9芯D形插座相连,另一端与PC相的串行口相连。

4、将实验台的电源线与220V电源相连。

(实验结束后应拔下)

5、打开实验台电源开关,红色电源指示灯亮。

仿真开发器初始化成功后,LED会显示8051,表示仿真系统正常。

6、打开计算机电源,执行WAVE集成调试软件。

注意:

(1)无论是集成电路的插拔、通讯电缆的连接、跳线器的设置还是实验线路的连

接,都应确保在断电情况下进行,否则可能造成对设备的损坏。

(2)实验线路连接完成后,应仔细检查无误后再接通电源。

§4.2MCS51系列单片机实验

WAVE集成调试环境应设置如下:

仿真器型号:

伟福Lab2000P实验仪

仿真头型号:

MCS51实验(8031/32)

MCS96系列单片机实验说明

§4.3系统的安装和启动

1、仿真开发系统集成调试软件的安装和使用见WAVE仿真开发系统使用手册。

2、用户根据实验要求,进行MCS96单片机实验时,应插上POD51/96仿真板,并在插上80C196KB或80C196KC芯片(请注意芯片方向,如果80C51的插座上有CPU芯片请将其拔下)。

3、将配套的串行通讯电缆的一端与实验仪的“仿真器串口”RS2329芯D形插座相连,另一端与PC相的串行口相连。

4、将实验台的电源线与220V电源相连。

(实验结束后应拔下)

5、打开实验台电源开关,红色电源指示灯亮。

仿真开发器初始化成功后,会在LED上显示‘8096’。

6、打开计算机电源,执行WAVE集成调试软件。

注意:

(2)无论是集成电路的插拔、通讯电缆的连接、跳线器的设置还是实验线路的连

接,都应确保在断电情况下进行,否则可能造成对设备的损坏。

(2)实验线路连接完成后,应仔细检查无误后再接通电源。

§4.4MCS96系列单片机实验

WAVE集成调试环境应设置如下:

仿真器型号:

伟福Lab2000P实验仪

仿真头型号:

MCS96实验(80C196)

如果用C语言调试验程序,请将‘LINK命令行’设置为:

‘CSTART.OBJ,KC_SFRS.OBJ,C96.LIBROM(2000H-7FFFH)RAM(8000H-0FFFFH)’

软件实验一存储器块清零

一、实验要求

1.指定存储器中某块的起始地址和长度,要求能将其内容清零。

二、实验目的

1.掌握存储器读写方法

2.了解存储器的块操作方法

三、实验说明

通过本实验,学生可以了解单片机读写存储器的读写方法,同时也可以了解单片机编程,调试方法。

如何将存储器块的内容置成某固定值(例全填充为0FFH)?

请学生修改程序,完成此操作。

地址加1

设置块起始地址

四、程序框图

结束

是否清除完

当前地址内容清零

设置块长度

软件实验二二进制到BCD转换

一、实验要求

将给定的一个二进制数,转换成二十进制(BCD)码

二、实验目的

1.掌握简单的数值转换算法

2.基本了解数值的各种表达方法

三、实验说明

计算机中的数值有各种表达方式,这是计算机的基础。

掌握各种数制之间的转换是一种基本功。

有兴趣的同学可以试试将BCD转换成二进制码。

四、程序框图

保存十位数

将数除以100,得百位数

结束

将余数再除以10,得十位数

余数为个位数,将其保存

保存百位数

给出要转换的二进制数

软件实验三二进制到ASCII码转换

一、实验要求

给出一个BCD数,将其转换成ASCII值。

二、实验目的

1.了解BCD值和ASCII值的区别

2.了解如何将BCD值转换成ASCII值

3.了解如何查表进行数值转换及快速计算。

三、实验说明

此实验主要让学生了解数值的BCD码和ASCII码的区别,利用查表功能可能快速地进行数值转换。

进一步了解数值的各种表达方式。

给出要转换数BCD码

四、程序框图

保存低位ASCII码

取出BCD码高四位

结束

查表得到ASCII码

取出BCD码低四位

保存高位ASCII码

查表得到ASCII码

软件实验四内存块移动

一、实验要求

将指定源地址和长度的存储块移到指定目标位置

二、实验目的

1.了解内存的移动方法。

2.加深对存储器读写的认识。

三、实验说明

块移动是计算机常用操作之一,多用于大量的数据复制和图象操作。

本程序是给出起始地址,用地址加一方法移动块,请思考给出块结束地址,用地址减一方法移动块的算法。

另外,若源块地址和目标块地址有重叠,该如何避免?

四、程序框图

结束

是否移动完

目标地址加1

源地址加1

保存到目标地址中

从源地址取数

设置移动长度

设置块的目标地址

设置块的源地址

 

硬件实验一P1口输入、输出实验(51/96)

一、实验要求

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

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

编程时应注意P1.0,P1.1作为输入口时应先置1,才能正确读入值。

二、实验目的

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

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

3、学习用‘与’‘或’运算对MCS96系列CPU的变量进行位操作。

三、实验电路及连线

实验1:

P1口循环点灯实验2:

P1口输入输出

四、实验说明

1、P1口是准双向口。

它作为输出口时与一般的双向口使用方法相同。

由准双向口结构可知当P1口用为输入口时,必须先对它置“1”。

若不先对它置“1”,读入的数据是不正确的。

2、由于80C196系列CPU没有位操作,所以要对P1.0,P1.1进行与运算,以判断该

位为高还是为低,然后再用‘与’和‘或’运算将P1.2,P1.3的相应位置高或低。

这与80C51系列CPU不同。

80C51可以将位变量通过C标志位赋值给其它位。

3、8051延时子程序的延时计算问题

对于程序Delay:

MOVR6,#0H

MOVR7,#0H

DelayLoop:

DJNZR6,DelayLoop

DJNZR7,DelayLoop

RET

查指令表可知MOV,DJNZ指令均需用两个机器周期,在6MHz晶振时,一个机器周期时间长度为12/6MHZ,所以该段程序执行时间为:

(256×255+2)×2×12÷6≈261ms

 

五、实验框图

开始

开始

 

P1.0,P1.1置1

设置初始值

设移位次数

读入P1.0口值

将读入的值输出到P1.2

数据输出

 

读入P1.1口值

左移一位

 

延时

将读入的值输出到P1.3

移位次数完成?

 

(A)P1口循环点灯程序框图(B)P1口输入输出程序框图

 

硬件实验二计数器实验(51)

一、实验要求

8031内部定时计数器T0,按计数器模式和方式1工作,对P3.4(T0)引脚进行计数。

将其数值按二进制数在P1口驱动LED灯上显示出来。

二、实验目的

1、学习8031内部定时/计数器使用方法。

三、实验电路及连线

单次脉冲

四、实验说明

1.本实验中内部计数器起计数器的作用。

外部事件计数脉冲由P3.4引入定时器T0。

单片机在每个机器周期采样一次输入波形,因此单片机至少需要两个机器周期才能检测到一次跳变。

这就要求被采样电平至少维持一个完整的机器周期,以保证电平在变化之前即被采样。

同时这就决定了输入波形的频率不能超过机器周期频率。

五、实验框图

计数,输出计数值

设置工作方式

开始计数

开始

硬件实验三定时器实验(51/96)

一、实验要求

用CPU内部定时器中断方式计时,实现每一秒钟输出状态发生一次反转.

二、实验目的

1、学习8031内部计数器的使用和编程方法。

2、进一步掌握中断处理程序的编程方法。

三、实验电路及连线

四、实验说明

1、关于内部计数器的编程主要是定时常数的设置和有关控制寄存器的设置。

内部计数器在单片机中主要有定时器和计数器两个功能。

本实验使用的是定时器。

2、定时器有关的寄存器有工作方式寄存器TMOD和控制寄存器TCON。

TMOD用于设置定时器/计数器的工作方式0-3,并确定用于定时还是用于计数。

TCON主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。

3、内部计数器用作定时器时,是对机器周期计数。

每个机器周期的长度是12个振荡器周期。

因为实验系统的晶振是6MHZ,本程序工作于方式2,即8位自动重装方式定时器,定时器100us中断一次,所以定时常数的设置可按以下方法计算:

机器周期=12÷6MHZ=2uS

(256-定时常数)×2uS=100us

定时常数=206.然后对100us中断次数计数10000次,就是1秒钟.

4、在例程的中断服务程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,所以在置数前要先关对应的中断,置数完之后再打开相应的中断。

5、对于80C196,与定时器有关的寄存器为IOC1.2和INT-MASK。

IOC1.2为定时器1溢出中断允许/禁止位。

INT-MASK的第0位为定时器溢出屏蔽位。

6、对于80C196,在设置中断定时常数时,要注意先设置窗口寄存器WSR,设置完常数后,再恢复原WSR值。

 

五、实验框图

 

定时中断入口

开始

置T0中断工作方式

保护现场

设置定时常数

秒计数值减1

设置初始状态位

是否到1秒

重新设置秒计数值

设置秒计数值

Y

中断允许

状态位取反

输出状态位

中断返回

恢复现场

等待中断

 

主程序框图定时中断子程序框图

硬件实验四八段数码管显示(51/96/88)

一、实验要求

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

二、实验目的

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

2.

三、实验线路及连线

这里只是显示草图,详细原理参见图1

 

地址总线

位选通信号

(0x002H)

段码输出

(0x004H)

 

四、实验说明

1.本实验仪提供了6位8段码LED显示电路,学生只要按地址输出相应数据,就可以实现对显示器的控制。

显示共有6位,用动态方式显示。

8位段码、6位位码是由两片74LS374输出。

位码经MC1413或ULN2003倒相驱动后,选择相应显示位。

本实验仪中8位段码输出地址为0X004H,位码输出地址为0X002H。

此处X是由KEY/LEDCS决定,参见地址译码。

做键盘和LED实验时,需将KEY/LEDCS接到相应的地址译码上。

以便用相应的地址来访问。

例如,将KEY/LEDCS接到CS0上,则段码地址为08004H,位码地址为08002H。

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

a

fb

g

ec

d

dp

显示字形

g

f

e

d

c

b

a

段码

0

0

1

1

1

1

1

1

3fh

1

0

0

0

0

1

1

0

06h

2

1

0

1

1

0

1

1

5bh

3

1

0

0

1

1

1

1

4fh

4

1

1

0

0

1

1

0

66h

5

1

1

0

1

1

0

1

6dh

6

1

1

1

1

1

0

1

7dh

7

0

0

0

0

1

1

1

07h

8

1

1

1

1

1

1

1

7fh

9

1

1

0

1

1

1

1

6fh

A

1

1

1

0

1

1

1

77h

b

1

1

1

1

1

0

0

7ch

C

0

1

1

1

0

0

1

39h

d

1

0

1

1

1

1

0

5eh

E

1

1

1

1

0

0

1

79h

F

1

1

1

0

0

0

1

71h

五、程序框图

初始化显示参数

延时

关所有位显示

取显示数据

位选通信号移位

指向下一个显示数据

输出段码数据

6位完成

返回

8段码完成

否是是

 

开始

输出位选通信号

硬件实验五键盘扫描显示实验(51/96/88)

一、实验要求

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

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

①键输入模块:

扫描键盘、读取一次键盘并将键值存入键值缓冲单元。

②显示模块:

将显示单元的内容在显示器上动态显示。

③主程序:

调用键输入模块和显示模块。

二、实验目的

1、掌握键盘和显示器的接口方法和编程方法。

2、掌握键盘扫描和LED八段码显示器的工作原理。

三、实验电路及连线

这里只是键盘草图,详细原理参见图1

 

列码

(0X002H)

读回行码

(0X001H)

 

四、实验说明

本实验仪提供了一个6×4的小键盘,向列扫描码地址(0X002H)逐列输出低电平,然后从行码地址(0X001H)读回。

如果有键按下,则相应行的值应为低,如果无键按下,由于上拉的作用,行码为高。

这样就可以通过输出的列码和读取的行码来判断按下的是什么键。

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

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2