2019-07-16 06:48发布
liutubao 发表于 2011-9-2 22:26 用PWM控制 298,可以用含有PWM功能的单片机做,或者是定时器不过定时器不是很精确 ...
最多设置5个标签!
我现在用两个定时器输出两路PWM波,控制两个直流减速电机,靠,什么问题都有。。。。咋办,你那有现成的没?我这查资料,看的,你看看对不对。
#include<reg52.h>
#include<math.h>
#define uchar unsigned char
#define uint unsigned int //头文件,宏定义//
sbit ML_0=P0^0;
sbit ML_1=P0^1; //左边电机,输入接P1 0 1口,右边电机,接P1 2 3
sbit MR_0=P0^2;
sbit MR_1=P0^3;
uchar ML_count1,ML_num1;
uchar MR_count1,MR_num1;
void init_t0()
{
TH0=176;
TL0=176;
TR0=1;
ET0=1;
EA=1;
}
void init_t1()
{
TH1=176;
TL1=176;
TR1=1;
ET1=1;
EA=1;
}
void main()
{
init_t0();
init_t1();
ML_num1=10;
MR_num1=10;
ML_0=0;
MR_0=0;
while(1)
{
}
}
void timer0() interrupt 1
{
ML_count1++;
if(ML_count1==ML_num1)
ML_1=0;
if(ML_count1==20)
{
ML_count1=0;
ML_1=1;
}
TH0=176;
TL0=176;
}
void timer1() interrupt 1
{
MR_count1++;
if(MR_count1==MR_num1)
MR_1=0;
if(MR_count1==20)
{
MR_count1=0;
MR_1=1;
}
TH1=176;
TL1=176;
}
一周热门 更多>