نعم صحيح يوجد خطأ و تم تصحيحه و التجربة على البروتوس ...
كود:
int x=55;
void main()
{cmcon=07;
trisa=15;trisb.f3=0;portb.f3=0;
pwm1_init(5000);
while(1)
{if(porta.f0==0){while(porta.f0==0){}
pwm1_set_duty(x);
pwm1_start();
}
else if(porta.f1==0){while(porta.f1==0){}
pwm1_stop();
}
else if(porta.f2==0){while(porta.f2==0){x+=10;
if(x>255)x=255;
pwm1_set_duty(x);
delay_ms(500);
}
}
else if(porta.f3==0){while(porta.f3==0){x-=10;
if(x<55)x=55;
pwm1_set_duty(x);
delay_ms(500);
}
}
}
}
خطوات التشغيل :
1- الضغط على مفتاح البدء
2- الضغط على مفتاح الزيادة بشكل متقطع او مستمر لزيادة السرعة
3- الضغط على مفتاح النقصان بشكل متقطع او مستمر لتقليل السرعة
4- الضفط على مفتاح التوقف لايقاف المحرك