Turinys:

Kaip prijungti PS/2 klaviatūrą prie „iPhone“: 11 žingsnių
Kaip prijungti PS/2 klaviatūrą prie „iPhone“: 11 žingsnių

Video: Kaip prijungti PS/2 klaviatūrą prie „iPhone“: 11 žingsnių

Video: Kaip prijungti PS/2 klaviatūrą prie „iPhone“: 11 žingsnių
Video: 🟡 POCO X5 PRO – IŠSAMUSIAUSIA APŽVALGA ir TESTAI 2024, Liepa
Anonim
Kaip prijungti PS/2 klaviatūrą prie „iPhone“
Kaip prijungti PS/2 klaviatūrą prie „iPhone“
Kaip prijungti PS/2 klaviatūrą prie „iPhone“
Kaip prijungti PS/2 klaviatūrą prie „iPhone“
Kaip prijungti PS/2 klaviatūrą prie „iPhone“
Kaip prijungti PS/2 klaviatūrą prie „iPhone“

Nors internete mačiau daug nuotraukų su PS/2 klaviatūromis, prijungtomis prie „iPhone“, niekas dar nepaskelbė išsamių nurodymų, kaip tai padaryti patiems. Iki šiol tai yra.

Šioje instrukcijoje parodysiu, kaip galite sukurti PS/2 klaviatūrą į „iPhone“keitiklį, įskaitant visas techninės ir programinės įrangos instrukcijas.

Būtinos sąlygos

  • „Jailbroken iPhone“- oficialus SDK neleidžia patekti į nuoseklųjį prievadą dėl „Elf Conspiracy“, todėl būtina jailbreak. Viskas, ką jums reikia žinoti apie „jailbreaking“, yra „iPhone Dev Team“tinklaraštyje.
  • Arduino Diecimila arba Dumilanove (arba klonas), galima įsigyti iš daugelio vietų. Tai reiškia, kad jūsų „Arduino“yra surinktas.
  • „IPod Breakout“plokštė, tokia kaip „Sparkfun“. Bet koks panašus produktas veiks.
  • Moteriška PS/2 (Din 6) klaviatūros jungtis. Išimkite vieną seną kompiuterį arba nusipirkite jį iš „Digikey“ar panašaus pardavėjo.
  • Viela, pageidautina kelių spalvų ir maždaug 24 gabaritų. Žemiau esančiose nuotraukose naudoju „RadioShack“ritę.
  • Vienas 500k rezistorius. Aš naudoju ašinį rezistorių iš „RadioShack“, bet jūs taip pat galite tai pridėti prie savo „Digikey“užsakymo.
  • Lituoklis ir lydmetalis. Jei nežinote, kaip lituoti, galite išmokti čia ir čia.
  • (Neprivaloma) Smeigtukų antraštės, tokios kaip šios. Aš juos nutraukiu ir lituosiu iki laidų galų, kad jie gražiai įsijungtų į „Arduino“.
  • (Neprivaloma) Saldūs 9 V akumuliatoriaus laidai, kad jūsų „Arduino“būtų nešiojamas, kurį galima įsigyti „Maker Store“.
  • (Neprivaloma) „RadioShack“arba „Digikey“stereofoninių ausinių lizdas.

1 žingsnis: lituokite „iPhone Breakout“- 1 dalis

Lituokite „IPhone Breakout“- 1 dalis
Lituokite „IPhone Breakout“- 1 dalis

Kai visi jūsų ingredientai atkeliaus, įjunkite lituoklį ir greitai pažvelkite į „iPod“jungties kištuką.

Mes naudosime keturis iš šių klaviatūros kaiščių: 11, 13, 16 ir 21. 21 kaiščio apibrėžimas sako, kad tarp 21 kaiščio ir žemės turime įdėti 500 000 rezistorių, kad būtų galima nuosekliai bendrauti su „iPhone“, todėl mes klijuosime rezistorių tarp kaiščio 21 ir kaiščio 16, kuris yra nuoseklusis įžeminimas. Taip pat prie 11 ir 13 kaiščių pridėsime kaiščių antraštes, kurios veiks kaip TX ir RX kaiščiai nuosekliam ryšiui. Kadangi mes siunčiame TIK į „iPhone“, mes naudojame tik „iPhone“RX kaištį, todėl taip pat pridėsime vielos gabalėlį, kad prijungtume 11 kaištį, nenaudojamą TX kaištį, tiesiai prie žemės 16 kaištyje.

Taip pat galite pasirinktinai pridėti steroidinių ausinių lizdą prie 2, 3 ir 4 kaiščių dabar ir jis veiks, kai tik bus prijungtas „breakout“. Tai neturi nieko bendro su klaviatūra, bet jei turite 1G „iPhone“su nevykusia standartinis ausinių lizdas, tai išspręs.

