单片机实验指导书51分册精.docx
- 文档编号:17913599
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:63
- 大小:500.79KB
单片机实验指导书51分册精.docx
《单片机实验指导书51分册精.docx》由会员分享,可在线阅读,更多相关《单片机实验指导书51分册精.docx(63页珍藏版)》请在冰点文库上搜索。
单片机实验指导书51分册精
第一章系统安装与启动(2
第二章MCS-51单片机硬件接口实验部分(3
实验一I/O口输入、输出实验(3
实验二扩展输入、输出实验(5
实验三扩展存储器读写实验(7
实验四FlashMemory读写实验(9
实验五定时/计数器实验(11
实验六8253定时/计数器实验(12
实验七外部中断实验(14
实验八串转并与并转串实验(16
实验九串行静态数码显示实验(18
实验十8255输入、输出实验(20
实验十一8255控制键盘与显示实验(22
实验十二8279控制键盘与显示实验(24
实验十三音频驱动实验(26
实验十四LED点阵显示实验(29
实验十五LCD显示实验(31
实验十六电子钟实验(33
实验十七电子琴实验(34
实验十八交通灯控制实验(35
实验十九单片机串行口与PC机通信实验(37
实验二十8251可编程串行口与PC机通信实验(39
实验二十一并行A/D转换实验(41
实验二十二并行D/A转换实验(43
实验二十三串行A/D转换实验(45
实验二十四串行D/A转换实验(47
实验二十五并行打印机实验(选(49
实验二十六I2C串行EEPROM读写实验(51
实验二十七IC卡读写实验(56
第三章MCS-51单片机应用实验部分(60
实验二十八V/F转换与F/V转换实验(60
实验二十九语音芯片控制实验(63
实验三十日历时钟芯片控制实验(68
实验三十一直流电机测速与控制实验(77
实验三十二步进电机控制实验(79
实验三十三压力测量显示实验(81
实验三十四温度传感器与温度控制实验(83
实验三十五红外数据发送与接收实验(85
实验三十六485通信实验(88
实验三十七CAN总线通信实验(90
实验三十八USB总线通信实验(94
1
第一章系统安装与启动
一、实验系统工作在51实验模式
当用户需要进行MCS-51单片机实验内容时,应进入这种工作模式。
1将JD2(CPU插座与JD3(CPU51插座用“CPU转接板”连接起来,JD1(CPU88插座空置。
2用配套的串行通讯电缆,将9芯电缆的一端与实验机上(CPU模块处的9芯插座SCOM1相连,另一端与PC机的串行口相连。
3先打开电源开关,再打开直流开关,在PC机上打开THGMW-51软件,运行实验程序,具体操作参见本实验指导书后面章节内容。
二、51实验模式下各开关和跳线器的初始状态设置
1A1区直流开关:
实验内容若不用到A区模拟模块,则开关置位在下方,模拟模块电源为关闭状态。
2B2区JT1B跳线器:
短路帽置位在左边,LED点阵显示模块电源为关闭状态。
3B3区JT2B跳线器:
短路帽全部置位在下方,LCD液晶显示模块电源、背光为关闭状态。
4C1区
JT1C跳线器和C3区JT2C跳线器的短路帽位置随意,由相关实验决定。
5C3区JT3C跳线器:
短路帽置位在左边,语音接口模块电源为关闭状态。
6E4区
JT1E跳线器:
两只短路帽置位在左边,八位逻辑电平输出有效。
7E7区S11E、S12E开关:
开关全部置位上方(ON,由8279来控制键盘、显示。
8F3区
JT1、JT2跳线器:
短路帽全部置位在上方。
9A5区S4A多位开关:
开关置位最右端(温度控制,做温度控制实验用。
2
第二章MCS-51单片机硬件接口实验部分
实验一I/O口输入、输出实验
一、实验目的掌握单片机P1口、P3口的使用方法。
二、实验内容
以P1口为输出口,接八位逻辑电平显示,LED显示跑马灯效果。
以P3口为输入口,接八位逻辑电平输出,用来控制跑马灯的方向。
三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明和电路原理图P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。
由准双向口
结构可知当
P1口作为输入口时,必须先对它置高电平使内部MOS管截止。
因为内部上拉电阻阻值是20K~40K,故不会对外部输入产生影响。
若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
本实验需要用到CPU模块(F3区和八位逻辑电平输出模块(E4区和八位逻辑电平显示模块(B5区,八位逻辑电平输出电路原理图参见图1-1。
八位逻辑电平显示电路原理图参见图1-2。
K0
1K
1
1
K2
1
K3
1
H
P
8
EH
P
9
E
HP
1
E
H
P11E
2K
02
K
12
K
22
K
3
L3K
0L
3K
1L
3K
2L
3
K3
S3ES4
ES5ES6E
K4
1K
5
1
K6
1
K7
1
HP
1
2
EHP
1
3
E
HP
1
4
E
H
P15E
2K
42
K
52
K
62
K
7
L3K
4L
3K
5L
3K
6L
3
K7
S7ES8
ES9E
S10
E
R9ER10E
100100
VCC
1
K
K
1
2
K
2
3
K
3JD1
E
4
K
4
5
6K5
7K6
8K7
图1-1八位逻辑电平输出3
RP3B6
1
VCCU11BVCC20VCCLE111OEL02Q1D13L0L154L1Q2D2L267L2Q3D3L398L3Q4D4L41213L4Q5D5L51514L5Q6D6L61617L6Q7D7L7
19
18L7
Q8
D8GND
10
74LS373
图1-2
八位逻辑电平显示
JD2B
1L
P31
B
L
0L
1
P32
B
2
L
1L
2
P33
B
3
L
2L
3
P34
B
L
3
L4P35
BL
4
L5P36
B
L
5
L6P37
B
L
6
L7P38
B
L
7
五、实验预习要求学习教材的相关内容,根据实验要求画出程序流程图,写出实验程序。
六、实验步骤1系统各跳线器处在初始设置状态。
用导线连接八位逻辑电平输出模块的K0到CPU模块的RXD(P3.0口;
用8位数据线连接八位逻辑电平显示模块的JD4B到CPU模块的JD8(P1口。
2启动PC机,打开THGMW-51软件,输入源程序,并编译源程序。
编译无误后,下载程序
运行。
3观察发光二极管显示跑马灯效果,拨动K0可改变跑马灯的方向。
七、实验参考
程序
本实验参考程序“1_Port.ASM”位于THGMW软件文件夹下THGMW\Exp\51文件夹。
4
实验二扩展输入、输出实验
一、实验目的1.掌握单片机P0口扩展74LS244输入数据的方法。
2.
掌握单片机P0口扩展74LS273输出数据的方法。
二、实验内容
P0口扩展74LS244输入数据,P0口扩展74LS273输出数据。
输入端接八位逻辑电平输出,输出端接八位逻辑电平显示,编写一个程序,读入开关状态并输出显示。
三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明和电路原理图
当P0口总线负载达到或超出P0最大负载能力8个TTL门时,必须接入总线驱动器。
1.74LS244介绍:
74LS244是三态输出的八缓冲器,由2组、每组四路输入、输出构成。
每
组有一个控制端,由控制端的高或低电平决定该组数据被接通还是断开。
74LS244的引脚如图2-1A所示。
图2-1A74LS244图2-1B74LS273
2.74LS273介绍:
74LS273是八D型触发器,带清除端。
本实验用74LS273输出数据,通过片选信号和写信号将数据总线上的值锁存在74LS273中,同时在74LS273的输出端口输出数据,当数据总线上的值撤消以后,由于74LS273能锁存信号,74LS273的输出端保持不变,直到有新的数据被锁存。
74LS273的引脚如图2-1B所示。
/RD_IC474LS32
VCP13C244
C4.7K
VCC
244
图2-274LS244扩展输入电路5
3.本实验需要用到CPU模块(F3区、八位逻辑电平输出模块(E4区、八位逻辑电平显示模块(B5区、扩展输入模块(F2区、扩展输出模块(F1区。
扩展输入电路原理图参见图2-2,扩展输出电路原理图参见图2-3。
/WR_IC1
P1
2
C2
CS_273R2CU5CA
4.7
K
VCC
C2C
0.1uF
273
图2-374LS273扩展输出电路
五、实验预习要求学习教材的相关内容,根据实验要求画出程序流程图,写出实验程序。
六、实验步骤1系统各跳线器处在初始设置状态。
用8位数据线连接八位逻辑电平输出模块的JD1E到扩展输入模块的JD2C;八位逻辑电平显示模块的JD4B到扩展输B出模块的JD1C;用导线连接扩展输入模块的CS_244到CPU模块的8000H(面板标注为8000,其它片选
地址标注亦与此类同;
扩展输出模块的CS_273到CPU模块的8100H。
2启动PC机,打开THGMW-51软件,输入源程序,并编译源程序。
编译无误后,下载程序运行。
3观察发光二极管的亮灭与拨动开关的状态是否一致。
设拨动开关拨下输出为低电平,发光二极管点亮。
改变拨动开关的状态,发光二极管的亮灭随之变化。
七、实验参考程序本实验参考程序“2_In_Out.ASM”位于THGMW软件文件夹下THGMW\Exp\51文件
夹。
6
实验三扩展存储器读写实验
一、实验目的
1.掌握51单片机扩展外部RAM的方法。
2.掌握SRAM62256读写数据的方法。
二、实验内
容
对片外存贮器中一固定地址单元进行读写操作,并比较读写结果是否一致。
不一致则说明读写操作不可靠或该存储器单元不可靠,程序转入出错处理代码段(本示例程序通过熄灭一个发光二极管来表示出错。
读写数据的选用,可采用的是55(0101,0101与AA(1010,1010。
一般采用这两个数据的读写操作就可查出数据总线的短路、断路等,在实际调试电路时非常有效。
用户调试该程序时,可以灵活使用单步、断点和变量观察的等方法,来观察程序执行的流程和各中间变量的值。
三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明和电路原理图
MCS-51单片机内有128B的RAM,只能存放少量数据,对一般小型系统和无需存放大量数据的系统已能满足要求。
对于大型应用系统和需要存放大量数据的系统,则需要进行片外扩展
RAM。
MCS-51单片机在片外扩展RAM的地址空间为0000H~FFFFH共64KB。
读写外RAM时用MOVX指令,用RD选通RAMOE端,用WR选通RAMWE端。
本实验使用SRAM62256芯片进行片外RAM扩展。
62256具有32KB(256Kbit空间,因此它需要15位地址(A0~A14。
62256的全部地址空间为0000H~7FFFH。
本实验需要用到CPU模块(F3区和SRAM模块(B7区。
SRAM扩展电路原理图参见图3-1。
P51B
M
图3-1SRAM扩展电路
7
五、实验预习要求学习教材的相关内容,根据实验要求画出程序流程图,写出实验
程序。
六、实验步骤1系统各跳线器处在初始设置状态。
用导线连接SRAM模块的CS_RAM到地;
P1.0接到八位逻辑电平显示模块的L0。
2启动PC机,打开THGMW-51软件,输入源程序,并编译源程序。
编译无误后,下载程序。
3对
RAM数据进行读写,若L0灯闪烁说明RAM读写正常。
七、实验参考程序
本实验参考程序“3_SRAM.ASM”位于THGMW软件文件夹下THGMW\Exp\51文件夹。
8
实验四FlashMemory读写实验
一、实验目的
掌握FlashRom29F010数据读写方法。
二、实验内
容
对片外Flash存储器中一固定地址单元进行读写操作,并比较读写结果是否一致。
不一致则说明读写操作不可靠或该存储器单元不可靠。
读写数据的选用,可采用的是55(0101,0101与AA(1010,1010。
一般采用这两个数据的读写操作就可查出数据总线的短路、断路等,在实际调试电路时非常有效。
编程在指定地址写入数据,并读出数据验证。
三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明和电路原理图
1.FlashMemory芯片Am29F010介绍
Am29F010是AMD公司的多用途闪烁内存,容量为1Mbit(128X8。
其特点有:
·单电压(5V读与写操作。
·高性能:
最大存取时
间为45ns。
·有极高的可靠性,可承受10万次擦写,数据保持>100年。
·低功耗(使用读操作时最大电流为30mA,使用写操作时最大电流为50mA。
·具有块区域擦除能力,分成8个完全一样的分块,既可以块擦除,也可以整个芯片一起
擦除。
·嵌入式算法:
嵌入式擦除算法自动地预编程和擦除芯片或设好的扇区,嵌入式编程算法
自动地编程和把数据写到特定的地址。
2.Am29F010闪烁存储器读操作与普通的存储器操作一致,而擦、写操作相对复杂一些,需要写入一系列FlashMemory的命令寄存器,然后调用内部程序来完成相应的命令。
软件命令序列如表4-1所示。
总线写周总线写周总线写周总线写周总线写周总线写周
命令期
1
期
2期3期4
期
5
期
6数数数数数数
序列地址
地
址
地
址
地
址
地
址地址
据据据据据据
读RARD
复位5555A
A
2A
AA
5
5
55
550F0
字节
5555A
A
2A
AA
5
5
55
550A0
编码
扁区
5555A
A
2A
AA
5
5
55
5580
55
55
0A
A
2A
AA
5
5SA
1
擦除
片擦
5555A
A
2A
AA
5
5
55
5580
55
55
0A
A
2A
AA
5
55555
3
除
表4-1软件命令序列
表
注:
a.RA为所读存储器位置的地址。
b.RD为所读存储器位置的地址中的数据。
c.SA为扇区地址。
9
d.表中地址、数据皆为十六进制数。
3.Am29F010闪烁存储器的扇区分配如表4-2所示。
扁区A16A15A14地址范围SA000000000H-03FFFHSA100104000H-07FFFHSA201008000H-0BFFFHSA30110C000H-0FFFFHSA410010000H-13FFFHSA510114000H-17FFFHSA611018000H-1BFFFHSA71
11
1C000H-1FFFFH
表4-2Am29F010扇区地址表
本实验需要用到CPU模块(F3区和闪存模块(B8区。
闪存扩展电路原理图参见图4-1。
U16
CS_FLASH
图4-1闪存扩展电路
五、实验预习要求学习教材的相关内容,根据实验要求画出程序流程图,写出实验程序。
六、实验步骤
1系统各跳线器处在初始设置状态,用导线连接闪存模块的CS_FLASH到地,用8位数据线连接八位逻辑电平显示模块的JD4B到CPU模块的JD8(P1口。
2启动PC机,打开THGMW-51软件,输入源程序,并编译源程序。
编译无误后,下载程序。
按程序提示设置断点,运行程序在断点处观查写入或读出的数据,P1口输出为读出的数据(灭为1,亮为0。
3用户可修改写入数据的值,再次运行程序,察看运行结果。
七、实验参考
程序
本实验参考程序“4_FlashM.ASM”位于THGMW软件文件夹下THGMW\Exp\51文件夹。
10
实验五定时/计数器实验
一、实验目的
学习MCS-51内部计数器的使用和编程方法。
二、实验
内容
使用MCS-51内部定时/计数器,定时一秒钟,CPU运用定时中断方式,实现每一秒钟输出状态发生一次反转,即发光管每隔一秒钟亮一次。
三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明
关于内部计数器的编程主要是定时常数的设置和有关控制寄存器的设置。
内部计数器在单片机中主要有定时器和计数器两个功能。
本实验使用的是定时器,定时为一秒钟。
定时器有关的寄存器有工作方式寄存器TMOD和控制寄存器TCON。
TMOD用于设置定时器/计数器的工作方式0-3,并确定用于定时还是用于计数。
TCON主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。
内部计数器用作定时器时,是对机器周期计数。
每个机器周期的长度是12个振荡器周期。
假设实验系统的晶振是12MHZ,程序工作于方式2,即8位自动重装方式定时器,定时器100uS中断一次,所以定时常数的设置可按以下方法计算:
机器周期=12÷12MHz=1uS(256-定时常
数×1uS=100uS
定时常数=156。
然后对100uS中断次数计数10000次,就是1秒钟。
在本实验的中断处理程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,
所以在置数前要先关对应的中断,置数完之后再打开相应的中断。
本实验需要用到CPU模块(F3区和八位逻辑电平显示模块(B5区。
五、实验预习要求学习教材的相关内容,根据实验要求画出程序流程图,写出实验程序。
六、实验步骤
1系统各跳线器处在初始设置状态,用导线连接CPU模块P10到八位逻辑电平显示模块的
L0。
2启动PC机,打开THGMW-51软件,输入源程序,并编译源程序。
编译无误后,下载程序运行。
3运行程序观察发光二极管隔一秒点亮一次,点亮时间为一秒。
七、实验参考
程序
本实验参考程序“5_Timer.ASM”位于THGMW软件文件夹下THGMW\Exp\51文件夹。
11
实验六8253定时/计数器实验
一、实验目的了解8253定时器的硬件连接方法及时序关系,掌握8253工作方式以及编程方法。
二、实验内容编程将8253定时器0设定为方式3,定时器1设定在方式2,定时器2设定在方式2,
定
时器0输出作为定时器1的输入,定时器1的输出作为定时器2的输入,定时器2的输出接在一个LED上,运行后可观察到该LED在不停闪烁。
三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明和电路原理图
本实验需要用到CPU模块(F3区、8253模块(C4区、频率发生器模块(E6区、八位逻辑电平显示模块(B5区,8253电路原理图参见图6-1。
频率发生器电路原理图参见图6-2。
ICAD
08U9C
1
1
P
40
CD0GATE0
ICAD
17
1
P
39
CD1OUT0
ICAD
269P38C
D2CLK0ICAD
35
D3
ICAD
44
1
3
P
43
CD4OUT1
ICAD
53
1
4
P
42
CD5GATE1
ICAD
62
1
5
P
41
CD6CLK1
VCCICAD
71D71
7
P
45
C
OUT2
R1
1CA01
9
1
6
P
46
CA0GATE2
P37C4.7KA120A1CLK21
8
P4
4C
2
1
CSVCC
CS_8253/RD_I
C2
2
2
4RDVCC
/WR_IC2
3
1
2WRGND
8253
图6-18253
GATE0
OUT0
CLK0
OUT1
GATE1
CLK1
OUT2
GATE2
CLK2
U4EVCC
VDD16
Q19IOCK2
IOCK
1107IOCK4
P28E
153.6k
Hz
2.4576MHz
CL
KQ4
5
Q5
4
Q6
116
P27
E
19.2kH
z
RS
TQ7
1
3
Q8
1
2
Q9
1
4IOCK3P26E2.4kHz
Q10
1
5
Q11
1
P25
E600Hz
Q12
2
P24
E300Hz
Q13
83
P23
E150Hz
GN
DQ14
CD4020
图6-2频率发生器
12
8253是一种可编程计数器/定时器,它是用软、硬技术结合的方法实现定时和计数控制。
其主要有以下特点:
①有3个独立的16位计数器,每个计数器均以减法计数。
②每个计数
器都可按二进制计数或十进制(BCD码计数。
③每个计数器都可由程
序设置6种工作方式。
④每个计数器计数速度可以达2MHz。
五、实验预
习要求
学习教材的相关内容,根据实验要求画出程序流程图,写出实验程序。
六、实验步骤
1系统各跳线器处在初始设置状态。
用导线连接CPU模块的8000H到8253模块的CS_8253;频率发生器模块的
153.6kHz接8253模块的CLK0;
8253模块的CLK1接OUT0,CLK2接OUT1,GATE0、GATE1、GATE2接+5V,
OUT2接八位逻辑电平显示模块的L0灯。
2启动PC机,打开THGMW-51软件,输入源程序,并编译源程序。
编译无误后,下载程序运行。
3观察L0灯的闪烁情况。
七、实验参考
程序
本实验参考程序“6_8253.ASM”位于THGMW软件文件夹下THGMW\Exp\51文件夹。
13
实验七外部中断实验
一、实验目的
学习外部中断技术的基本使用方法。
二、实验内容
INT0端接单次脉冲发生器。
按一次脉冲产生一次中断,CPU使P1.0状态发生一次反转,P1.0
接LED灯,以查看信号反转。
三、实验要求
根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明和电路原理图
1外部中断的初始化设置共有三项内容:
中断总允许即EA=1,外部中断允许即EXi=1(i=0
或1,中断方式设置。
中断方式设置一般有两种方式:
电平方式和脉冲方式,本实验选用后者,
其前一次为高电平后一次为低电平时为有效中断请求。
因此高电平状态和低电平状态至少维持
一个周期,中断请求信号由引脚INT0(P3.2和INT1(P3.3引入。
2中断服务的关键:
a、保护进入中断时的状态。
堆栈有保护断点和保护现场的功能使用PUSH指令,在转中断服务程序之前把单片机中有关
寄存单元的内容保护起来。
b、必须在中断服务程序中设定是否允许中断重入,即设置EX0位。
c、用POP指令恢复中断时的现场。
3中断控制原理:
中断控制是提供给用户使用的中断控制手段。
实际上就是控制一些寄存
器,51系列用于此目的的控制寄存器有四个:
TCON、IE、SCON及IP。
4中断响应的过程:
首先中断采样然后中断查询最后中断响应。
采样是中断处理的第一步,对于本实验的脉冲方式的中断请求,若在两个相邻周期采样先高电平后低电平则中断请求有效,
IE0或IE1置“1”;否则继续为“0”。
所谓查询就是由CPU测试TCON和SCON中各标志位的状态以确定有没有中断请求发生以及是那一个中断请求。
中断响应就是对中断
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 实验 指导书 51 分册