《单片机与接口技术》
实验讲义
杜晓 编
物理科学与电子技术学院
目 录
实验一、P1 口实验……………………………………………… 3
实验二、简单 I/O 口扩展实验………………………………… 5
实验三、定时器实验…………………………………………… 7
实验四、数据存储器数据传送实验…………………………… 9
附录 HKMCS51 仿真开发环境的使用…………………………… 16
2
实验一 P1 口实验
一、实验目的
1、掌握 P1 口的使用
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
。
2、掌握数据输入/输出的区别。
二、实验器材
1、HK-MCS51 综合实验仪 1 台
2、超想 2000 仿真器 1 台
3、连线 若干 根
4、计算机 1 台
三、实验原理
由 8051 组成的单片机系统通常情况下,P0 口分时复用作为地址、数据总线,
P2 口提供 A15-A8 即高 8 位地址,P3 口用作第二功能,只有 P1 口通常用作 I/0
口。P1 口是 8 位准双向口,它的每一位都可独立地定义为输入或输出,因此既
可作为 8 位的并行 I/O 口,也可作为 8 位的输入输出端。当工作在输入方式时,
对应位的锁存器必须先置 1,才能正确地读到引脚上的信号,否则,执行读引脚指
令时,若对应位的锁存器的值为 0,读的结果永远为 0。每个 I/0 端口都有两种
读入,即读锁存器和读引脚,读引脚指令一般都是以 I/0 端口为源操作数的指
令,如 MOV C,P1.3,而读锁存器指令一般为“读-修改-写”指令,如 ANL P1.3,
C 指令,请同学们在实验中体会。实验电路如图所示。
EA/VP31
X119
X218
RESET9
RD17
WR16
INT012
INT113
T014
T115
P101
P112
P123
P134
P145
P156
P167
P178
P00 39
P01 38
P02 37
P03 36
P04 35
P05 34
P06 33
P07 32
P20 21
P21 22
P22 23
P23 24
P24 25
P25 26
P26 27
P27 28
PSEN 29
ALE/P 30
TXD 11
RXD 10
U?
8051
1A1 2
1A2 4
1A3 6
1A4 8
2A1 11
2A2 13
2A3 15
2A4 17
1Y118
1Y216
1Y314
1Y412
2Y19
2Y27
2Y35
2Y43
1G 1
2G 19
U?
74LS240
GND
L0
L1
L2
L3
L4
L5
L6
L7
GND
实验电路图
3
四、
P10~P17 与 L0~L7 相接。
五、
个发光,至全部发光
个熄灭,如此循环往复。
六、
。
现的问题进行讨论。
的知识。
2、编写好实验程序。
实验接线
用连线分别将
实验内容
1、编写一段程序,使 L7~L0 以二进制计数的形式发光。
2、接 P30 和 P31 到开关 K0 及 K1,要求编程实现:
当 P30P31 为"00"时: L3~L0 闪烁发光,L7~L4 不发光;
当 P30P31 为"01"时: L7~L4 闪烁发光,L3~L0 不发光;
当 P30P31 为"10"时: L3~L0 依次向右发光,L7~L4 依次向左发光;
当 P30P31 为"11"时: L7~L0 依次从右向左逐
后再从左到 右逐
实验报告要求
1、画出电路实验原理图
2、给出实验源程序。
3、就实验过程中出
七、实验预习要求
1、复习与实验内容相关
4
实验二 简单 I/O 口扩展实验
一、实验目的
1、掌握 MCS-51 单片机系统扩展 I/0 口的方法。
2、掌握外部端口地址的分配方法,学习外部输入/输出端口的编程。
二、实验器材
1、HK-MCS51 综合实验仪 1 台
2、超想 2000 仿真器 1 台
3、连线 若干 根
4、计算机 1 台
三、实验原理
8031 单片机从理论上讲具有 4 个 I/0 口即 P0、P1、P2 和 P3,而实际使用
时,P0 分时复用为地址总线的低 8 位和数据总线,P2 用作地址总线的高 8 位,
P3 经常用作第二功能,真正作为并行 I/0 口使用的只有 P1 口。在许多实际的
应用系统中,常需要扩展 I/O 口。I/O 接口电路一般具有输出锁存,输入缓冲,
与总线隔离等功能,单片机系统中扩展并行 I/O 口一般有三种方法,(1)采用
专用的并行 I/O 接口芯片如 8155,8255 等实现;(2)通过串行口外接移位寄
存器芯片如74LS164、74LS165等实现;(3)通过外接锁存器芯片74LS377、74LS273
实验电路图
等芯片实现。本实验中采用的正是上述的第三种方法。
EA/VP 31
X1 19
X2 18
RESET 9
RD 17
WR 16
INT0 12
INT1 13
T0 14
T1 15
P10 1
P11 2
P12 3
P13 4
P14 5
P15 6
P16 7
P17 8
P0039
P0138
P0237
P0336
P0435
P0534
P0633
P0732
P2021
P2122
P2223
P2324
P2425
P2526
P2627
P2728
PSEN29
ALE/P30
TXD11
RXD10
U4
8051
D0 3Q02
D1 4Q15
D2 7Q26
D3 8Q39
D4 13Q412
D5 14Q515
D6 17Q616
D7 18Q719
CLK 11
E 1
U3
74
1 16 L8
L9
L10
L11
L12
LS377
2
3
4
5
6
7
8
15
14
13
12
11
10
VCC
L13
L14
L15
nWR
9
1K
A 1
B 2
C 3
E1 4
E2 5
E3 6
Y015
Y114
Y213
Y312
Y411
Y510
Y69
Y77
U5
74LS138
GND
VCC
A13
A14
A15
A13
A14
A15
nCS377
nCS
nWR
377
5
四、实验接线
本实验不需要接线,但应将开关 KC 打至上方。
五、实验内容
1、依次循环点亮 L15~L8,点亮次序为:L8L9、L10L11、L12L13、L14L15、
L8L9L10L11、L12L13L14L15、全亮、全灭。
2、编制程序,模拟十字路口交通灯,如图所示,其变化规律为:
初始状态两个路口红灯全亮,然后,东西方向的绿灯亮、南北方向的红灯
亮,东西方向通车;延时一段时间后,东西方向:绿灯先灭,然后黄灯开始闪
烁 5 次,接着红灯亮,南北方向:在东西方向红灯亮时,南北方向的绿灯才亮,
南北方向通车;延时一段时间后,南北方向:绿灯先灭,然后黄灯开始闪烁 5
方向:在南北方向红灯亮时,东西方向的绿灯才亮,东
西向
六、
。
论。
七、实验预习要求
1、复习与实验
程序。
次,接着红灯亮,东西
通车。重复以上过程。
实验报告要求
1、画出电路实验原理图。
2、给出实验源程序
3、就实验过程中出现的问题进行讨
内容相关的知识。
2、编写好实验
6
实验三 定时器实验
一、实验目的
1、掌握 8051 内部定时器/计数器的工作原理和应用。
2、掌握定时器、中断处理程序的编程方法。
二、实验器材
1、HK-MCS51 综合实验仪 1 台
2、超想 2000 仿真器 1 台
3、连线 若干 根
4、计算机 1 台
MCS-51 单片机有两个 16 位的定时计数器 T0 和 T1,当工作在定时方式时,
计数脉冲来自单片机的内部,振荡器信号 12 分频后作计数脉冲,每个机器周期
的时间使计数器加 1,由于计数脉冲的频率是固定的(即每个脉冲为 1 个机器周
期的时间),故可通过设定计数值来实现定时功能。如要实现定时 100μS,当晶
振为 12M 时,每个机器周期为 1μS,让 T0 计 50000 个数后溢出,产生中断告诉
实验电路图
四、实验接线
开关 K1 和 P3.4 相连,开关 KC 打至上方。
三、实验原理
CPU 定时 50mS 时间到。本实验定时器每 50mS 中断一次,在中断服务程序中,对
中断次数进行计数,50mS 计数 20 次就是 1 秒。
EA/VP 31
X1 19
X2 18
RESET 9
RD 17
WR 16
INT0 12
INT1 13
T0 14
T1 15
P10 1
P11 2
P12 3
P13 4
P14 5
P15 6
P16 7
P17 8
P0039
P0138
P0237
P0336
P0435
P0534
P0633
P0732
P2021
P2122
P2223
P2324
P2425
P2526
P2627
P2728
PSEN29
ALE/30 P
TXD11
RXD10
U4
8051
D0 3Q02
D1 4Q15
D2 7Q26
D3 8Q39
D4 13Q412
D5 14Q515
D6 17Q616
D7 18Q719
CLK 11
E 1
U3
74LS377
1 16 L8
L92
3
4
5
6
7
8
15
14
13
12
11
10
L10
L11
L12
L13
L14
L15
VCC
9
nWR
1K
A 1
B 2
C 3
E1 4
E2 5
E3 6
Y15 0
Y114
Y213
Y312
Y411
Y510
Y69
Y77
U5
74LS138
GND
VCC
A13
A13
A14
A15
A14
A15
nCS377
nCS377
nWR
7
五、实验内容
1、编程实现 L15~L8 轮流点亮,点亮时间间隔是 1 秒,要求用定时器
、 程 。
器 T0(P3.4)引脚每来一次外部脉冲,计数器就加
在 L15~L8 上显示。
六、
。
论。
1、复习与实验内容相关的知识。
2、编写好实验程序。
产生延时。
2 编 模拟彩灯的变化,彩灯变化花样可自行设定
3、编程实现:定时
1,并且将计数的结果
实验报告要求
1、画出电路实验原理图。
2、给出实验源程序
3、就实验过程中出现的问题进行讨
七、实验预习要求
8
实验四、数据存储器数据传送实验
一、实验目的
1、学习 8051 单片机扩展数据存储器的方法。
2、学习掌握 RAM 芯片 6264 接口的方法。
二、实验器材
1、HK-MCS51 综合实验仪 1 台
2、超想 2000 仿真器 1 台
3、连线 若干 根
4、计算机 1 台
三、实验原理
8051 单片机内部只有 128 个字节的 RAM 单元供用户编程使用,如果编程所
需的 RAM 较多,则需要进行外部 RAM 扩展,MCS-51 的系统结构给外部扩展提供
实验电路图
四、实验接线
本实验不需要接线,但应将开关 KC 打至上方。
五、实验内容
1、编写一段程序,先向单片机内部 50H 到 7FH 单元中写入 50H 到 7FH,然后
将单片机内部 RAM 50H 到 7FH 中的内容复制到外部 RAM 0000H 开始的区域中,
了方便,最多可以在外部扩展 64K 字节的 RAM。实验电路如图所示。
EA/VP 31
X1 19
X2 18
RESET 9
RD 17
WR 16
INT0 12
INT1 13
T0 14
T1 15
P10 1
P11 2
P12 3
P13 4
P14 5
P15 6
P16 7
P17 8
P0039
P0138
P0237
P0336
P0435
P0534
P0633
P0732
P2021
P2122
P2223
P2324
P2425
P2526
P2627
P2728
PSEN29
ALE/P30
TXD11
RXD10
U2
8051
A0 10
A1 9
A2 8
A3 7
A4 6
A5 5
A6 4
A7 3
A8 25
A9 24
A10 21
A11 23
A12 2
CS1 20
CS2 26
WE 27
OE 22
D011
D112
D213
D315
D416
D517
D618
D719
U6
6264
D0 3Q02
D1 4Q15
D2 7Q26
D3 8Q39
D4 13Q412
D5 14Q515
D6 17Q616
D7 18Q719
OE 1
LE 11
U7
74LS373 GND
ALE
ALE
D0
D1
D2
D3
D0
D1
D2
D3
D6
D7
D0
D1
D2
D3
A8
A9
A10
A11
A8
A9
A10
11
2
A 1
B 2
C 3
E1 4
E2 5
E3 6
Y015
Y114
Y213
Y312
Y411
Y510
Y69
Y77 U5
74LS138
GND
VCC
A13
A14
A15
nCS377
nCS6264
nCS6264VCC
nRD
nRD
nWR
nWR
D4
D5
D6
D7
D4
D5
D4
D5
D6
D7
A12
A13
A14
A15
A
A1
9
最后对这些外部 RAM 单元中的数据挨个读出进行检查,检查写入是否正确。
六、
。
就实验过程中出现的问题进行讨论。
的知识。
2、编写好实验程序。
实验报告要求
1、画出电路实验原理图
2、给出实验源程序。
3、
七、实验预习要求
1、复习与实验内容相关
10
附录:HKMCS51 仿真开发系统的使用
本课程的所有实验都需要 HKMCS51 仿真开发系统,在该软件环境下完成程序
编 接等,下面简单介绍该软件的使用。
仿真开
和仿真器之间的数据通信,由
果该按钮为绿色,则
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
明联机不成功,需要重新联机;
的 辑、编译、链
一、进入仿真开发系统
1、启动系统
先连接好实验电路,再接通单片机实验箱的电源。然后启动 HKMCS51
发系统后,出现图 1 所示的界面。
图 1 HKMCS51 的启动界面
这是要求选择通信端口,以实现仿真开发系统
于已经设置好了,通常直接单击“确认”即可,不需要更改。确认之后进入实
验开发环境,如图 2 所示。
注意:此处如果为绿色,表明
联机不成功,需要重新联机;
如果为灰色,则表明联机成功。
图 2 HKMCS51 实验开发环境主界面
注意图中标注处,如
如果为灰色,联机一般是成功的。重新联机的方法如下:“设置”→“重新连接”,
如果还是不成功,则:
11
“ 置”→“通信端口设 选择(P)”→(选择好通信端口)→“确认”。如果仍然
图 3 仿真模式设置
模式,然后确认。
了便于管理这些文件,通常
件夹建立好
之后,打开该文件夹,给新建的工程文件起个名字(名字只能用英文字母和数
有问题,请报告指导老师,不要私自处理。
2、检查系统设置
单击“设置”按钮,选择“仿真模式(M)”,出现图 3 所示的界面。
按照上图设定好仿真
二、工程文件的建立及仿真
1、建立工程文件
每个源程序编译、链接后都会产生几个文件,为
对每个实验内容都建立一个文件夹,将相关的文件存放到这个文件夹中。单击
“工程”后选择“新建”,出现图 4 所示的界面。
单击此处建立新文件夹
图 4 新建工程界面
在 E 盘根目录下,先建立一个文件夹,比如:E:\stu01,注意文件夹只能用
英文字母和数字组成(不要太长,最好不超过 5 个字符),不能用中文(各级文
件夹都不能用中文,比如:C:\桌面\STU001\ 是不可以的)。文
12
字组成,不能用中文,字符个数最好不超过 5 个),如图 5 所示:
此处给工程文件命名。
图 5 新建工程文件 exp01.prj exp01.prj
工程文件命名后,单击打开。会出现图 6 所示的工程文件编辑界面。
图 6 工程文件编辑界面
由于是新建的工程文件,尚未建立源
图 6 工程文件编辑界面
由于是新建的工程文件,尚未建立源程序文件,因此,先单击“取消”退出
界 图 2 所示的界面。
2、源程序编辑
图 7
工程文件命名后,单击打开。会出现图 6 所示的工程文件编辑界面。
程序文件,因此,先单击“取消”退出
界 图 2 所示的界面。
2、源程序编辑
图 7
该 面。则又出现了该 面。则又出现了
单击此处进入编辑源程序编辑环境
13
如图 7 所示,单击空白按钮,进入源程序编辑环境。则出现图 8 所示的界面。
图 8 源程序编辑界面
在该环境下,将编写好的源程序输入进去。输入完毕之后单击“文件(F)”
选择“另存为(A)...”,出现图 9 所示的界面:
单击此处选择保存
的文件类型。 此处给源文件命名
图 9 源程序保存界面
注意:
(1)、给源文件命名时,文件名只能用英文字母或数字(最好不超过 5
个字符),不可用中文。
(2)、根据源文件类型选择好保存文件类型:
如果是汇编语言编写的程序:保存的文件类型为 .asm
如果是 C51 语言编写的程序:保存的文件类型为 .C
14
3、向工程中添加文件
在程序保存好之后,就可以将源程序添加到当前的工程文件中。单击“工程”,
选择“编辑(E)”,又出现了图 6 所示的工程文件编辑界面,单击该界面上的“增
加”按钮,出现图 10 所示的界面。
此处将出现文件
类型符合要求的
所有文件
单击此处,选
择所要添加的
源程序类型
图 10 选择所要添加的文件
注意:
如果源程序是用汇编语言编写的,文件类型为 .asm
如果源程序是用 C51 语言编写的,文件类型为 .c
选择好文件之后,单击“打开”按钮。则出现图 11 所示的情况。
图 11 添加到当前项目中的文件列表
单击“确认”,即可完成向当前项目中添加文件的操作。
15
4、源程序编译、链接
以上各步完成之后,单击“编译”,选择“项目编译、连接”,即可进行源文
件的编译、链接等工作。如果有错误,则会出现提示信息,需要对程序进行修
改。然后再执行这一步。
5、仿真文件装载
源程序编译成功后,单击“编译”,选择“装载(L)”,则出现图 12 所示的
界面。找到与源程序文件同名但扩展名是 .OMF 的文件,单击“打开”。
找到与源程序文件同名,
但扩展名是 .OMF 的文件
图 12 选择要装载的文件
接下来进入仿真阶段。出现图 13 所示的界面。
单击此处,程序连续运行,即可观
察单片机实验平台上的实验现象。
图 13 仿真界面
单击绿色三角形按钮,可以让程序连续运行,注意观察实验箱上出现的实验
结果。或者单击“调试”,选择程序运行方式,仔细研究随着程序的运行,电路
状态的变化情况。
16