标题:
基于单片机直流电机的pwm调速
[打印本页]
作者:
3083607624
时间:
2017-7-20 23:02
标题:
基于单片机直流电机的pwm调速
基于直流电机的pwm调速
单片机源程序如下:
#include "reg52.h"
typedef unsigned int u16;
typedef unsigned char u8;
sbit PWM=P1^0;
bit DIR;
u16 count,value,timer1;
void Timer1Init(void)
{
TMOD|=0X10;
TH1 = 0xFF;
TL1 = 0xff;
ET1 = 1;
EA = 1;
TR1 = 1;
}
void main(void)
{
Timer1Init(); //定时器1初始化
while(1)
{
if(count>50) //该变量控制中心点移动的快慢
{
count=0;
if(DIR==1)
{
value++; //中心点右移
}
if(DIR==0)
{
value--; //中心点左移
}
}
if(value==1000) //方向
{
DIR=0;
}
if(value==0)
{
DIR=1;
}
if(timer1>1000) //一个周期
{
timer1=0;
}
//PWM工作
if(timer1 <value) //与中心点进行比较
{
PWM=1; //小于中心点输出 1
}
else
{
PWM=0; //大于等于中心点输出 0
}
}
}
……………………
…………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
PWM.rar
(23.31 KB, 下载次数: 23)
2017-7-20 23:02 上传
点击文件名下载附件
调速
下载积分: 黑币 -5
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1