Turinys:

Naudokite „Palm“infraraudonųjų spindulių klaviatūrą su „Android“įrenginiais: 5 žingsniai
Naudokite „Palm“infraraudonųjų spindulių klaviatūrą su „Android“įrenginiais: 5 žingsniai

Video: Naudokite „Palm“infraraudonųjų spindulių klaviatūrą su „Android“įrenginiais: 5 žingsniai

Video: Naudokite „Palm“infraraudonųjų spindulių klaviatūrą su „Android“įrenginiais: 5 žingsniai
Video: 25 atradimai Amazonės atogrąžų miškuose, kurių niekas negali paaiškinti 2024, Lapkritis
Anonim
Naudokite „Palm“infraraudonųjų spindulių klaviatūrą su „Android“įrenginiais
Naudokite „Palm“infraraudonųjų spindulių klaviatūrą su „Android“įrenginiais
Naudokite „Palm“infraraudonųjų spindulių klaviatūrą su „Android“įrenginiais
Naudokite „Palm“infraraudonųjų spindulių klaviatūrą su „Android“įrenginiais
Naudokite „Palm“infraraudonųjų spindulių klaviatūrą su „Android“įrenginiais
Naudokite „Palm“infraraudonųjų spindulių klaviatūrą su „Android“įrenginiais

Sėdėjau „PalmOne“belaidėje klaviatūroje ir norėjau turėti „Bluetooth“klaviatūrą savo telefonui. Vienintelė problema buvo ta, kad „PalmOne“klaviatūra buvo pagrįsta infraraudonųjų spindulių ryšiu.

Aš taip pat turėjau „Brainlink“įrenginį. Tai gana mielas prietaisas, skirtas tarpininkauti tarp skirtingų įrenginių. Jame yra „atxmega16“procesorius, įkraunama baterija, kai kurie jutikliai, „Bluetooth“radijas, daugybė prievadų, dėklas ir atnaujinama programinė įranga, skirta viskam valdyti. „Brainlink“gamyba nutraukiama, tačiau „SurplusShed“tai turi už 39 USD, o jie periodiškai parduoda 30–50% nuolaidą viskam. Gavau už 20 USD. Taip pat galite naudoti savo „atxmega plus“„Bluetooth“plokštę (schemos čia), tačiau jūsų išlaidos gali būti ne mažesnės.

Bet kokiu atveju, nustačius, kur yra klaviatūros signalo linija, atnaujinus „Brainlink“programinę įrangą ir parašius „Android“tvarkyklę klaviatūrai, ji veikia gana gerai. Kadangi didžioji dalis darbo buvo tiriama ir programinė įranga, dabar, kai tai padaryta, tai yra gana lengvas projektas visiems, turintiems „Brainlink“. Tau reikia:

  • „PalmOne“belaidė klaviatūra
  • Smegenų nuoroda
  • 3 arba 8 kontaktų „Brainlink“raištis (1,25 mm žingsnio JST stiliaus jungtis); Galite naudoti 8 kontaktų pririšimą, įtrauktą į „Brainlink“, tačiau norėsite užsisakyti daugiau kitiems projektams
  • Lituoklis ir geležis
  • Izoliacinė juosta
  • Neprivaloma: kabliukas ir kilpa

Anksčiau aš naudoju „Brainlink“, norėdamas prisijungti prie „Mindflex EEG“laisvų rankų įrangos ir „Roomba“. Tai tikrai puikiai tinka atliekant serijinio ir „Bluetooth“sujungimo užduotis. Aš tiesiog gaminu skirtingas jungtis skirtingiems įrenginiams ir galiu perkelti „Brainlink“tarp jų.

1 žingsnis: fonas

Fonas
Fonas
Fonas
Fonas
Fonas
Fonas

Nedvejodami praleiskite šį fono aprašymą.