2 žingsnis: lituokite „iPhone Breakout“- 2 dalis

Lituokite „iPhone Breakout“- 2 dalis
Lituokite „iPhone Breakout“- 2 dalis

Aš įdėjau trumpiklį tarp 11 kaiščio ir 16 kaiščio pertraukimo plokštės gale. Gali būti šiek tiek sudėtinga viską sutalpinti į 16 kaištį, todėl rekomenduoju iš pradžių įkišti rezistorių per skylę, tada apvynioti trumpiklio vielos galą ir lituoti juos prieš nukirpiant rezistoriaus laidą.

Kita taktika, kuri čia gali būti naudinga, yra iš pradžių skardinti vielos galus, o po to šiek tiek lituoti ant skylės, prie kurios norite priklijuoti laidą. Naudokite lituoklio šoną, kad pašildytumėte lituoklio dėmelę, o PASISUKITE alavuotą vielos galą į dėmę. Nuimkite lygintuvą, leiskite lašeliui atvėsti, tada paleiskite vielą.

3 žingsnis: lituokite PS/2 jungtį - 1 dalis

Lituokite PS/2 jungtį - 1 dalis
Lituokite PS/2 jungtį - 1 dalis

Nėra jokio kelio, kuriuo galėtumėte nueiti per PS/2 jungties kaiščių numeraciją, kuri būtų bet kokia prasmė, nesusijusi su pakrikusiu komiteto posėdžio šūkiu. Per daug negalvokite apie kaiščių skaičius, tiesiog peržiūrėkite paveikslėlį.

Čia naudosime keturis kaiščius ir visus sujungsime su „Arduino“. Žemė bus prijungta prie „Arduino“žemės, VCC bus prijungta prie 5 V, o duomenų ir laikrodžio kaiščiai bus perkelti į du „Arduino“skaitmeninius kaiščius (3 ir 4).

4 žingsnis: lituokite PS/2 jungtį - 2 dalis

Lituokite PS/2 jungtį - 2 dalis
Lituokite PS/2 jungtį - 2 dalis

PS/2 jungties apačia yra dar mažiau intuityvi nei numeravimo schema. Rekomenduoju patikrinti šį paveikslėlį, bet taip pat įsitikinti, kad kaiščiai jungties apačioje atitinka sunumeruotus kaiščius, kuriuos, jūsų manymu, jie daro prieš lituodami. Galite patikrinti ryšį naudodami įprastą multimetrą, nustatydami jį atsparumui matuoti ir vieną zondą prijungę prie kaiščio apačioje, o kitą įkišę į skylę. Jei apskritai yra pasipriešinimas, tada tas kaištis yra prijungtas prie tos skylės.

Aš naudoju žalią laidą laikrodžio kaiščiui, raudoną laidą VCC, baltą laidą duomenims ir juodą laidą įžeminimui.

5 veiksmas: litavimo kaiščių antraštės prie galinių

Lituoklio kaiščių antraštės prie laidų
Lituoklio kaiščių antraštės prie laidų

Kai prijungsite jungtis, nuimkite kitus laidų galus ir prijunkite laidus prie kaiščių antgalių. Tai leis jums lengvai prijungti juos prie „Arduino“. Jei negavote kaiščių antgalių, galite pabandyti kruopščiai skardinti laidus, kad jie geriau liktų „Arduino“kaiščių skylėse.

Kai kuriuos laidus prijungiau prie kaiščių antgalių 11 ir 13 „iPhone“pertraukimo plokštės kaiščių. Juoda viela yra įžeminta (11 kaištis), o raudona - prie VCC (13 kaištis). Tada aš prijungiau kaiščių antraštes prie dviejų laidų iš pertraukos plokštės ir keturių iš PS/2 jungties.

6 veiksmas: (pasirenkama) 9 V akumuliatoriaus laidai

(Neprivaloma) 9 V akumuliatoriaus laidai
(Neprivaloma) 9 V akumuliatoriaus laidai

Aš naudoju „Arduino Diecimila“, nes šiai programai nereikia geresnio lusto. Tai parodyta su „SparkFun“9 V akumuliatoriaus diržais, kad būtų lengviau perkelti.

7 veiksmas: pritvirtinkite PS/2 laidus prie „Arduino“

Prijunkite PS/2 laidus prie „Arduino“
Prijunkite PS/2 laidus prie „Arduino“

Tada mes prijungiame PS/2 jungtį prie „Arduino“. Prijunkite laikrodžio laidą prie 3 skaitmeninio kaiščio, duomenų laidą prie 4 skaitmeninio kaiščio ir įžeminimo laidą prie „Arduino“įžeminimo, o VCC laidą - prie 5 V kaiščio.

