Virtual Dj vezérlő

Hogyan programozzak AVR chipet? Programozók beállításai...
Bascom nyelvű programok...
Avatar
Bence
Tranzisztorgyógyász
Hozzászólások: 166
Csatlakozott: 2007. október 30. kedd, 6:00

Virtual Dj vezérlő

Hozzászólás Szerző: Bence »

Nem akartam tovább OFF-olni a Rotary enkodereket, ezért nyitottam egy új témát. Sikerült csinálni egy potméterből rotary enkodert! Itt a kód:

Kód: Egész kijelölése

$regfile = "m8def.dat"
$crystal = 10000000
$baud = 9600


Config Adc = Single , Prescaler = Auto

Start Adc


Dim W As Word
Dim We As Word


W = Getadc(0)
W = W + 1
We = W / 64


Do
    W = Getadc(0)
    W = W + 1
    W = W / 64
    If W > We Then
      Print "a"
      We = W
    Elseif W < We Then
      Print "d"
      We = W
    End If
Loop

End
A Virtual Dj-ben beállítottam, hogy az A betű +256-ot "tol" a crossfaderen, a D betű -256-ot. A crossfadernek összesen 4096 osztása van (a többi potméternek is). Így ahogy tekerem a potmétert úgy megy a VDJ-ben a crossfader!!! Egyébként kipróbáltam, kb 200 gombnyomást tud kezelni a gépem másodpercenként. Sarial keyboarddal próbáltam, de normális USB-s billentyűzettel is ennyi lenne szerintetek?
Bence
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3375
Csatlakozott: 2008. augusztus 29. péntek, 6:00

Hozzászólás Szerző: kapu48 »

Klassz az ötlet! Köszi az infót! Még jöhetnek ilyenek!
Az M8-as hamar betelik, picit spórolnák a memóriával!

Kód: Egész kijelölése

Do 
    W = Getadc(0) 
    W = W + 1 
    W = W / 64 
    If W > We Then 
      Print "a" 
     Elseif W < We Then 
      Print "d" 
    End If 
    We = W 
Loop
Csak 3 bytes de 10 potinál már 30!
:wink:
Igaz így meg ha nem tolod a potit fölöslegesen van 1 érték átadás!
:cry:
Ez a sor miért kellett? : W = W + 1 ? Nélküle is ugyan az az eredmény! Kipróbáltam szimulátorban!
:idea:
A hozzászólást 1 alkalommal szerkesztették, utoljára kapu48 2009. március 15. vasárnap, 20:13-kor.
Avatar
szovhoz
Bitfaragó
Hozzászólások: 608
Csatlakozott: 2007. április 7. szombat, 6:00

Hozzászólás Szerző: szovhoz »

W = W + 1 helyette incr w jobb szerintem én ezt használom vagy csökkentésnél W= W-1 => decr W.
Avatar
Bence
Tranzisztorgyógyász
Hozzászólások: 166
Csatlakozott: 2007. október 30. kedd, 6:00

Hozzászólás Szerző: Bence »

Azért kellett, mert az ADC 0-1023 és 1023/64 = 15,9 így az utolsó (a 16.) lépés lemarad.
Incr W gyorsabb?
Bence
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3375
Csatlakozott: 2008. augusztus 29. péntek, 6:00

Hozzászólás Szerző: kapu48 »

Incr W gyorsabb?
Igen 2 helyet 1 byte! Fele hely, fele idő!

És elég a 16 lépés?
Mért nem 1024/32 = 32?
Igy finomabb!
Avatar
Bence
Tranzisztorgyógyász
Hozzászólások: 166
Csatlakozott: 2007. október 30. kedd, 6:00

Hozzászólás Szerző: Bence »

Köszi.
És elég a 16 lépés?
Hát, a hangerőre igen, a tempóra több kéne legalább 64. De ezzel meg az a probléma, ha túl gyorsan tolom, akkor nem megy végig, mert nem veszi a gép az összes gombnyomást. Ezért vagyok kiváncsi, hogy az USB-s bill többet tud-e.
Bence
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3375
Csatlakozott: 2008. augusztus 29. péntek, 6:00

Hozzászólás Szerző: kapu48 »

Ez gyorsabb mint az If!
Do
W = Getadc(0)
Incr W
W = W / 64
Select Case W
Case Is > We : Print "a"
Case Is < We : Print "d"
End Select
We = W
Loop
Avatar
Bence
Tranzisztorgyógyász
Hozzászólások: 166
Csatlakozott: 2007. október 30. kedd, 6:00

Hozzászólás Szerző: Bence »

Köszi, de nem az AVR-rel van a baj, az túl gyors a géphez. A billentyűzet nem tud elég gyorsan reagálni. :?
Bence
Avatar
herc1234
Bitfaragó
Hozzászólások: 459
Csatlakozott: 2007. február 9. péntek, 7:00

Hozzászólás Szerző: herc1234 »

én építek egy usb-s billkezelőt meg megvan a bascomos
usb kiegészítés +ps2 emu de egyenlőre még nem sikerült
odáig eljutni hogy müködjön is.
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3375
Csatlakozott: 2008. augusztus 29. péntek, 6:00

Hozzászólás Szerző: kapu48 »

Hali!
Elakadtál valahol, vagy csak egyszerűen időhiány miatt nem halad?
Avatar
herc1234
Bitfaragó
Hozzászólások: 459
Csatlakozott: 2007. február 9. péntek, 7:00

Hozzászólás Szerző: herc1234 »

van egy soros portos verzió az ott megállt hogy kéne valami átvitelvezérlés mert anélkül nem indulnak el a számítógépen az ehez
tartozó szolgáltatások az usbhez meg olyan fejlesztőpanel is kéne
(mert az ATUSB szeriáról van szó)
Avatar
Bence
Tranzisztorgyógyász
Hozzászólások: 166
Csatlakozott: 2007. október 30. kedd, 6:00

Hozzászólás Szerző: Bence »

Vettem egy USB-s billentyűzetet, kipróbáltam és egy másodperc alatt csak 30 gombnyomást érzékel. :? :cry: A sorosportos ennél jobb volt. Valakinek van valami ötlete, hogy hogyan lehet megoldani a több gombnyomást másodperceként?
Bence
Avatar
herc1234
Bitfaragó
Hozzászólások: 459
Csatlakozott: 2007. február 9. péntek, 7:00

Hozzászólás Szerző: herc1234 »

qvázi soros vagy usb is akár...
Saját szoftware ahol egy byte 255 on/off le tud írni..
Azt meg hogy dróton küldöd e át vagy galambpostán szerintem
mindegy az csak a reakcióidő lesz.
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

A billkezelest a Win vegzi. A vezpultban adhatod meg, hogy mekkora varakozasok legyenek... en a sorosportra szavazok nagyobb sebesseg eseten....
Avatar
Bence
Tranzisztorgyógyász
Hozzászólások: 166
Csatlakozott: 2007. október 30. kedd, 6:00

Hozzászólás Szerző: Bence »

Sajnos a sorosport is kicsit lassú, de valószínűleg úgy fogom csinálni, hogy írok egy programot hozzá. A program olvassa a sorosportot (AVR küldi a billentyűket) és a program meg virtuálisan lenyom egy gombot, amit a VirtualDJ érzékel.
Visual Basic 2005-ben írom a progit, már a virtuális gombnyomás rész készen van, holnap megcsinálom a sorosport részt is.
Bence
Válasz küldése