„PalmOne“belaidė klaviatūra siunčia savo duomenis per IR LED ant koto, naudodami „IrDA“. Nors duomenims dekoduoti galima naudoti IR detektorių, yra paprastesnis būdas. Jei per pusę sulenksite klaviatūrą, atsiskleis trys varinės juostelės. Vidurinis yra įžemintas, o apatinis - perdavimo linija. Įdėjus juos į osciloskopą, patikrinama, ar signalas perdavimo linijoje yra užkoduotas maždaug 9600 (tiksliau: 9760) 8 N 2, esant aukštam lygiui apie 1,56 V, o naudojant irDA impulsų formavimą: 1 yra didelis, o teigiami impulsai užtrukti 3/16 bitų laiko.

Deja, visa tai reiškia, kad negalime to tiesiog prijungti prie paprasto „Bluetooth“modulio (bent jau ne, nesukūrę jam tinkintos programinės įrangos), kaip tai dariau savo „Mindflex“projekte. Laimei, „Braxlink“„atxmega“turi „IRDA“režimą savo UART. Į „Brainlink“programinę -aparatinę įrangą paprasta pridėti šiek tiek kodo, leidžiančio „J1“kodui perjungti jį į „IrDA“režimą. Tikėjausi, kad aukšto 1,56 V lygio nepakanka „atxmega“, tačiau buvau maloniai nustebintas, kai prijungiau varines juosteles prie „GND“ir „UART Receive“„Brainlink“ir peržiūrėjau rezultatus „Realterm“: iš klaviatūros gavau gražias šešių baitų sekas..

Paaiškėjo, kad šešių baitų seka yra tik vieno baito nuskaitymo kodo pakuotė (su dideliu bitų žymėjimo leidimu). Konkrečiai, seka yra FF C0 xx yy zz C1, kur xx yra nuskaitymo kodas, yy yra xx xor'ed su FF, o zz yra xx xor'ed su 67. (Iš tikrųjų nuskaitymo kodas perduodamas tris kartus: vieną kartą aiškus ir du kartus užkoduotas. Spėju, kad taip yra todėl, kad „irDA“yra linkusi į korupciją, todėl jūs galite naudoti daugumos dekodavimą, kad gautumėte baitą.) Po to vienintelis aparatinės įrangos sunkumas buvo rasti vietą klaviatūros jungties litavimui.. Ir tai nebuvo sunku.

Kalbant apie programinę įrangą, galbūt galbūt galėčiau perjungti „RN-42“„Bluetooth“modulį „Brainlink“režimu į HID režimą, kuris turėjo blokavimo potencialą, nes jei modulis negrįžtų į SPP, aš negalėčiau kalbėti „Brainlink“per savo „Bluetooth“protokolą.

Lengviau buvo paimti atvirojo kodo „BluezIME“klaviatūros programą, leidžiančią įvairiems „Bluetooth“žaidimų pultams veikti kaip „Android“valdikliams, ir pridėti režimą „Palm One“belaidės klaviatūros šešių baitų sekoms. Gautoji programa yra nemokama „P1“klaviatūra „Google Play“dabar (šaltinio kodas „github“).

2 veiksmas: atnaujinkite „Brainklink“programinę -aparatinę įrangą

„Brainklink“programinės įrangos atnaujinimas
„Brainklink“programinės įrangos atnaujinimas
„Brainklink“programinės įrangos atnaujinimas
„Brainklink“programinės įrangos atnaujinimas

Jei norite įgalinti „IrDA“formato serijinių duomenų palaikymą „Brainlink“, turite įkelti mano pasirinktinę programinę-aparatinę įrangą. Tai paprasta naudojant „Android“įrenginį ir programinės įrangos įkėlimo programą, kurią parašiau (beje, įkėlėją galite modifikuoti taip, kad jis būtų bendros paskirties „atmega/atxmega AVR109 flash“įkėlėjas).

  1. Suporuokite „Brainlink“(PIN 1234) su „Android“įrenginiu-vis tiek turėsite tai padaryti, kad prijungtumėte klaviatūrą
  2. Atsisiųskite „Brainlink Firmware Uploader“iš „Google Play“(įkėlėjo ir programinės aparatinės įrangos šaltinis „github“).
  3. Išjunkite „Brainlink“ir prijunkite 8 ir 2 kaiščius (keista, kad 8 kaištis yra kairiausias kaištis, o 1-dešinėje) prie 8 kontaktų prievado.
  4. Laikydami prijungtus kaiščius, įjunkite „Brainlink“. Jo šviesos diodas turėtų tapti mėlynas.
  5. Pasirinkite norimą pasirinktinę programinę -aparatinę įrangą (jei turite „Roomba“, viena programinė įranga geriau veikia su naujesniais „Roombas“, o kita - su senesnėmis) ir paspauskite „Įkelti“.
  6. Taip turėtų būti, nors jei turite ryšio sunkumų, gali tekti pabandyti daugiau nei vieną kartą.

