直流电机的介绍
直流电机是一种将电能转换为机械能的装置。一般的直流电机有两个电极,当电极正接时,电机正转,当电极反接时,电机反转 直流电机主要由永磁体(定子)、线圈(转子)和换向器组成 除直流电机外,常见的电机还有步进电机、舵机、无刷电机、空心杯电机等
PWM介绍
PWM(Pulse Width Modulation)即脉冲宽度调制,在具有惯性的系统中,可以通过对一系列脉冲的宽度进行调制,来等效地获得所需要的模拟参量,常应用于电机控速、开关电源等领域 PWM重要参数:
频率 = 1 / TS 占空比 = TON / TS 精度 = 占空比变化步距
例如:利用不同频率的0 1 0 1(不同的周期)来实现等效sin的电压与时间的电压。
可以通过PWM的方法来模拟很多计算机中不能直接做出来的参量。
高电平表示开,低电平表示关
Ts表示的是一个开关周期。
产生PWM的方法
通过计数器的值增长到某一个值来实现控制占空比
当Count<Compare的时候Motor输出1,等效于PWM中的高电平
当Count>Compare的时候Motor输出0,等效于PWM中的低电平
高低电平的交叉能实现直流电机的转动
Compare的大小能控制直流电机的转动速度的大小
代码实现
sbit Motor=P1^0;
void Timer0_Routine() interrupt 1
{
TL0 = 0x9C; //设置定时初值
TH0 = 0xFF; //设置定时初值
Counter++;
Counter%=100; //计数值变化范围限制在0~99
if(Counter<Compare) //计数值小于比较值
{
Motor=1; //输出1
}
else //计数值大于比较值
{
Motor=0; //输出0
}
}