哈工大单片机实验报告 下载本文

内容发布更新时间 : 2024/11/5 14:57:35星期一 下面是文章的全部内容请认真阅读。

一、实验目的

1.掌握直流电机的驱动原理。 2.了解直流电机调速的方法。

二、实验内容

1.用0832 D/A转换电路后的输出经放大后驱动直流电机。

2.编制程序改变0832输出经放大后的方波信号的占空比来控制电机转速。本实验中 D/A输出为双极性输出,因此电机可以正反向旋转。

三、程序框图

四、实验电路

五、实验过程

实验时,需先进行D/A电压调零,然后再运行电机调速主程序。实验中,通过中断和循环延时的方法通过D/A产生一定占空比的方波信号,通过数据送缓冲区,将控制信号送入D/A产生控制脉冲。由于D/A输出为双极性输出,因此电机可以正反向旋转驱动电机。

-40-

通过控制方波信号的占空比,即控制一段时间内的平均电压,从而控制电机转速。

六、实验结果及分析

实验中可以观察到运行调零程序后小电机停转,运行调速程序后小电机开始旋转并以一定的周期变换转动方向。

问题回答:实验中,可通过控制方波信号的占空比来改变电机转速。可修改LO20程序段中语句MOV A,#80H中立即数80H的值,来修改占空比。80H即占空比为1/2,将其值改小,即可增大占空比,从而使电机转速加快。

七、实验源程序

;小直流电机调速实验 ORG 05E0H SE13: MOV SP, #53H MOV 7EH, #00H MOV 7DH, #08H MOV 7CH, #03H

MOV 7BH, #02H ;显示缓冲区初值 LO20: MOV A, #80H ;停止 CALL LO21

MOV A, #70H ;反转 CALL LO21

MOV A, #80H ;停止 CALL LO21

MOV A, #0FFH ;正转 CALL LO21 SJMP LO20

;======D/A直流电机正转、反转、停止=============== LO21: MOV DPTR, #0FFE0H

MOVX @DPTR, A ;送0832转换 MOV R0, #79H LCALL PTDS MOV R2, #00H

L023: LCALL DIS ;显示 DJNZ R2, L023 RET

;---------------------------

PTDS: MOV R1, A ;拆送显示缓冲区 ACALL PTDS1 MOV A, R1 SWAP A

PTDS1: ANL A, #0FH MOV @R0, A INC R0 RET

;-----------------------------

-41-

DIS: PUSH DPH PUSH DPL SETB RS1

MOV R0, #7EH MOV R2, #20H MOV R3, #00H MOV DPTR, #LS0 LS2: MOV A, @R0

MOVC A, @A+DPTR MOV R1, #0DCH MOVX @R1, A MOV A, R2 INC R1

MOVX @R1, A LS1: DJNZ R3, LS1 CLR C RRC A

MOV R2, A DEC R0 JNZ LS2

MOVX @R0, A DEC R0 CPL A

MOVX @R0, A CLR RS1 POP DPL POP DPH RET

;----------------------------

LS0: DB 0C0H, 0F9H, 0A4H, 0B0H, 99H, 92H DB 82H, 0F8H, 80H, 90H, 88H, 83H, 0C6H

DB 0A1H, 86H, 8EH, 0FFH, 0CH, 89H, 7FH, 0BFH ;------------------------------- END

实验心得体会:

通过这两次单片机的实验,我不仅加深了对单片机理论知识的理解,而且还学会了如何能更快更好地写出汇编源程序。无论是软件实验还是硬件实验都需要编程,通过这两次的实验,使我感触最深的是编程是一个技术,为了达到同样的目的,不同的人就有不同的方法。这两次的实验也让我认识到了要开发单片机的应用,不但要掌握单片机硬件和软件方面的知识,而且还要了解各应用系统的专业知识,把它们融会贯通和有机结合。培养自己接受新知识的自学能力,培养自己的创新精神,当然,最重要的还是态度,无论做什么事情,都要认真、坚强、有毅力、有勇气。

-42-