单片机控制电机转速PWM
单片机控制电机转速(PWM)
1
课程设计任务书
2
目录
1课程设计的目的和要
求 .............................................................................. 2
1.1课程设计的目
的........................................................................................................ 2
1.2课程设计的基本要
求 ............................................................................................. 2 2总体设
计 .............................................................................................................. 2
2.1 硬件总体
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
设
计 ................................................................................................. 2
2.2 软件总体方案设
计 ................................................................................................. 3 3 硬件设
计 ............................................................................................................. 3
3.1 主要芯片介
绍 ........................................................................................................... 3
3.2 硬件电路设
计 ........................................................................................................... 5
4、软件设
计 .......................................................................................................... 6
5、结束
语 ............................................................................................................... 7 附
录 .......................................................................................................................... 8 程序清
单 ................................................................................................................................ 8
3
1课程设计的目的和要求
1.1课程设计的目的
1、了解直流电机PWM调速的原理。
2、学习ADC0809的工作原理,掌握其编程方法。
1.2课程设计的基本要求
1、通过ADC0809采样0—5V的电压值(由电位器产生)。
2、根据采样值产生占空比不同的脉冲信号,控制电机转速。
2总体设计
2.1 硬件总体方案设计
硬件方案设计的详细框图如图2.1所示:
通过ADC0809采样由电位计产生的0—5V的电压值,经过A/D转换后,
输入给MCS-51单片机,并由单片机调节占空比,输出脉冲信号,进一步
控制电机转速。
图2.1
4
2.2 软件总体方案设计
直流电机转速的调节需要改变输出脉冲的占空比,因此需要编写一个能输出方波的子程序。如先让PWM置1,延时一段时间后,再将PWM清零,再延时,如此反复就能达到输出方波的目的。通过调节电位器的电压输出改变输出方波的占空比,达到调速的目的。主要包括定时程序、A/D转换的读入程序、PWM的输出程序、以及延时程序。
3 硬件设计
3.1 主要芯片介绍
MCS-51芯片介绍 :MCS-51系列单片机是美国Intel公司开发的8位单片机,又可以分为多个子系列。MCS-51系列单片机共有40条引脚,包括32条I/O接口引脚、4条控制引脚、2条电源引脚、2条时钟引脚。
RSTVSS
引脚说明:P0.0,P0.7
I/O接
5
口,第二功能作为存储器扩展时的地址/数据复用口。 P1.0,P1.7:P1口8位口线,通用I/O接口无第二功能。 P2.0,P2.7:P2口8位口线,第一功能作为通用I/O接口,第二功
能作为存储器扩展时传送高8位地址。 P3.0,P3.7:P3
口8位口线,第一功能作为通用I/O接口,第二功
能作为为单片机的控制信号。ALE/ PROG:地址锁存允许/编程脉冲输
入信号线(输出信号)PSEN:片外程序存储器开发信号引脚(输出信
号)EA/Vpp:片外程序存储器使用信号引脚/编程电源输入引脚
RST/VPD:复位/备用电源引脚。
ADC0809芯片介绍:ADC0809是一种比较典型的8位8通道逐次逼近
式A/D转换器,CMOS工艺,可实现8路模拟信号的分时采集,片内
有8路模拟选通开关,以及相应的通道地址锁存用译码电路,其转换
时间为100μs左右,采用双排28引脚封装,其引脚说明如下:
图3.2
IN0,IN7:8路模拟量输入
ADDA,ADDC:地址线用于选择模拟量输入通道
6
ALE:地址锁存允许信号
START:转换启动信
D0,D7:数据输出线
OE:输出允许信号,低电平允许转换结果输出
CLOCK:时钟信号输入引脚,通常使用500KHz
EOC:转换结束信号,为0代
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
正在转换,1代表转换结
Vcc:,5V电压VREF(,)、VREF(,):参考电压
3.2 硬件电路设计
(1)PWM 调速电路原理及说明 JUMP跳线为极性选择。2、3脚短
接(模块上选择D端)为双极性;1、2脚短接(模块上选择S端)为单极性。 单极性时,PWM IN为高,电机两端无电压;PWM IN为低,电机两端为正电压。 双极性时,PWM IN为高,电机两端为负电压;PWM IN为低,电机两端为正电压。
(2)PWM调速电路基本测试方法 将CPU模块的P1.0~P1.1分别接至CPU挂箱的K1~K3,T0接PWM调速模块的PWM IN,模块的跳线1、2脚短接。运行测试程序,改变K1~K3的值,电机转速应随之变化。
7
图3.3
4软件设计
由于电位器输出为模拟电压,而单片机所能处理的仅为数字信号,所以要经过ADC0809将电位器的输出装换为数字信号。因此编程时要启动IN0,启动A/D转换,并用软件延时一段时间等待转换结束,然后读取转换结果并将其存入指定的寄存器供调用。 直流电机转速的调节需要改变输出脉冲的占空比,因此需要编写一个能输出方波的子程序。如先让PWM置1,延时一段时间后,再将PWM清零,再延时,如此反复就能达到输出方波的目的。通过调节电位器的电压输出改变输出方波的占空比,达到调速的目的。
8
对应的程序框图如图5.1所示:
图5.1
5 结束语
通过一周的单片课程设计,学到了很多有用的东西,让我对单片机和汇编语言程序设计都有了新的理解。 首先,对MCS-51单片机的工作原理和具体的功能实现有了一个更高的认识。对于硬件电路,以前只是大概了解,实验后,对单片机的各个端口,寄存器都有了一个比较系统的认识。 其次,学会了汇编语言的程序编写。汇编语言具有编写的程序效率高,占用的存储空间小,运行速度快等优点,相比于高级语言和机器语言都有一定的优势。因此,
掌握汇编语言的程
9
序编写对于以后的学习都会有很大的帮助。另外,汇编语言的学习还可以帮助理解单片机的硬件电路工作原理,一举两得。 再次,单片机的功能很强大,所能实现的功能并不仅限于这次课程设计。单片机还能实现更多更实用的功能,应该学会触类旁通,举一反三,在课程设计的基础上创新,开发自己的创造力。
最后,感谢一周内老师们的悉心指导~
附录
程序清单
ADC EQU 35H
CLOCK BIT P2.4;定义ADC时钟位
ST BIT P2.5
EOC BIT P2.6
OE BIT P2.7
PWM BIT P3.7
ORG 00H
SJMP START
ORG 0BH
LJMP INTT0
10
START: MOV TMOD,#02H
MOV TH0,#20
MOV TL0,#00H
MOV IE,#82H
SETB TR0
WAIT: CLR ST
SETB ST
CLR ST;启动A/D转换 JNB EOC,$;等待转换结束
SETB OE
MOV ADC,P1;读A/D转换结果 CLR OE
SETB PWM;PWM输出 MOV A,ADC
LCALL DELAY
CLR PWM
MOV A,#255
SUBB A,ADC
LCALL DELAY
SJMP WAIT
INTT0: CPL CLOCK;提供ADC时钟信号 RETI
11
DELAY: MOV R6,#1 D1: DJNZ R6,D1 DJNZ
ACC,D1 RET
END
12