Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
8
Cevap
778
Tıklama
0
Öne Çıkarma
Serial monitordeki hex değerlerini işlemede yardım
G
10 yıl
Yüzbaşı
Konu Sahibi

Merhaba, HID'tan sürekli sinyal alabiliyorum, serial monitor'de değişkenler sürekli gözüküyor. HEX formatında. İstediğim olay şu,
cihaza giriş yapılmadığında aldığım değer X: 01FC Y: 01FC , max durumdaki değerler 03FF ve min değerler 0000
01FC'den her uzaklaşıldığında, servonun artan hızla saat yönünde dönmesini istiyorum. İşlem mutlak değer içerisinde olmayacağından negatif çıkan sonuçlarda --kod saat yönünde olmasına rağmen-- saat yönünün tersine döneceğini varsayarak bunu söyledim.

Ayrıca bir servonunda bir değeri gördüğünde belirlenmiş bir hızla belirlenmiş bir yöne dönmesini istiyorum. Mesela A:00 da hareketsiz A:01 değeri gözükünce bu A değişkenine göre sabit bir hız ve yön atamak istiyorum. Şimdiden teşekkürler :)

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



G
10 yıl
Yüzbaşı
Konu Sahibi

Up... Arkadaşlar, 180 derece dönebilen servo motora açıya gitmesini değilde bir hızla bir yönde dönmesini nasıl sağlayabilirim ? Şu sorunu ufak ufak çözebiliriz. Ufak çaplı bir beyin fırtınası bekliyorum :)



< Bu ileti mobil sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.
H
10 yıl
Teğmen

Bunu yapmayı amaçlarken ne kullanacaksın ? Arduino mu ?


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @Gesaffelstein
G
10 yıl
Yüzbaşı
Konu Sahibi

Evet Arduino Uno kullanıyorum. Usb Host Shield ile birlikte.


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @majnunn
H
10 yıl
Teğmen

Belirli bir delay değerinde verirsen istediğin hızda çevirmez misin zaten


Bu mesaja 1 cevap geldi.
G
10 yıl
Yüzbaşı
Konu Sahibi

İstediğim şey, -hızın- aldığım değere oranla değişmesi durumu.




Bu mesajda bahsedilenler: @majnunn
G
10 yıl
Yüzbaşı
Konu Sahibi

Mesela potansiyometre bağladığımı düşün. Hızı analog kontrol etmek gibi.



< Bu ileti mobil sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.
G
10 yıl
Yüzbaşı
Konu Sahibi

Buradan yapılabilecek birşeymiş anladığım kadarıyla ama neyi ne yapmam gerektiğini anlamadım.

#include "le3dp_rptparser.h" 

JoystickReportParser::JoystickReportParser(JoystickEvents *evt) :
joyEvents(evt)
{}

void JoystickReportParser::Parse(HID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf)
{
bool match = true;

// Checking if there are changes in report since the method was last called
for (uint8_t i=0; i<RPT_GAMEPAD_LEN; i++) {
if( buf[i] != oldPad[i] ) {
match = false;
break;
}
}
// Calling Game Pad event handler
if (!match && joyEvents) {
joyEvents->OnGamePadChanged((const GamePadEventData*)buf);

for (uint8_t i=0; i<RPT_GAMEPAD_LEN; i++) oldPad[i] = buf[i];
}
}

void JoystickEvents::OnGamePadChanged(const GamePadEventData *evt)
{
Serial.print("X: ");
PrintHex<uint16_t>(evt->x, 0x80);
Serial.print(" Y: ");
PrintHex<uint16_t>(evt->y, 0x80);
Serial.print(" Hat Switch: ");
PrintHex<uint8_t>(evt->hat, 0x80);
Serial.print(" Twist: ");
PrintHex<uint8_t>(evt->twist, 0x80);
Serial.print(" Slider: ");
PrintHex<uint8_t>(evt->slider, 0x80);
Serial.print(" Buttons A: ");
PrintHex<uint8_t>(evt->buttons_a, 0x80);
Serial.print(" Buttons B: ");
PrintHex<uint8_t>(evt->buttons_b, 0x80);
Serial.println("");
}


Bu mesaja 1 cevap geldi.
G
10 yıl
Yüzbaşı
Konu Sahibi

Detaylı açıklama isteyen olursa burada Arduino forum



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.