8 veiksmas: pritvirtinkite „iPhone“laidus prie „Arduino“

Prijunkite „iPhone“laidus prie „Arduino“
Prijunkite „iPhone“laidus prie „Arduino“

Norėdami prijungti „iPhone“pertrauką, tiesiog prijunkite laidą nuo 13 kaiščio prie „Arduino“TX kaiščio (1 skaitmeninis kaištis), tada prijunkite laidą nuo 11 kaiščio prie bet kurio „Arduino“įžeminimo.

SVARBU: Kad išvengtumėte problemų su „Arduino“blykstelėjimu, prieš mirksėdami atjunkite „Arduino“TX kaištį. Daugiau apie tai vėliau. Po to visas litavimas atliekamas. Dabar atėjo laikas pereiti prie „Arduino“programavimo!

9 žingsnis: „Arduino“kodas

Arduino kodas
Arduino kodas

„Arduino“programinė įranga peržiūri duomenis iš klaviatūros, išverčia klaviatūros nuskaitymo kodus į raktų kodus ir tvarko „Shift“ir „caps lock“klavišų paspaudimus.

Pirmiausia atsisiųskite ir įdiekite „Arduino“kūrimo aplinką iš čia. Vykdykite svetainėje pateiktas instrukcijas, tačiau būtinai įdiekite tinkamą FTDI tvarkyklę iš „Arduino“diegimo tvarkyklių katalogo.

Tada jums reikės papildomos „Arduino“bibliotekos, skirtos PS/2. Iš šio puslapio atsisiųskite failą „ps2.zip“. Norėdami įdiegti, išpakuokite atsisiuntimą į aplanką ir perkelkite jį į „Arduino“diegimo katalogo „aparatinė įranga/bibliotekos“pakatalogį. OSX sistemoje pirmiausia galite eiti į „Arduino.app“ir „Rodyti paketo turinį“.

Įdiegę „Arduino“ir „ps2“biblioteką, atsisiųskite šaltinio kodą iš čia. Atidarykite „Arduino“programą, sukurkite naują projektą ir įklijuokite į jį šaltinio kodą. Išsaugokite, tada eikite į Sketch-> Verify/Compile ir įsitikinkite, kad jis sukuriamas. Jei ne, įsitikinkite, kad biblioteka tinkamai įdiegta.

Be to, aš iš tikrųjų neparašiau jokio kodo šiam projektui. Aš pradėjau bandyti naudoti PS2KeyboardExt2 biblioteką, tačiau ši biblioteka yra pagrįsta pertraukomis ir nors ji gali veikti „Arduino“, kuri taip pat kalba serijiniu dažniu 9600 bps, kai sukūriau seriją iki 19200 bps, pertraukos nustojo veikti stabilus būdas. Taigi aš ištraukiau visą gražų kodą iš „PS2KeyboardExt2“, įskaitant pagrindinius apibrėžimus ir malonų poslinkių ir didžiųjų raidžių valdymą, ir perdariau jį į programą, kuri nenaudoja pertraukimų ir naudoja kitą, daug paprastesnę PS/2 biblioteką. Dėl to jis gali patikimai valdyti 19200 bps serijos.

Dabar programuokite „Arduino“!

Atjunkite laidą, einantį prie „Arduino“1 kaiščio. Tada prijunkite „Arduino“prie kompiuterio per USB kabelį. Jums gali tekti iš naujo paleisti „Arduino“programą, kad ji tinkamai aptiktų naują USB serijinį įrenginį. Įkelkite išsaugotą eskizą su šaltiniu ir paspauskite mygtuką Įkelti, kad užprogramuotumėte „Arduino“.

Įkėlę programą, prijunkite klaviatūrą prie PS/2 jungties. Turėtumėte pamatyti, kaip mirksi lemputės. „Arduino“programoje galite atidaryti serijinį monitorių ir pabandyti klaviatūroje įvesti kai kurias raides. Turėtumėte matyti, kad tos raidės rodomos serijos monitoriuje. Pabandykite įjungti ir išjungti didžiųjų raidžių klavišą, klaviatūros lemputė turėtų užsidegti ir išsijungti, o simboliai turi būti parašyti teisingai.

10 veiksmas: „IPhone“klientų programa

Dabar nustatykite „iPhone“kliento programą.

Kliento kodui naudoju programą, kurią radau Anthony Pray „Google“kodo puslapyje. Ši programa nuskaito įvestį iš nuoseklaus prievado esant 19200 bps greičiui ir tada įveda atitinkamą klaviatūros įvykį, naudojant VNC kliento biblioteką. Čia sukūriau tik šaltinio veidrodinį vietinį tekstą, kurį galima lengvai gauti naudojant „wget“.

