标题:
51单片机直流电机调速源程序
[打印本页]
作者:
阿杜666
时间:
2019-4-13 21:42
标题:
51单片机直流电机调速源程序
我不多说,绝对可用!
上贴。
单片机源程序如下:
#include "reg52.h"
sbit IN1=P1^1;
sbit IN2=P1^2;
sbit IN3=P1^3;
sbit IN4=P1^4;
unsigned char pwm_val_right=0;
unsigned char push_val_right=0;
unsigned int time=0;
unsigned char pwm_val_left=0;
unsigned char push_val_left=0;
bit right_moto_stop=1;
sbit right_moto_pwm=P2^0;
bit left_moto_stop=1;
sbit left_moto_pwm=P2^1;
void delay(unsigned int i)
{
unsigned int k;
for(k=0;k<7000;k++)
for(i=0;k<i;i++);
}
void pwm_out_right_moto(void)
{
if(right_moto_stop)
{
if(pwm_val_right<=push_val_right)
right_moto_pwm=1;
else
right_moto_pwm=0;
if(pwm_val_right>=100)
pwm_val_right=0;
}
else right_moto_pwm=0;
}
void pwm_out_left_moto(void)
{
if(left_moto_stop)
{
if(pwm_val_left<=push_val_left)
left_moto_pwm=1;
else
left_moto_pwm=0;
if(pwm_val_left>=100)
pwm_val_left=0;
}
else right_moto_pwm=0;
}
void time0_init()
{
TMOD=0X01;
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
TR0=1;
ET0=1;
EA=1;
}
void forward(unsigned char i)
{
push_val_right=i;
push_val_left=i;
IN1=0;
IN2=1;
IN3=1;
IN4=0;
}
void forward1(unsigned char l)
{
push_val_right=l;
push_val_left=l;
IN1=1;
IN2=0;
IN3=0;
IN4=1;
}
void time0()interrupt 1
{
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
ET0=1;
TR0=1;
time++;
pwm_val_right++;
pwm_out_right_moto();
pwm_val_left++;
pwm_out_left_moto();
}
void main()
{
unsigned char i,k;
time0_init();
while(1)
{
for(i=10;i<100;i++)
{
forward(i);
delay(10000);
}
for(k=100;k<=100;k--)
{
forward(k);
delay(10000);
}
for(i=10;i<100;i++)
{
forward1(i);
delay(10000);
}
for(k=100;k<=100;k--)
{
forward1(k);
delay(10000);
}
}
}
复制代码
所有资料51hei提供下载:
keil2.zip
(35.97 KB, 下载次数: 35)
2019-4-13 21:42 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
Axinjural
时间:
2019-4-18 08:29
没注释的吗 新手看得有点吃力
作者:
落叶无情。。
时间:
2019-4-18 09:48
有仿真吗
作者:
阿杜666
时间:
2019-4-21 20:36
落叶无情。。 发表于 2019-4-18 09:48
有仿真吗
没有,你按照上面接就行了,用LN298点击驱动。
作者:
阿杜666
时间:
2019-4-21 20:39
Axinjural 发表于 2019-4-18 08:29
没注释的吗 新手看得有点吃力
没有,哈哈哈,加油相信你可以的,他其实跟产生方波一样的。
作者:
阿杜666
时间:
2019-4-21 20:40
落叶无情。。 发表于 2019-4-18 09:48
有仿真吗
电机驱动,打错字了。
作者:
ls147258
时间:
2019-12-1 17:11
无情;感谢,这代码顺序和我一样,吧函数写在后面还得来回翻着看。眼疼。
作者:
TZTtt
时间:
2019-12-10 08:41
有电路图吗
作者:
ujsme
时间:
2019-12-10 14:52
不错的代码,用来学习,谢谢
作者:
Ada1540627258
时间:
2020-1-2 12:12
谢谢大佬,很有帮助
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1