- Код: Выделить всё • Развернуть
int ch=PinE;
while(ch!='\r')
...
if(ch>500)
что вы этим хотели сказать?
Код не в стадии экспериментов, а в стадии тупого перебора "а может так заработает?"
Естественно зависает. Где ch изменяется?
roboforum.ruТехнический форум по робототехнике. |
|
|
|
int ch=PinE;
while(ch!='\r')
...
if(ch>500)
Реклама | ||||
|
|
|||
Реклама | ||||
|
|
|||
#include<iostream>
int PinVL =9; //âïåðåä ëåâûé
int PinNL =10; //íàçàä ëåâûé
int PinVR =11; //âïåðåä ïðàâûé
int PinNR =12; //íàçàä ïðàâûé
int PinSL =0; //ñåíñîð ëåâûé
int PinSR =1; //ñåíñîð ïðàâûé
void setup()
{
analogReference(DEFAULT);
pinMode(PinVL, OUTPUT); //ÓÑÒÀÍÎÂÊÀ ÊÀÊ ÂÛÕÎÄ
pinMode(PinNL, OUTPUT);
pinMode(PinVR, OUTPUT);
pinMode(PinNR, OUTPUT);
Serial.begin(9600);
}
void motor(int A, int B, int C, int D)
{
digitalWrite(PinVL,A);
digitalWrite(PinNL,B);
digitalWrite(PinVR,C);
digitalWrite(PinNR,D);
}
void motorStop()
{
motor(LOW,LOW,LOW,LOW);
}
void loop()
{
int signalL=analogRead(PinSL);
int signalR=analogRead(PinSR);
signalL = constrain(signalL,0,1023);
signalR = constrain(signalR,0,1023);
motorStop();
if (signalL<470 && signalR<470) //åñëè íåò ïðåïÿòñòâèé ïîëíûé âïåðåä
motor(HIGH,LOW,HIGH,LOW);
delay (200);
motorStop();
delay (1);
if (signalL>800 && signalR>800) //åñëè ïðåïÿòñòâèå ïðÿìî ïî êóðñó,
{ //íàçàä è ðàçâîðîò
motor (LOW,HIGH,LOW,HIGH);
delay(500);
motorStop();
delay (1);
motor (HIGH,LOW,LOW,HIGH);
delay(300);
}
else
if (signalL<600 && signalR>600) //åñëè ïðåïÿòñòâèå ñëåâà, ëåâûé âïåðåä
{
int roatLr = map(signalL, 1023, 450, 255, 0);
motor (HIGH,LOW,LOW,roatLr);
delay(100);
}
else
if (signalL>600 && signalR<600) //åñëè ïðåïÿòñòâèå ñïðàâà, ïðàâûé âïåðåä
{
int roatRr = map(signalR, 1023, 450, 255, 0);
motor (LOW,roatRr,HIGH,LOW);
delay(100);
}
}
holomrn писал(а):мнда.
- Код: Выделить всё • Развернуть
int ch=PinE;
while(ch!='\r')
...
if(ch>500)
что вы этим хотели сказать?
Код не в стадии экспериментов, а в стадии тупого перебора "а может так заработает?"
Естественно зависает. Где ch изменяется?
holomrn писал(а):мнда.
- Код: Выделить всё • Развернуть
int ch=PinE;
while(ch!='\r')
...
if(ch>500)
что вы этим хотели сказать?
Код не в стадии экспериментов, а в стадии тупого перебора "а может так заработает?"
Естественно зависает. Где ch изменяется?
Angel71 писал(а):robovan, кому не даётся, то и не программист, всё просто. а у tc уже вон сколько кода получилось.
кстати привета, редко ты в последнее время появляешся.
Angel71 писал(а):диплом с друзяками делаете?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14