
为什么我仿真的AT89C51控制直流电机的正反转不对,用PROTEUS仿真软件
测试程序说明:P1_0、P1_1分别接IN1、IN2,控制电机正转与倒转P1_3为电机1的PWM信号,接ENA#include<REGX51.H>unsignedchar...
测试程序说明:
P1_0 、P1_1分别接IN1、IN2,控制电机正转与倒转
P1_3为电机1的PWM信号,接ENA
#include <REGX51.H>
unsigned char on,i,k;
void delay1ms(unsigned char x)
{
char i,j;
for(i=0;i<x;i++)
for(j=0;j<120;j++);
}
main()
{
P1_0=0;
P1_1=1;
while(1)
{
on=0;
for(i=0;i<100;i++)
{
if (i % 10 ==0)
{
P1_0=~P1_0;
P1_1=~P1_1;
}
for(k=0;k<100;k++)
{
P1_3=1;
delay1ms(on+i);
P1_3=0;
delay1ms(100-(on+i));
}
}
}
}
请问错误在哪里呢还是我的原理图连错了,求高人为我答疑啊
仿真 展开
P1_0 、P1_1分别接IN1、IN2,控制电机正转与倒转
P1_3为电机1的PWM信号,接ENA
#include <REGX51.H>
unsigned char on,i,k;
void delay1ms(unsigned char x)
{
char i,j;
for(i=0;i<x;i++)
for(j=0;j<120;j++);
}
main()
{
P1_0=0;
P1_1=1;
while(1)
{
on=0;
for(i=0;i<100;i++)
{
if (i % 10 ==0)
{
P1_0=~P1_0;
P1_1=~P1_1;
}
for(k=0;k<100;k++)
{
P1_3=1;
delay1ms(on+i);
P1_3=0;
delay1ms(100-(on+i));
}
}
}
}
请问错误在哪里呢还是我的原理图连错了,求高人为我答疑啊
仿真 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询