Dabar jūsų „Brainlink“yra protingesnis: jis ne tik palaiko duomenų skaitymą iš kai kurių „IrDA“įrenginių (suradus nemoduliuotą signalą), bet taip pat veikia kaip standartinė „Roomba-to-Bluetooth“jungtis ir gali fiksuoti duomenis iš „Mindflex EEG“laisvų rankų įrangos. Ir programinė įranga yra suderinama atgal.

3 žingsnis: „Brainlink“prijungimas prie klaviatūros

„Brainlink“prijungimas prie klaviatūros
„Brainlink“prijungimas prie klaviatūros
„Brainlink“prijungimas prie klaviatūros
„Brainlink“prijungimas prie klaviatūros
„Brainlink“prijungimas prie klaviatūros
„Brainlink“prijungimas prie klaviatūros

Jums reikės pririšimo jungties, kuri tilptų į tris kairiuosius „Brainlink“8 kontaktų prievado kaiščius. Tai JST stiliaus jungtys su 1,25 mm kaiščių atstumu. Galite naudoti trijų kontaktų jungtį (mano pasirinkimas) arba 8 kontaktų jungtį. Galite naudoti 8 kontaktų jungtį, kuri pateikiama kartu su „Brainlink“, tačiau tuomet norėsite jų užsisakyti daugiau („ebay“radau pigių 3 ir 8 kontaktų jungčių).

Atidarykite klaviatūros baterijų skyrių ir išimkite baterijas. Netoli minusinės baterijų pusės rasite dvi poras laidų, sujungtų per JST tipo jungtį. Jei jūsų spalvos yra tokios kaip mano, juodi laidai yra įžeminti (galite tiesiog patikrinti pasipriešinimą tarp to ir minusinio akumuliatoriaus gnybto), o kitos spalvos (ruda ir pilka) yra signalas.

„Brainlink“8 kontaktų prievade kairiausias kraštas yra įžemintas (kairiausias 8 kontaktų prievado kaištis), o trečias kaištis iš kairės yra serijinis priėmimas. Lituokite „Brainlink“jungties įžeminimo laidą prie klaviatūros įžeminimo linijos, o „Brainlink“priėmimo laidą-prie signalo linijos. Galite pastebėti, kad klaviatūros srityje nėra vietos litavimo jungčiai ir JST stiliaus jungčiai kuris buvo klaviatūros viduje. Jei taip, tiesiog nuimkite JST tipo jungtį ir lituokite abu atitinkamų laidų trio (du klaviatūros įžeminimo laidai ir vienas „Brainlink“įžeminimo laidas; du klaviatūros signalo laidai ir vienas „Brainlink“priėmimo laidas).

Norint sutaupyti akumuliatoriaus energijos, kyla pagunda atjungti JST tipo jungties IR šviesos diodų pusę. Nedaryk to. Jei tai padarysite, signalas išnyks. Patikrinau osciloskopu.

Ant akumuliatoriaus dangtelio lūpos padarykite skylę, kad praeitų „Brainlink“pririšimo laido laidai, naudokite elektros juostą, kad abi jungtys būtų izoliuotos, ir suriškite nedidelį įtempimo mazgą.

Galiausiai, kai viskas bus padaryta, uždenkite nesusijusius „Brainlink“pririšimo kontaktus arba tiesiog nutraukite nesvarbius laidus.

Taip pat galite klijuoti „Velcro“ant „Brainlink“ir klaviatūros, kad „Brainlink“būtų vietoje.

4 veiksmas: naudojimas su „Android“įrenginiu

