Привет Вот код для управления танковой шасси с 4-мя моторами через ардуинку и Flysky, оцените пж int rc_pulse1=1; //reading signal from FS int rc_pulse2=2; int mpwm1=3; //PWM channels for motors int mpwm2=4; int mpwm3=5; int mpwm4=6; void setup() { pinMode(1,INPUT); pinMode(2,INPUT); pinMode(3,OUTPUT); pinMode(4,OUTPUT); pinMode(5,OUTPUT); pinMode(6,OUTPUT); pinMode(7,OUTPUT); pinMode(8,OUTPUT); pinMode(9,OUTPUT); pinMode(10,OUTPUT); digitalWrite(3,LOW); digitalWrite(4,LOW); digitalWrite(5,LOW); digitalWrite(6,LOW); digitalWrite(7,LOW); digitalWrite(8,LOW); digitalWrite(9,LOW); digitalWrite(10,LOW); } void loop() { mpwm1=0; mpwm2=0; mpwm3=0; mpwm4=0; delay(50); rc_pulse1=pulseIn(1,HIGH,25000); rc_pulse2=pulseIn(2,HIGH,25000); delay(50); if(rc_pulse1>1024) { mpwm1,mpwm2=map(rc_pulse1,1024,2047,0,255); if(mpwm1,mpwm2>0) { analogWrite(3,mpwm1); analogWrite(5,mpwm2); } } delay(50); if(rc_pulse1<1023) { mpwm1,mpwm2=map(rc_pulse1,1023,0,0,255); if(mpwm1,mpwm2>0) { analogWrite(4,mpwm1); analogWrite(6,mpwm2); } } delay(50); if(rc_pulse2>1024) { mpwm3,mpwm4=map(rc_pulse2,1024,2047,0,255); if(mpwm3,mpwm4>0) { analogWrite(7,mpwm3); analogWrite(9,mpwm4); } } delay(50); if(rc_pulse2<1023) { mpwm3,mpwm4=map(rc_pulse2,1023,0,0,255); if(mpwm3,mpwm4>0) { analogWrite(8,mpwm3); analogWrite(10,mpwm4); } } delay(50); }
Комментарии: 13
Roman
убери delay из кода, мать твою.
Taras
Ок Вот это будет нежданчик если управление будет у мотoра как у шаговика, а не как просто у dc...
Roman
убрать дилэй значит переделать код.
Nazar
Еммм.... ет как понимать
Taras
Ща проверю Как понимать
Roman
убери map из кода, мать твою.
Nazar
Ему хватит и мапа
Roman
управление мотором и map? ок...
Taras
Ты о моей матери не говори, а то прыбью.
Nazar
А ему впринцыпе все прийдетса переписать
Roman
"убери ребенка от экрана, мать твою" (с)
Nazar
Т.к. у него код к драйвера не подойдет
Taras
Блен копец Опять сидеть и сёрфить всю ночь