Kadangi VNC švirkščiame klavišus, taip pat turėsite paleisti „VNC“serverį „iPhone“. Mes naudosime „Veency“(tai nuostabu ir vis tiek turėtumėte įdiegti).

Eikite į „Cydia“arba „Icy“ir įdiekite šiuos paketus:

  • Ryškumas - suteikia VNC serverį, sukonfigūruokite jį paleisti paleidžiant
  • LibVNCServer - teikia libvncclient
  • „iPhone 2.0“įrankių grandinė - suteikia kūrimo aplinką (jei einate kitu maršrutu, būtini gcc, libgcc, ldid, libz)
  • „MobileTerminal“- kad galėtumėte pasiekti „iPhone“terminalą
  • wget - Taigi galite ištraukti šaltinio failą

Dabar atsisiųskite ir sukurkite šaltinį. Atidarykite „MobileTerminal“arba SSH savo telefone ir atlikite šiuos veiksmus:

  • wget
  • gcc -static -libgcc -o TouchClient TouchClient.c -lvncclient
  • „ldid -S TouchClient“

Paskutiniame etape, naudojant „ldid“, padirbti pasirašant dvejetainį. Be jo „iPhone“operacinė sistema iš karto sunaikins jūsų procesą.

Norėdami paleisti programą, paleiskite ją iš mobiliojo terminalo naudodami:

./TouchClient

Dėl to Veency pasirodys dialogo langas, kuriame bus klausiama, ar norite priimti VNC ryšį. Paspauskite Priimti.

Pastebėjau, kad paleidus šią programą iš „MobileTerminal“programa išlieka gyva net ir išėjus iš „MobileTerminal“, tačiau geriau būtų naudoti paleidimą. Aš to dar nesupratau.

11 veiksmas: apdailos darbai ir būsimas darbas

Norėdami baigti, vėl prijunkite laidą iš „iPhone“jungties 13 kaiščio prie „Arduino“TX kaiščio (1 kaištis). Atjunkite USB kabelį ir perjunkite „Arduino“į išorinį maitinimą. Prijunkite „iPhone Breakout“prie „iPhone“.

Jei:

  • „TouchClient“veikia jūsų „iPhone“
  • „Arduino“veikia PS2 programinė įranga
  • Klaviatūra prijungta prie jungties, o jungtis tinkamai prijungta prie „Arduino“
  • „Veency“veikia ir jūs priėmėte „TouchClient“ryšį
  • Nieko kito nesugadinta

Turėtumėte mokėti rašyti PS/2 klaviatūra ir tuos klavišų paspaudimus išversti į atitinkamus „iPhone“klavišų paspaudimus. Tai veiks bet kurioje „iPhone“vietoje, bet kurioje programoje ar vietinėje funkcijoje.

Šis sprendimas nėra tobulas, tačiau tai yra bendros paskirties metodas naudojant „Arduino“pridėti PS/2 klaviatūros palaikymą beveik viskam, kas gali skaityti paprastus serijinius pranešimus.

Būsimas darbas:

  • Nuskaitymo kodo atvaizdavimas gali būti visiškai perkeltas į „iPhone“, o šio projekto aparatinė dalis gali būti iš naujo įdiegta daug pigesniame ir mažesnio energijos suvartojimo luste, pavyzdžiui, PIC. Tai sumažintų įrenginio kainą maždaug 30 USD, nors tam prireiktų PIC programuotojo.
  • Ne visi specialieji klavišai yra teisingai suplanuoti, bet jei pažvelgsite į „Arduino“kodą, o tada į „iPhone“kodą, pamatysite, kad tai yra neįtikėtinai paprastas procesas. Prašome paskelbti visus pakeitimus čia kaip komentarą!
  • Vietoj to, kad būčiau beprotiškas laidų įsilaužimas, norėčiau, kad tai tilptų į patogų mažą korpusą, kad būtų galima tikrai nešiotis. Bet kokios idėjos šiame skyriuje būtų dėkingos.
  • Norėčiau suteikti „TouchClient“„Veency“slaptažodį, kad nebūtų tokio erzinančio iššifravimo lango „Priimti/atmesti“.
  • Šį tikslų metodą galima naudoti norint pridėti „Bluetooth“klaviatūrą. Tiesiog pridėkite „Bluetooth“serijos modulį prie „iPhone“ir toliau naudokite „TouchClient & Veency“.

Viskas. Tikiuosi, kad jums patiko „Instructable“! Laukiu jūsų komentarų. Pagarbiai, - awgh

Rekomenduojamas: