Skocz do zawartości

michal2904

Użytkownicy
  • Zawartość

    17
  • Rejestracja

  • Ostatnio

Ostatnio na profilu byli

Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.

Osiągnięcia użytkownika michal2904

Starszy odkrywca

Starszy odkrywca (5/19)

  • Za 5 postów
  • Młodszy Juror

Odznaki

0

Reputacja

  1. @Belferek Widzisz może to przez wersję biblioteki bo ja gdzieś czytałem że nie działało na innych wersjach tyko na 1.0 jeszcze raz sprawdzę 🙂
  2. @Belferek Działa działa sprawdzałem wcześniej ale silniki dalej nie działają 😞 w tamtym kodzie co wcześniej wstawiłem trzeba było zmienić adres wysyłany przez pilota ponieważ tam były np. 0xff i i zmieniłem na to co odbiera program co podesłał kolega @Belferek i dalej nie działa #include "AlphaBot.h" #define KEY2 0xFF18E7 //Key:2 #define KEY8 0xFF4AB5 //Key:8 #define KEY4 0xFF10EF //Key:4 #define KEY6 0xFF5AA5 //Key:6 #define KEY1 0xFF30CF //Key:1 #define KEY3 0xFF7A85 //Key:3 #define KEY5 0xFF38C7 //Key:5 #define SpeedDown 0xFFE01F //Key:VOL- #define SpeedUp 0xFFA857 //Key:VOL+ #define ResetSpeed 0xFF906F //Key:EQ #define Repeat 0xFF //press and hold the key #define IR 4 //he infrare remote receiver pin unsigned long n = 0; AlphaBot ArduinoCar = AlphaBot(); unsigned char t[30]; unsigned char results; char IR_decode(unsigned char code); void translateIR(); void setup() { Serial.begin(115200); pinMode(IR, INPUT); ArduinoCar.SetSpeed(150); } void loop() { if (IR_decode(&results)) { translateIR(); } if (millis() - n > 200) { ArduinoCar.Brake(); } } /*-----( Declare User-written Functions )-----*/ void translateIR() // takes action based on IR code received // describing KEYES Remote IR codes { n = millis(); ; switch (results) { case KEY1: ArduinoCar.LeftCircle(); break; case KEY2: ArduinoCar.Forward(); break; case KEY3: ArduinoCar.RightCircle(); break; case KEY4: ArduinoCar.Left(); break; case KEY5: ArduinoCar.Brake(); break; case KEY6: ArduinoCar.Right(); break; case KEY8: ArduinoCar.Backward(); break; case Repeat: break; default: ArduinoCar.Brake(); }// End Case } //END translateIR char IR_decode(unsigned char * code) { char flag = 0; unsigned int count = 0; unsigned char i, index, cnt = 0, data[4] = {0, 0, 0, 0}; if (digitalRead(IR) == LOW) { count = 0; while (digitalRead(IR) == LOW && count++ < 200) //9ms delayMicroseconds(60); t[0] = count; count = 0; while (digitalRead(IR) == HIGH && count++ < 80) //4.5ms delayMicroseconds(60); t[1] = count; for (i = 0; i < 32; i++) { count = 0; while (digitalRead(IR) == LOW && count++ < 15) //0.56ms delayMicroseconds(60); count = 0; while (digitalRead(IR) == HIGH && count++ < 40) //0: 0.56ms; 1: 1.69ms delayMicroseconds(60); if (count > 20)data[index] |= (1 << cnt); if (cnt == 7) { cnt = 0; index++; } else cnt++; } if (data[0] + data[1] == 0xFF && data[2] + data[3] == 0xFF) //check { code[0] = data[2]; Serial.println(code[0], HEX); flag = 1; } if (data[0] == 0xFF && data[1] == 0xFF && data[2] == 0xFF && data[3] == 0xFF) { code[0] = 0xFF; Serial.println("rep"); flag = 1; } } return flag; }
  3. @farmaceuta sprawdzałem to co napisał kolega na górze i wszystko idzie na pinie 4
  4. @Belferek dalej nie działa 😕
  5. @Belferek Mam również uno silniki działają na obu platformach uruchomiłem wtedy run test z dołączonego pliku i wszystko ładni działało próbowałem przełączać oraz patrzyłem na monitor portu i nic się nie działo tylko co jakiś czas wyświetlało się mniej więcej coś takiego (sony1)1 (sony2)1 (rec1)1 (rec2)1
  6. @Belferek widziałem lecz gdy je po przełączam to również nie działa wszystko chodzi na leonardo
  7. Witam mam następujący problem- Posiadam robota alphabot https://botland.com.pl/waveshare-roboty-edukacyjne/8077-alphabot-2-kolowa-platforma-robota-z-czujnikami-i-napedem-dc-waveshare-12249-5903351240291.html takiego jak w linku gdy wgrywam kod do sterowania ir kod nie działa czytałem że trzeba po przełączać jakieś zworki ale które nie wiem wstawiam również kod bo może to jest jego wina dodam że kod jest dołączony w instrukcji od robota z góry dziękuję za odpowiedź 🙂 #include "AlphaBot.h" #define KEY2 0x18 //Key:2 #define KEY8 0x52 //Key:8 #define KEY4 0x08 //Key:4 #define KEY6 0x5A //Key:6 #define KEY1 0x0C //Key:1 #define KEY3 0x5E //Key:3 #define KEY5 0x1C //Key:5 #define SpeedDown 0x07 //Key:VOL- #define SpeedUp 0x15 //Key:VOL+ #define ResetSpeed 0x09 //Key:EQ #define Repeat 0xFF //press and hold the key #define IR 4 //he infrare remote receiver pin unsigned long n = 0; AlphaBot ArduinoCar = AlphaBot(); unsigned char t[30]; unsigned char results; char IR_decode(unsigned char code); void translateIR(); void setup() { Serial.begin(115200); pinMode(IR, INPUT); ArduinoCar.SetSpeed(150); } void loop() { if (IR_decode(&results)) { translateIR(); } if (millis() - n > 200) { ArduinoCar.Brake(); } } /*-----( Declare User-written Functions )-----*/ void translateIR() // takes action based on IR code received // describing KEYES Remote IR codes { n = millis(); ; switch (results) { case KEY1: ArduinoCar.LeftCircle(); break; case KEY2: ArduinoCar.Forward(); break; case KEY3: ArduinoCar.RightCircle(); break; case KEY4: ArduinoCar.Left(); break; case KEY5: ArduinoCar.Brake(); break; case KEY6: ArduinoCar.Right(); break; case KEY8: ArduinoCar.Backward(); break; case Repeat: break; default: ArduinoCar.Brake(); }// End Case } //END translateIR char IR_decode(unsigned char * code) { char flag = 0; unsigned int count = 0; unsigned char i, index, cnt = 0, data[4] = {0, 0, 0, 0}; if (digitalRead(IR) == LOW) { count = 0; while (digitalRead(IR) == LOW && count++ < 200) //9ms delayMicroseconds(60); t[0] = count; count = 0; while (digitalRead(IR) == HIGH && count++ < 80) //4.5ms delayMicroseconds(60); t[1] = count; for (i = 0; i < 32; i++) { count = 0; while (digitalRead(IR) == LOW && count++ < 15) //0.56ms delayMicroseconds(60); count = 0; while (digitalRead(IR) == HIGH && count++ < 40) //0: 0.56ms; 1: 1.69ms delayMicroseconds(60); if (count > 20)data[index] |= (1 << cnt); if (cnt == 7) { cnt = 0; index++; } else cnt++; } if (data[0] + data[1] == 0xFF && data[2] + data[3] == 0xFF) //check { code[0] = data[2]; Serial.println(code[0], HEX); flag = 1; } if (data[0] == 0xFF && data[1] == 0xFF && data[2] == 0xFF && data[3] == 0xFF) { code[0] = 0xFF; Serial.println("rep"); flag = 1; } } return flag; }
  8. @jand Kabel okazał się sprawny ale komputer przez niego nie wykrywał arduino spróbowałem podłączyć jeszcze inny i wszystko pięknie działa. Zamykam temat 🙂 🙂 🙂
  9. To wiem Sprawdzałem 1 działa ale arduino nadal wywala błąd spróbuję ponownie z innym kablem 🙂
  10. W menedżerze Urządzeń też nie ma ale na starym kablu jest Tak
  11. Może to wina modelu laptopa obydwa to thinkpady t440p
  12. Teraz w ogóle mi się komunikat nie wyświetla słyszę dźwięk który świadczy o podłączeniu ale w ide nie ma mojego arduino
  13. @jand Dziwne jeszcze 2 tygodnie temu Leonardo działało poprawnie ,i nie było na nim jakiegoś specjalnie wymagającego kodu ,potem leżało sobie spokojnie w pudełeczku i w niedziele wyjmuje i bum nie działa.
  14. @jand Sterowniki mam zainstalowane dla pewności instalowałem jeszcze raz i nic się nie zmieniło , dodam że na laptopie poprawnie działa arduino uno
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.