单片机原理与应用实验报告.docx
- 文档编号:17881265
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:34
- 大小:445.91KB
单片机原理与应用实验报告.docx
《单片机原理与应用实验报告.docx》由会员分享,可在线阅读,更多相关《单片机原理与应用实验报告.docx(34页珍藏版)》请在冰点文库上搜索。
单片机原理与应用实验报告
实验项目列表
序号
实验项目名称
成绩
指导教师
1
电子钟实验
2
MCS-51单片机P1口应用实验
3
用译码法扩展MCS-51单片机外存及外设的实验
4
数据传送和存储器检测实验
5
键盘输入及显示实验
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
实验一电子钟实验
1.实验目的和要求
通过实验掌握MCS-51单片机定时器/计数器的编程方法。
2.实验原理
编写并调试电子钟实验程序,实现从单片机实验箱上的键盘输入一个时间初值,用T0产生250μs定时中断,在中断服务程序中对T0的中断次数进行计数,每当计数到4000次,即1秒,对实时钟计数,并在数码管上显示相应的时间。
8279接口芯片的命令口地址为5FFFH,数据口地址为5EFFH。
3.主要仪器设备(实验用的软硬件环境)
(1)ZYE1501C单片机原理实验箱1台;
(2)装有WAVE6000软件的PC机1台;(3)伟福单片机仿真器及POD-H8X5X仿真头;
(4)编程电缆1根及导线若干。
4.操作方法与实验步骤
(1)按实验内容在ZYE1501C实验箱上接线;
(2)连接PC机、实验箱、仿真器和仿真头;
(3)运行WAVE6000软件;
(4)设置参数;
(5)运行程序并观察、记录实验现象。
5.实验内容及实验数据记录
(1)运行WAVE6000软件:
(2)设置参数:
(3)实验现象:
6.实验数据处理与分析
实验连接成功后,就开始显示数据,实验结果为每隔1秒钟的时间,实验中数据每次就加1。
7.质疑、建议、问题讨论
通过这次的实验我了解了MCS-51单片机定时器的基本编程方法,了解了单片机的基本原理,观察了电子钟在MCS-51单片机定时器控制下,然后开始倒数计数的过程。
定时器/计数器是51单片机的重要功能模块之一,在检测、控制及智能一起等应用中,常用定时器做实时时钟来实现检测、定时控制;还用定时器产生毫秒宽的脉冲,来驱动步进电机一类的电器机械。
在实验中可以自己改变初值MOVTH0,#06H和MOVTL0,#06H来改变定时时间,加深对程序的书写。
附录(源程序)
SIGNBIT2AH
ORG0000H
LJMPSTART
ORG000BH
LJMPTIME0
ORG0013H
LJMPIINT1
ORG0100H
START:
MOVSP,#40H
MOV31H,#250
MOV32H,#16
MOVTMOD,#02H
MOVTH0,#06H
MOVTL0,#06H
MOVIE,#86H
CLRIT1
CLRSIGN
MOVDPTR,#5FFFH
MOVA,#0DCH
MOVX@DPTR,A
WAIT:
MOVXA,@DPTR
JBACC.7,WAIT
MOVA,#00H
MOVX@DPTR,A
MOVA,#34H
MOVX@DPTR,A
MOVR2,#6
MOVR1,#39H
CLEAR:
MOV@R1,#00H
INCR1
DJNZR2,CLEAR
LCALLDISP
MOVR3,#06H
KEYIN:
JNBSIGN,KEYIN
CLRSIGN
LCALLDISP
DJNZR3,KEYIN
CLREX1
SETBTR0
LOOP:
JNB00H,NEXT;00H作1秒到标志
CLR00H
ACALLT0SERVE
LCALLDISP
NEXT:
SJMPLOOP
TIME0:
DJNZ31H,CCC
MOV31H,#250
DJNZ32H,CCC
MOV32H,#16
SETB00H
CCC:
RETI
T0SERVE:
MOVA,39H
ADDA,#01H
MOV39H,A
CJNEA,#0AH,EXIT
MOV39H,#00H
MOVA,3AH
ADDA,#01H
MOV3AH,A
CJNEA,#06H,EXIT
MOV3AH,#00H
MOVA,3BH
ADDA,#01H
MOV3BH,A
CJNEA,#0AH,EXIT
MOV3BH,#00H
MOVA,3CH
ADDA,#01H
MOV3CH,A
CJNEA,#06H,EXIT
MOV3CH,#00H
MOVA,3EH
SWAPA
ADDA,3DH
ADDA,#01H
DAA
CJNEA,#24H,EXIT
MOV3DH,#00H
MOV3EH,#00H
EXIT:
RET
IINT1:
PUSHACC
PUSHPSW
PUSHDPH
PUSHDPL
CLREA
MOVA,#40H
MOVDPTR,#5FFFH
MOVX@DPTR,A
MOVDPTR,#5EFFH
MOVXA,@DPTR
MOV35H,A
MOVB,#10
SUBBA,B
JCDDD
CLRA
AJMPEEE
DDD:
MOVA,35H
EEE:
MOV3EH,3DH
MOV3DH,3CH
MOV3CH,3BH
MOV3BH,3AH
MOV3AH,39H
MOV39H,A
SETBSIGN
SETBEA
POPDPL
POPDPH
POPPSW
POPACC
RETI
DISP:
MOV55H,DPH
MOV56H,DPL
MOVA,#92H
MOVDPTR,#5FFFH
MOVX@DPTR,A
MOVR4,#06H
MOVR0,#39H
BBB:
MOVDPTR,#CHART
MOVA,@R0
MOVB,#09H
SUBBA,B
JCFFF
CLRA
LJMPHHH
FFF:
MOVA,@R0
HHH:
MOVCA,@A+DPTR
MOVDPTR,#5EFFH
MOVX@DPTR,A
INCR0
DJNZR4,BBB
SETBEA
MOVDPH,55H
MOVDPL,56H
RET
CHART:
DB0C0H,0F9H,0A4H,0B0H,99H
DB92H,82H,0F8H,80H,90H,88H
DB83H,0C6H,0A1H,86H
END
实验二MCS-51单片机P1口应用实验
1.实验目的和要求
加深对MCS-51单片机P1口应用方法的了解。
2.实验原理
将实验板上的指示灯L0~L3连接到P1.0~P1.3,开关K0~K3接到P1.4~P1.7,编写并调试程序,观察指示灯和开关状态的变化。
3.主要仪器设备(实验用的软硬件环境)
(1)ZYE1501C单片机原理实验箱1台
(2)装有WAVE6000软件的PC机1台(3)伟福单片机仿真器及POD-H8X5X仿真头
(4)编程电缆1根及导线若干
3.操作方法与实验步骤
(1)按实验内容在ZYE1501C实验箱上接线;
(2)连接PC机、实验箱、仿真器和仿真头;
(3)运行WAVE6000软件;
(4)设置参数;
(5)运行程序并观察、记录实验现象。
5.实验内容及实验数据记录
(1)运行WAVE6000软件
(2)设置参数:
(3)实验现象
6.实验数据处理与分析
由实验所得的数据可知,在程序执行的过程中,拨动开关K0~K3的任一开关,则相对应的L0~L3灯就会亮,若拨动K3与其他三个开关中任意开关,则会LED灯就会显示流水现象的灯亮效果,这是由于P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流。
7.质疑、建议、问题讨论
通过本次实验,对MCS-51单片机P1口应用方法的有了进一步的了解,进一步学习了单片机的相关知识。
在实验过程种观察了开关控制着灯的亮的方式,K0、K2、K3进行控制灯亮灭的控制。
了解了如何进行控制相关的过程。
附录(源程序)
ORG0000H
LJMPSTRT
ORG0100H
STRT:
MOVA,P1
SWAPA
ANLA,#0FH
MOV41H,A
MOV40H,#0FFH
MLP0:
CJNEA,#6,$+3
JNCPK6
MOVDPTR,#CTAB
MOVR1,A
RLA
ADDA,R1
JMP@A+DPTR
CTAB:
LJMPPK0
LJMPPK1
LJMPPK2
LJMPPK3
LJMPPK4
LJMPPK5
PK6:
MOV42H,A
LJMPMLP1
PK5:
MOVA,40H
CJNEA,#0FFH,PK51
MOV42H,#01
LJMPMLP1
PK51:
MOVA,42H
LCALLRR7
ANLA,#0FH
JNZPK52
MOVA,#1
PK52:
MOV42H,A
LJMPMLP1
PK4:
MOVA,40H
CJNEA,#0FFH,PK41
MOV42H,#1
LJMPMLP1
PK41:
MOVA,42H
LCALLRL9
ANLA,#0FH
JNZPK42
MOVA,#1
PK42:
MOV42H,A
LJMPMLP1
PK3:
MOVA,40H
CJNEA,#0FFH,PK31
MOV42H,#0FEH
LJMPMLP1
PK31:
MOVA,42H
LCALLRR7
ANLA,#0FH
CJNEA,#0FH,PK32
MOVA,#0FEH
PK32:
ORLA,#0F0H
MOV42H,A
LJMPMLP1
PK2:
MOVA,40H
CJNEA,#0FFH,PK21
MOV42H,#0FEH
LJMPMLP1
PK21:
MOVA,42H
RLA
ANLA,#0FH
CJNEA,#0FH,PK22
MOVA,#0FEH
PK22:
ORLA,#0F0H
MOV42H,A
LJMPMLP1
PK1:
MOV42H,#0FH
LJMPMLP1
PK0:
MOV42H,#0
MLP1:
MOVA,42H
ORLA,#0F0H
MOVP1,A
MOVR7,#0
MOVR6,#0
DEL1:
DJNZR6,DEL1
DJNZR7,DEL1
MOVA,P1
SWAPA
ANLA,#0FH
CJNEA,41H,MLP2
MOV40H,#0
LJMPMLP0
MLP2:
MOV41H,A
MOV40H,#0FFH
LJMPMLP0
RR9:
RRA
RRA
RR7:
RRA
RRA
RRA
RRA
RRA
RRA
RRA
RET
RL9:
RLA
RLA
RL7:
RLA
RLA
RLA
RLA
RLA
RLA
RLA
RET
END
实验三用译码法扩展MCS-51单片机外存及外设的实验
1.实验目的和要求
掌握用74LS138译码器扩展MCS-51单片机外存及外设的设计方法。
2.实验原理
接通控制开关,根据实验平台各接口电路图,写出8255、8279、0832、0809及6264的地址;用仿真机的命令检验实验板上扩展的外存和外设硬件的正确性。
3.主要仪器设备(实验用的软硬件环境)
(1)ZYE1501C单片机原理实验箱1台
(2)装有WAVE6000软件的PC机1台(3)伟福单片机仿真器及POD-H8X5X仿真头
(4)编程电缆1根及导线若干
4.操作方法与实验步骤
(1)按实验内容在ZYE1501C实验箱上接线;
(2)连接PC机、实验箱、仿真器和仿真头;
(3)运行WAVE6000软件;
(4)设置参数;
(5)运行程序并观察、记录实验现象。
5.实验内容及实验数据记录
(1)运行WAVE6000软件
(2)设置参数:
(3)实验结果:
在存储器窗口的编辑框内输入X:
7FFFH(0832口地址),确定修改7FFFH单元的值:
写入00H,直流电机停转;
在存储器窗口的编辑框内输入X:
0000H,确定从0000H单元开始依次填入11.22.33.44。
6.实验数据处理与分析
在实验中这种除了单元选择的地址线外,剩余的高位地址线全部参加译码的方式称为全地址译码方式。
由于采用的是全地址译码方式,MCS-51单片机发地址码时,每次只能选中一个存储单元,这样,同样存储器之间根本不会产生地址重叠的问题。
7.质疑、建议、问题讨论
通过本次实验掌握用74LS138译码器扩展MCS-51单片机外存及外设的设计方法。
在实验过程中控制了转盘的四种转动状态1、直流转盘不转动2、转盘加速转动3、转盘开始转动4、转盘停止转动。
单片机系统扩展一般是以基本的最小系统为基础,常用的扩展芯片有I/O扩展、存储器、通用外围芯片,根据51单片地址总线是16位的,所以在片外可扩展的存储器最大容量是64KB,为了配置外围设备而需要扩展I/O口与片外数据存储器统一编址,即占据相同的地址空间。
因此,片外数据存储器连同I/O口一起总的扩展是64KB。
实验让我们熟悉了用74LS138译码器扩展MCS-51单片机外存及外设的设计方法,并且复习了8279、0832、0809等芯片的功能。
附录(源程序)
ORG0000H
LJMPSTRT
ORG0100H
STRT:
MOVSP,#60H
MOVDPTR,#5FFFH
MOVA,#0DCH
MOVX@DPTR,A
LP:
MOVXA,@DPTR
JBACC.7,LP
MOVA,#00H
MOVX@DPTR,A
MOVA,#34H
MOVX@DPTR,A
MOVR0,#50H
MOVR7,#30H
MOVR5,#0
MOVDPTR,#0000H
MLP0:
MOVA,@R0
MOVX@DPTR,A
ADDA,R5
MOVR5,A
INCR0
INCDPTR
DJNZR7,MLP0
MOVA,R5
MOVX@DPTR,A
MOVR5,#0
MOVR7,#30H
MOVDPTR,#0000H
MLP1:
MOVXA,@DPTR
ADDA,R5
MOVR5,A
INCDPTR
DJNZR7,MLP1
MOVXA,@DPTR
XRLA,R5
JNZMLPE
LCALLCDIR
MOV39H,#0DH
SJMPMLP2
MLPE:
LCALLCDIR
MOV39H,#0EH
MLP2:
LCALLDIR
SJMPMLP2
DIR:
PUSHPSW
SETBPSW.3
LCALLDISY
POPPSW
RET
DISY:
MOVR2,#06H
MOVA,#92H
MOVDPTR,#5FFFH
MOVX@DPTR,A
MOVR1,#39
TY11:
MOVA,@R1
MOVDPTR,#COD
MOVCA,@A+DPTR
MOVDPTR,#5EFFH
MOVX@DPTR,A
INCR1
DJNZR2,TY11
RET
COD:
DB0C0H,0F9H,0A4H,0B0H,99H
DB92H,82H,0F8H,80H,90H,88H
DB83H,0C6H,0A1H,86H,8EH,8CH
DB0C1H,89H,0C7H,0BFH,91H
DB00H,0FFH
CDIR:
MOV39H,#17H
MOV3AH,#17H
MOV3BH,#17H
MOV3DH,#17H
MOV3EH,#17H
RET
END
实验四数据传送和存储器检测实验
1.实验目的和要求
掌握MCS-51单片机内部RAM和外部存储器的数据传送及检测其正确性的方法。
2.实验原理
编写并调试一个程序,其功能是将8031内部RAM中50H~7FH的内容写入外部存储器0000H开始的区域,并检查写入的内容是否正确。
3.主要仪器设备(实验用的软硬件环境)
(1)ZYE1501C单片机原理实验箱1台
(2)装有WAVE6000软件的PC机1台(3)伟福单片机仿真器及POD-H8X5X仿真头
(4)编程电缆1根及导线若干
4.操作方法与实验步骤
(1)按实验内容在ZYE1501C实验箱上接线
(2)连接PC机、实验箱、仿真器和仿真头
(3)运行WAVE6000软件
(4)设置参数
(5)运行程序并观察、记录实验现象
5.实验内容及实验数据记录
(1)运行WAVE6000软件
(2)设置参数:
(3)实验现象
6.实验数据处理与分析
图中为串口的设置和实验程序的运行结果,R0为内部RAM区的地址指针寄存器,DPTR为外部RAM区的地址指针寄存器,R7中存放数据块的长度。
可以在仿真状态通过存储器窗口直接输入数据块的内容至内部RAM50H~7FH单元中。
7.质疑、建议、问题讨论
实验中学习了数据传输指令的用法,熟悉建立、调试和运行汇编语言程序的过程,对8位单片机来说,对内部寻址范围只有128字节。
实验也使我们熟悉了伟福软件的操作。
附录(源程序)
ORG0000H
LJMPSTRT
ORG0100H
STRT:
MOVSP,#60H
MOVDPTR,#5FFFH
MOVA,#0DCH
MOVX@DPTR,A
LP:
MOVXA,@DPTR
JBACC.7,LP
MOVA,#00H
MOVX@DPTR,A
MOVA,#34H
MOVX@DPTR,A
MOVR0,#50H
MOVR7,#30H
MOVR5,#0
MOVDPTR,#0000H
MLP0:
MOVA,@R0
MOVX@DPTR,A
ADDA,R5
MOVR5,A
INCR0
INCDPTR
DJNZR7,MLP0
MOVA,R5
MOVX@DPTR,A
MOVR5,#0
MOVR7,#30H
MOVDPTR,#0000H
MLP1:
MOVXA,@DPTR
ADDA,R5
MOVR5,A
INCDPTR
DJNZR7,MLP1
MOVXA,@DPTR
XRLA,R5
JNZMLPE
LCALLCDIR
MOV39H,#0DH
SJMPMLP2
MLPE:
LCALLCDIR
MOV39H,#0EH
MLP2:
LCALLDIR
SJMPMLP2
DIR:
PUSHPSW
SETBPSW.3
LCALLDISY
POPPSW
RET
DISY:
MOVR2,#06H
MOVA,#92H
MOVDPTR,#5FFFH
MOVX@DPTR,A
MOVR1,#39H
TY11:
MOVA,@R1
MOVDPTR,#COD
MOVCA,@A+DPTR
MOVDPTR,#5EFFH
MOVX@DPTR,A
INCR1
DJNZR2,TY11
RET
COD:
DB0C0H,0F9H,0A4H,0B0H,99H
DB92H,82H,0F8H,80H,90H,88H
DB83H,0C6H,0A1H,86H,8EH,8CH
DB0C1H,89H,0C7H,0BFH,91H
DB00H,0FFH
CDIR:
MOV39H,#17H
MOV3AH,#17H
MOV3BH,#17H
MOV3CH,#17H
MOV3DH,#17H
MOV3EH,#17H
RET
END
实验五键盘输入及显示实验
1.实验目的和要求
理解键盘接口的工作原理,掌握8279的编程方法。
2.实验原理
确定8279命令口和数据口的地址,对8279的命令口写入#40H,观察在键盘上按一个键读数据口和不按键读数据口的结果有什么不同?
测试键盘输入数据和数据口状态有何联系?
编写一个键盘控制程序,实现读出键盘上闭合按键的编号并在显示器上显示出来。
3.主要仪器设备(实验用的软硬件环境)
(1)ZYE1501C单片机原理实验箱1台
(2)装有WAVE6000软件的PC机1台(3)伟福单片机仿真器及POD-H8X5X仿真头
(4)编程电缆1根及导线若干
4.操作方法与实验步骤
(1)按实验内容在ZYE1501C实验箱上接线
(2)连接PC机、实验箱、仿真器和仿真头
(3)运行WAVE6000软件
(4)设置参数
(5)运行程序并观察、记录实验现象
5.实验内容及实验数据记录
(1)运行WAVE6000软件
(2)设置参数:
(3)实验现象
6.实验数据处理与分析
全速运行程序,在键盘上按下一个键后读入数据口,数码管上即显示出相应的数字。
7.质疑、建议、问题讨论
实验程序是通过按下按键并在LED显示器上显示的过程,通过实验更深刻地解了按键和显示原理。
附录(源程序)
ORG0000H
LJMPMAIN
ORG0013H
LJMPINT1P
MAIN:
MOVSP,#60H
SETBEX1
NOP
MOVDPTR,#5FFFH
MOVA,#0DCH
MOVX@DPTR,A
LP:
MOVXA,@DPTR
JBACC.7,LP
MOVA,#00H
MOVX@DPTR,A
MOVA,#34H
MOVX@DPTR,A
CLRIT1
NOP
SETBEA
NOP
MOVR0,#39H
MOVR7,#06H
LLP:
MOV@R0,#00H
INCR0
DJNZR7,LLP
QC10:
LCALLDSY
LJMPQC10
INT1P:
PUSHACC
PUSHDPH
PUSHDPL
MOVA,#40H
MOV
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 应用 实验 报告