单片机实验报告93467.docx
- 文档编号:7814416
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:15
- 大小:342.22KB
单片机实验报告93467.docx
《单片机实验报告93467.docx》由会员分享,可在线阅读,更多相关《单片机实验报告93467.docx(15页珍藏版)》请在冰豆网上搜索。
单片机实验报告93467
实验一单片机I/O口控制实验
一.实验目的
利用单片机的P1口作IO口,使同学学会利用P1口作为输入和输出口。
二.实验设备
IBMPC机一台
DP-51PRO.NET单片机仿真器、编程器、实验仪三合一综合开发平台一台
三.实验内容
1.编写一段程序,用P1口作为控制端口,使D1区的LED轮流亮。
2.编写一段程序,用P1.0~P1.6口控制LED,P1.7控制LED的亮和灭(P1.7接按键,按下时LED亮,不按时LED灭)。
四.实验要求
学会使用单片机的P1口作IO口,如果有时间同学也可以利用P3口作IO口来做该实验。
五.实验步骤
1.用导线把A2区的J61接口与D1区的J52接口相连。
原理如图所示。
2.先编写一个延时程序。
3.将LED轮流亮的程序编写完整并使用TKStudyICE调试运行。
运行后LED轮流点亮。
4.使用导线把A2区的J61接口的P1.0~P1.6与D1区的J52接口的LED1~LED7相连,另外A2区J61接口的P1.7与D1区的J53的KEY1相连。
5.编写P1.7控制LED的程序,并调试运行。
(按下K1看是否全亮)。
运行后按下P1.7LED全亮。
6.A2区J61接口的P1.7与D1区的J54的SW1相连。
然后再使用TKStudyICE运行程序。
运行后按下P1.7LED全亮。
六.实验程序
程序一:
LED跑马灯
ORG0000H
LJMPMAIN
ORG0100H
MAIN:
MOVA,#0FFH
CLRC
MAINLOOP:
CALLDELAY
RLCA
MOVP1,A
SJMPMAINLOOP
DELAY:
MOVR7,#0
LOOP:
MOVR6,#0
DJNZR6,$
DJNZR6,$
DJNZR6,$
DJNZR7,LOOP
RET
END
程序二:
P1.7控制LED
ORG000H
LJMPMAIN
ORG0100H
MAIN:
JBP1.7,SETLED
CLRLED:
CLRP1.0
CLRP1.1
CLRP1.2
CLRP1.3
CLRP1.4
CLRP1.5
CLRP1.6
SJMPMAIN
SETLED:
SETBP1.0
SETBP1.1
SETBP1.2
SETBP1.3
SETBP1.4
SETBP1.5
SETBP1.6
SJMPMAIN
END
七.程序流程图
八.实验结果
1.程序一用到了RLC指令,该指令为循环指令,跑马灯为每9个周期构成的循环中,有一个周期是全灭。
2.按下K1时LED灯全亮,松开K1时LED灯全灭。
九.实验思考题
1.请同学思考一下,想出几个实现以上功能的编程方法。
程序1可利用定时计数器延时时间,在定时器产生的中断中A进行移位后输出至P1口。
程序2可在判断P1.7高低电平后根据判断结果直接将#80H或#7F直接送P1口。
2.请同学再思考一下,第二个程序中如果使用KEY1作为外部中断控制LED的亮和灭时,程序应如何修改。
此时将KEY1接/INT0口,中断服务子程序控制LED亮灭。
程序如下:
ORG0000H
LJMPMAIN
ORG0003H;中断服务程序
LJMPSETLED
MAIN:
MOVSP,#40H
SETBET0;开外部中断
CLRIT0;设置为电平触发
SETBEA
CLRLED:
CLRP1.0
CLRP1.1
CLRP1.2
CLRP1.3
CLRP1.4
CLRP1.5
CLRP1.6
SJMPCLRLED
SETLED:
SETBP1.0
SETBP1.1
SETBP1.2
SETBP1.3
SETBP1.4
SETBP1.5
SETBP1.6
RETI
END
实验结果:
按下K1时LED灯全亮,松开K1时LED灯全灭。
实验二串转并的I/O口实验
一.实验目的
熟悉并掌握串转并的I/O口扩展方法。
二.实验设备
IBMPC机一台
DP-51PRO.NET单片机仿真器、编程器、实验仪三合一综合开发平台一台
三.实验内容
1.写程序,通过单片机的P1口控制74HC164的串行输入端口,实现串并转换。
2.验证串并转换数据的正确性。
四.实验要求
熟悉串并转换芯片的工作原理,学会使用串并转换芯片扩展单片机的I/O口资源。
74HC164真值表
五.实验步骤
1.短接C5区JP10借口,将C5区J43接口与A2区J61接口的P10~P13对应相连,如图所示:
2.运行程序,完成串并转换。
3.使用C2区的逻辑笔或D1区的J52接口(LED指示灯)测试并行输出数据Q0~Q7数据的正确性。
LED亮灭情况与传输数据相同。
六.实验程序
程序:
CLKEQUP1.0
DINAEQUP1.1
DINBEQUP1.2
CLR164EQUP1.3
ORG0000H
LJMPMAIN
ORG0100H
MAIN:
MOVSP,#60H
NOP
CLRCLK
SETBDINB
CLRCLR164
SETBCLR164
MOVA,#0AAH
MOVR4,#08H
SLCHG:
RLCA
MOVDINA,C
SETBCLK
NOP
CLRCLK
NOP
DJNZR4,SLCHG
SJMP$
;
END
七.实验结果
实验中观察到1、3、5、7LED灯亮,同时2、4、6、8LED灯灭。
八.实验思考题
参考电路图,尝试编写软件程序,实现8位LED流水灯的控制。
可利用定时计数器延时时间,在定时器产生的中断中A进行移位后输出,程序如下:
CLKEQUP1.0
DINAEQUP1.1
DINBEQUP1.2
CLR164EQUP1.3
ORG0000H
LJMPMAIN
ORG000BH;定时器0中断服务程序
LJMPSLCHG
MAIN:
MOVSP,#60H
NOP
CLRCLK
SETBDINB
CLRCLR164
SETBCLR164
MOVA,#0FFH
MOVTMOD,#01H;定时器0工作方式1
MOVTH0,#18H;送2ms时间常数
MOVTL0,#0FCH
SETBTR0;开中断
SETBET0
SETBEA
SJMP$
SLCHG:
MOVTH0,#18H
MOVTL0,#0FCH
RLCA
MOVDINA,C
SETBCLK
NOP
CLRCLK
RETI
END
实验三继电器控制实验
一.实验目的
加深理解继电器的工作原理和特点,掌握利用单片机的I/O口控制继电器的一般方法。
二.实验设备
IBMPC机一台
DP-51PRO.NET单片机仿真器、编程器、实验仪三合一综合开发平台一台
三.实验内容
1.利用D1区的拨动开关和LED,学习继电器的工作原理和特点。
2.编写一段程序,用P1.0口控制继电器,继电器控制LED的亮和灭(COM与CLOSE连通时,一盏LED亮;不连通时该LED灭。
COM与OPEN连通时,另一盏LED亮,不通时该LED灭)。
四.实验要求
学会继电器的使用和利用单片机的I/O口控制继电器的方法。
五.实验步骤
1.短接JP7,连接J54接口的SW1与J9接口的KJ。
2.使用导线把D1区J52接口的LED1、LED2与C7区J103接口的OPEN1,CLOSE1分别相连,另外C7区J103接口的COM1接地(GND)。
3.接好线后,同学可以拨动D1区的SW1拨动开关,观察现象(拨到1时LED2亮,拨到0时LED1亮),并得出结论。
运行程序后拨到1时LED2亮,拨到0时LED1亮。
4.然后把C7区J9接口的KJ改接到A2区的J61接口的P10。
再编写一个程序程序(参考实验二),使P1.0口延时一段时间后改变电平值,来控制继电器的开关。
运行程序后,LED交替点亮,继电器交替开关。
六.实验程序
程序:
ORG0000H
LJMPMAIN
ORG00F0H
MAIN:
MOVR7,#0
LOOP:
MOVR6,#0
DJNZR6,$
DJNZR6,$
DJNZR6,$
DJNZR6,$
DJNZR7,LOOP
CPLP1.0
SJMPMAIN
;
END
七.实验结果
拨动开关后,继电器会对应开关,使得两个LED循环被点亮,两个LED灯循环被点亮,周期为1s。
八.实验思考题
1.请同学思考一下,改由OPEN2、COM2、CLOSE2时本实验如何进行。
把D1区J52接口的LED1、LED2与C7区J103接口的OPEN2,CLOSE2分别相连,另外C7区J103接口的COM2接地(GND)即可。
2.请同学再思考一下,继电器的用途,并举例说明。
继电器是一种电控制器件,是当输入量(激励量)的变化达到规定要求时,在电气输出电路中使被控量发生预定的阶跃变化的一种电器。
它具有控制系统(又称输入回路)和被控制系统(又称输出回路)之间的互动关系。
通常应用于自动化的控制电路中,它实际上是用小电流去控制大电流运作的一种“自动开关”。
故在电路中起着自动调节、安全保护、转换电路等作用。
实验四定时/计数器验证实验
一.实验目的
熟悉定时/计数器T0的特点,学会合理选择定时方式并能根据具体情况结合软件的方式定时。
二.实验设备
IBMPC机一台
DP-51PRO.NET单片机仿真器、编程器、实验仪三合一综合开发平台一台
三.实验内容
用AT89C52单片机的定时/计数器T0产生1s的定时时间作为秒计数时间,当1s产生时秒计数加一,秒计数到60时,自动从零开始。
四.实验要求
要求采用PROTEUS软件实现上述实验。
五.实验步骤
1.打开ProteusISIS编辑环境,按照表中元件清单添加元件。
元件名称
所属类
所属子类
AT89C51
Microprocessor
8051Family
CAP
Capacitors
Generic
CAP-ELEC
Capacitors
Generic
CRYSTAL
Miscellaneous
——
RES
Resistors
Generic
7SEG-COM-CAT-GRN
Optoelectronics
7-SegmentDisplays
PULLUP
ModelingPrimitives
Digital[Miscellaneous]
添加元件后,在编辑区连接硬件电路如下:
2.在Keil中编写程序并与PROTEUS联合调试。
3.运行程序可以看到7段数码管显示0~59s的计数值,每个数值显示1s。
六.实验程序
程序:
SECONDEQU30H
COUNTEQU31H
ORG00H
LJMPSTART
ORG0BH
LJMPINT_T0
START:
MOVSECOND,#00H
MOVCOUNT,#00H
MOVDPTR,#TABLE
CLRA
MOVP0,A
MOVP2,A
MOVTMOD,#00H
MOVTH0,#(65536-50000)/256
MOVTL0,#(65536-50000)MOD256
SETBTR0
SETBET0
SETBEA
MOVIE,#82H
LJMP$
INT_T0:
MOVTH0,#(65536-50000)/256
MOVTL0,#(65536-50000)MOD256
INCCOUNT
MOVA,COUNT
CJNEA,#20,I2
MOVCOUNT,#00H
INCSECOND
MOVA,SECOND
CJNEA,#60,I1
MOVSECOND,#00H
I1:
MOVA,SECOND
MOVB,#10H
DIVAB
MOVCA,@A+DPTR
MOVP0,A
MOVA,B
MOVCA,@A+DPTR
MOVP2,A
I2:
RETI
TABLE:
DB3FH,06H,5BH,4FH,66H
DB6DH,7DH,07H,7FH,6FH
END
七.实验思考题
1.罗列一下Proteus软件的能带给我们的好处,指出一点最能帮助你的地方。
使用Proteus软件进行单片机系统仿真设计,是虚拟仿真技术和计算机多媒体技术相结合的综合运用,有利于培养学生的电路设计能力及仿真软件的操作能力;在单片机课程学习时,使用Proteus软件,对单片机的学习比单纯学习书本知识更容易接受,更容易提高。
实践证明,在使用Proteus进行系统仿真开发成功之后再进行实际制作,能极大提高单片机系统设计效率。
通过简单的查找和拖动就能完成画完一幅原理图,上手容易。
2.用Proteus界面中的播放键运行仿真与KeilμVision4的环境中联调运行它们两者的区别在什么地方?
答:
区别在于点Proteus界面中的播放键运行仿真可以观察运行结果,是在Proteus虚拟的硬件系统中运行程序,Keil的环境中联调运行是在真实的硬件中运行程序且可以查看各寄存器和存储器的状况。
3.Keil软件仿真与proteus的仿真对比。
答:
Keil软件仿真可以独立完成仿真,但只能通过联调调试与硬件电路连接进行仿真,操作复杂,不直观,且真实硬件电路的故障会干扰对系统设计问题的判断。
Proteus不能独立进行仿真,但可以绘制电路原理图,并通过与Keil软件相连进行仿真,方便直观,便于发现系统设计的问题。
感谢下载!
欢迎您的下载,资料仅供参考
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 实验 报告 93467