Naudojimas su „Android“įrenginiu
Naudojimas su „Android“įrenginiu
  1. Suporuokite „Brainlink“su „Android“įrenginiu (PIN 1234).
  2. Įdiekite mano P1 klaviatūros programą.
  3. Paleiskite P1 klaviatūros nustatymus (piktograma turėtų būti jūsų paleidimo priemonėje).
  4. Įjunkite „P1“klaviatūrą „Android“įvesties metodo nustatymuose. Naujesnėse „Android“versijose galite įjungti P1 klaviatūrą, pasirinkę „Pasirinkti IME“P1 klaviatūros nustatymuose ir paliesdami „Nustatyti įvesties metodus“. (Gausite įspėjimą, kad klaviatūra mato visus jūsų slaptažodžius ir pan. Tai yra standartinis „Android“įspėjimas: žinoma, klaviatūros tvarkyklė mato viską, ką įvedate. Jei bijote, pažiūrėkite į klaviatūros šaltinio kodą tavo paties.)
  5. Bakstelėkite „Pasirinkti įrenginį“ir pasirinkite „Brainlink“(mano rodomas kaip RN42-A308).
  6. P1 klaviatūros nustatymuose bakstelėkite „Pasirinkti IME“ir pasirinkite P1 klaviatūra.
  7. Prisijungimas gali užtrukti šiek tiek laiko, tačiau, jei viskas gerai, turėtumėte gauti pranešimą apie prisijungimą

Ir baigsite! Nesivaržykite paaukoti „BluezIME“, kuria pagrįsta „P1“klaviatūra, autoriui.

Jei naudojate 4.0 ar naujesnės versijos „Android“, kai teksto laukuose bus pranešimas, leidžiantis pakeisti įvesties metodus, kad galėtumėte lengvai pereiti prie kito įvesties metodo.

Tvarkyklė, kurią parašiau klaviatūrai, yra labai paprasta. Jis palaiko įprastus klavišus, bet nepalaiko daugelio specialių kirčiuotų klavišų ar kitų ypatingų dalykų. Aš pridėjau palaikymą, kaip naudoti du mygtukus namuose (FN-1 ir klavišas kairėje erdvėje) kaip pagrindinį, naudojant „Windows“klavišą ir FN-2 kaip meniu, o FN-3-kaip paiešką. Be to, ctrl-a, c, v, x veikia taip, kaip tikėtasi.

Tai veikia pakankamai gerai, kad visą pirmąjį šios instrukcijos juodraštį parašiau savo „Galaxy S2“telefone su klaviatūra.

5 veiksmas: kitos klaviatūros

Kitos klaviatūros
Kitos klaviatūros
Kitos klaviatūros
Kitos klaviatūros

Jei norite eksperimentuoti su kitomis infraraudonųjų spindulių klaviatūromis, turėsite išsiaiškinti, kokius signalus jie siunčia ir kokiu duomenų perdavimo greičiu. „Brainlink“atnaujinus į „IrDA“suderinamą programinę įrangą, galite prisijungti prie „RealTerm“prie „Brainlink“. Pamatę pasikartojantį „BL“signalą, kuris yra „Brainlink“parašas, įveskite:

*J1Z

Žvaigždutė prašo atkreipti dėmesį, J1 persijungia į 9600 baudų IrDA (tiesiog turite greitai įvesti 1 po J arba gausite klaidą). Z skirtas nuosekliam „Bluetooth“tilto režimui.

Perjunkite „RealTerm“, kad būtų rodomi šešioliktainiai kodai, ir paspauskite klaviatūros klavišus ir pažiūrėkite, ar galite tai suprasti.

Norėdami išeiti iš nuosekliojo tilto režimo, įjunkite „Brainlink“maitinimą.

Manau, kad 9600 baudų yra tinkamas duomenų perdavimo greitis. Jei to nepadarysite, galite pakeisti „Brainlink“duomenų perdavimo spartą. Pradėčiau bandydamas 57600 baudų:

*J1u57Z

ir tada 1200 baudų:

*J1u12Z

Kai suprasite, kaip klaviatūra siunčia duomenis, tiesiog pakeiskite mano tvarkyklės kodą. Tikriausiai pakanka tik pakeisti PalmOneWirelessKeyboard.java skaičius.

Rekomenduojamas: