Sadržaj:

Kako spojiti PS/2 tastaturu na iPhone: 11 koraka
Kako spojiti PS/2 tastaturu na iPhone: 11 koraka

Video: Kako spojiti PS/2 tastaturu na iPhone: 11 koraka

Video: Kako spojiti PS/2 tastaturu na iPhone: 11 koraka
Video: Ako imate iPhone, OVO MORATE ISPROBATI! 2024, Septembar
Anonim
Kako spojiti PS/2 tastaturu na iPhone
Kako spojiti PS/2 tastaturu na iPhone
Kako spojiti PS/2 tastaturu na iPhone
Kako spojiti PS/2 tastaturu na iPhone
Kako spojiti PS/2 tastaturu na iPhone
Kako spojiti PS/2 tastaturu na iPhone

Iako sam na internetu vidio mnoge slike PS/2 tastatura priključenih na iPhone, niko još nije objavio detaljne upute o tome kako sami to učiniti. Do sada je tako.

U ovom Instructable -u ću vam pokazati kako možete napraviti PS/2 konvertor tastature u iPhone, uključujući sva uputstva za hardver i softver.

Preduslovi

  • Jailbroken iPhone - Službeni SDK ne dozvoljava pristup serijskom portu zbog Elf Conspiracy -a, pa je jailbreak potreban. Sve što trebate znati o bjekstvu iz zatvora nalazi se na blogu iPhone Dev tima.
  • Arduino Diecimila ili Dumilanove (ili klon), dostupni sa mnogih mjesta. Ovaj način pretpostavlja da je vaš Arduino sastavljen.
  • IPod Breakout ploča, poput ove iz Sparkfuna. Bilo koji sličan proizvod će raditi.
  • Ženski priključak za tastaturu PS/2 (Din 6). Skinite jedan sa starog računara ili ga kupite od Digikey -a ili sličnog dobavljača.
  • Žica, po mogućnosti nekoliko boja i otprilike 24 širine. Koristim kalem iz RadioShacka na donjim slikama.
  • Jedan otpornik od 500.000. Koristim aksijalni otpornik kroz RadioShack, ali ovo biste mogli dodati i u svoju Digikey narudžbu.
  • Lemilica i lemljenje. Ako ne znate lemiti, možete naučiti ovdje i ovdje.
  • (Opcionalno) Pin Headers, poput ovih. Odlomim ih i lemim na krajeve žica, tako da se lijepo spoje na Arduino.
  • (Opcionalno) Slatki kabelski svežanj 9v kako bi vaš Arduino postao prenosiv dostupan u trgovini Maker.
  • (Opcionalno) Stereo priključak za slušalice iz RadioShacka ili Digikey -a.

Korak 1: Lemite proboj iPhone -a - 1. dio

Lemite iPhone Breakout - 1. dio
Lemite iPhone Breakout - 1. dio

Kad stignu svi sastojci, zapalite lemilicu i brzo pogledajte Pin-Out priključka za iPod.

Za tipkovnicu ćemo koristiti četiri od ovih pinova: 11, 13, 16 i 21. Definicija pina 21 kaže da moramo postaviti otpornik od 500 k između pina 21 i mase kako bismo omogućili serijsku komunikaciju s iPhoneom, pa Zalijepit ćemo otpor između pina 21 i pina 16, što je serijsko uzemljenje. Također ćemo dodati pin zaglavlja na pinove 11 i 13, koji će djelovati kao TX i RX pinovi za serijsku komunikaciju. Budući da ćemo slati SAMO na iPhone, koristimo samo iPhone -ov RX pin, pa ćemo dodati i komad žice za spajanje pina 11, neiskorištenog TX pina, izravno na tlo na pin 16.

Možete i opcionalno dodati stero utičnicu za slušalice trenutno na pinove 2, 3 i 4 i to će raditi svaki put kad je utikač uključen. Ovo nema veze s tastaturom, ali ako imate 1G iPhone sa šepavim ne- standardni priključak za slušalice, ovo će popraviti problem.

Korak 2: Lemite proboj iPhone -a - 2. dio

Lemite iPhone Breakout - 2. dio
Lemite iPhone Breakout - 2. dio

Postavio sam kratkospojnik između pina 11 i pina 16 na stražnjoj strani ploče za razbijanje. Može biti malo nezgodno postaviti sve na pin 16, pa preporučujem da prvo provučete otpornik kroz rupu, zatim omotate kraj žice kratkospojnika oko njega i lemite ih prije nego što odvojite kabel otpornika.

Još jedna taktika koja bi ovdje mogla biti korisna je da prvo pokosite krajeve svoje žice, a zatim otpustite malo lemljenja na rupu na koju želite zalijepiti žicu. Pomoću bočne strane lemilice zagrijte mrlju lemljenja i KLIZNITE kalajisani kraj žice u mrlju. Uklonite peglu, pustite da se mrlja ohladi, a zatim pustite žicu.

Korak 3: Lemite PS/2 konektor - 1. dio

Lemite PS/2 konektor - 1. dio
Lemite PS/2 konektor - 1. dio

Ne postoji put kojim možete proći kroz numerisanje pinova PS/2 konektora koji ima bilo kakav smisao izvan konteksta poremećenih buncanja na sastanku odbora. Ne razmišljajte previše o pin brojevima, samo pogledajte sliku.

Ovdje ćemo koristiti četiri pina i sve njih spojiti na Arduino. Uzemljenje će biti ožičeno na uzemljenje na Arduinu, VCC će biti ožičen na 5 V, a pinovi za podatke i sat će se prenijeti na dva Arduinova digitalna pina (3 i 4).

Korak 4: Lemite PS/2 konektor - 2. dio

Lemite PS/2 konektor - 2. dio
Lemite PS/2 konektor - 2. dio

Donji dio PS/2 konektora još je manje intuitivan od sheme numeriranja. Preporučujem da provjerite ovu sliku, ali i da provjerite odgovaraju li iglice na dnu vašeg konektora numeriranim pinovima za koje mislite da rade prije nego što nešto zalemite. Povezanost možete provjeriti pomoću običnog multimetra postavljanjem na mjerenje otpora i povezivanjem jedne sonde s iglom na dnu, a drugom zabadanjem u rupu. Ako uopće postoji otpor, onda je taj pin spojen na tu rupu.

Koristim zelenu žicu za pin sata, crvenu žicu za VCC, bijelu žicu za podatke i crnu žicu za uzemljenje.

Korak 5: Lemljenje zaglavlja pinova do vodiča

Lemljenje zaglavlja pinova do vodiča
Lemljenje zaglavlja pinova do vodiča

Nakon što povežete konektore, skinite ostale krajeve žica i lemite žice na zaglavlja pinova. To će vam omogućiti da ih jednostavno priključite na Arduino. Ako niste dobili zaglavlja iglica, možete pokušati pažljivo kositi žice kako bi bolje ostale u otvorima za iglice Arduino.

Priključio sam neke žice na zaglavlja iglica na pinovima 11 i 13 iPhone razvodne ploče. Crna žica je na uzemljenju (pin 11), a crvena žica na VCC (pin 13). Zatim sam lemio zaglavlja pinova na izvode za dvije žice sa razvodne ploče i četiri koja dolaze sa PS/2 konektora.

Korak 6: (Opcionalno) 9V kabelski svežanj

(Opcionalno) 9V kabelski svežanj
(Opcionalno) 9V kabelski svežanj

Koristim Arduino Diecimilu jer ovaj program ne zahtijeva bolji čip. Ovo je prikazano pomoću 9V baterijskog pojasa iz SparkFuna za prijenos.

Korak 7: Priključite PS/2 vodiče na Arduino

Priključite PS/2 vodiče na Arduino
Priključite PS/2 vodiče na Arduino

Zatim povezujemo PS/2 konektor na Arduino. Spojite žicu sata na digitalni pin 3, podatkovnu žicu na digitalni pin 4 i spojite žicu za uzemljenje na uzemljenje na Arduinu, a žicu VCC na pin 5V.

Korak 8: Priključite IPhone vodiče na Arduino

Priključite IPhone vodiče na Arduino
Priključite IPhone vodiče na Arduino

Da biste povezali prekid iPhone -a, jednostavno spojite provodnik sa Pin 13 na TX pin na Arduinu (digitalni pin 1), a zatim spojite provodnik sa Pin 11 na bilo koje dostupno uzemljenje na Arduinu.

VAŽNO: Da biste izbjegli probleme s bljeskanjem Arduina, odspojite TX pin na Arduinu prije treptanja. Više o ovome kasnije. Nakon toga završava se sve lemljenje. Sada je vrijeme da prijeđete na programiranje Arduina!

Korak 9: Arduino kod

Arduino kod
Arduino kod

Softver Arduino ispisuje podatke s tastature, prevodi kodove skeniranja tastature u kodove ključeva i rukuje pritiscima tipki Shift i Caps Lock.

Prije svega, preuzmite i instalirajte Arduino razvojno okruženje odavde. Slijedite upute na web mjestu, ali svakako instalirajte odgovarajući FTDI upravljački program iz direktorija upravljačkih programa u instalaciji Arduino.

Zatim će vam trebati dodatna Arduino biblioteka za PS/2. Preuzmite datoteku “ps2.zip” sa ove stranice. Da biste instalirali, raspakirajte preuzimanje u mapu i premjestite je u poddirektorij direktorija “hardver/biblioteke” u vašoj Arduino instalaciji. Na OSX -u prvo možete otići na Arduino.app i „Prikazati sadržaj paketa“.

Nakon što su Arduino i ps2 biblioteka instalirani, preuzmite izvorni kod odavde. Otvorite aplikaciju Arduino, stvorite novi projekt i zalijepite izvorni kod u nju. Spremite, a zatim idite na Sketch-> Verify/Compile kako biste bili sigurni da se gradi. Ako se to ne dogodi, provjerite je li biblioteka ispravno instalirana.

Sa druge strane, zapravo nisam napisao apsolutno nikakav kod za ovaj projekat. Počeo sam pokušavati koristiti biblioteku PS2KeyboardExt2, ali ta se knjižnica temelji na prekidima i iako može raditi na Arduinu koji također govori serijski pri 9600 bps, nakon što sam pokrenuo serijski broj do 19200 bps, prekidi su prestali raditi u stabilan način. Tako sam izvukao sav lijepi kôd iz PS2KeyboardExt2, uključujući definicije ključeva i lijepo rukovanje pomacima i velikim zaključavanjem i preradio ga u program koji ne koristi prekide i koristi drugu, mnogo jednostavniju biblioteku PS/2. To ga čini pouzdanim za rukovanje serijom od 19200 b / s.

Sada programirajte Arduino!

Odspojite elektrodu koja ide na Pin 1 na Arduinu. Zatim povežite Arduino s računalom putem USB kabela. Možda ćete morati ponovo pokrenuti Arduino aplikaciju kako bi ispravno otkrila novi USB serijski uređaj. Učitajte spremljenu skicu s izvorom, a zatim pritisnite gumb Upload za programiranje Arduina.

Kada se program učita, priključite tastaturu u PS/2 konektor. Trebali biste vidjeti kako svjetla trepere. Možete otvoriti serijski monitor u aplikaciji Arduino i pokušati upisati neka slova na tastaturi. Trebali biste vidjeti da se ta slova pojavljuju u serijskom monitoru. Pokušajte uključiti i isključiti Caps Lock, lampica na tastaturi bi se trebala paliti i gasiti, a znakovi bi trebali izaći pravilno napisani velikim slovima.

Korak 10: IPhone klijentski program

Sada za postavljanje iPhone klijentskog programa.

Za šifru klijenta koristim program koji sam pronašao na stranici Google Code Anthony Pray. Ovaj program čita ulaz sa serijskog porta pri 19200 bps, a zatim ubrizgava odgovarajući događaj na tastaturi koristeći VNC klijentsku biblioteku. Ovdje sam napravio lokalno ogledalo izvora samo za tekst, koje se može lako preuzeti pomoću wget-a.

Budući da ćemo od VNC -a unositi pritiske tipki, morat ćete pokrenuti i VNC poslužitelj na iPhoneu. Koristit ćemo Veency (koja je odlična i svejedno je trebate instalirati).

Idite na Cydia ili Icy i instalirajte sljedeće pakete:

  • Veency - Pruža VNC poslužitelj, konfigurirajte ga za pokretanje pri pokretanju
  • LibVNCServer - Pruža libvncclient
  • iPhone 2.0 Toolchain - Pruža okruženje za izgradnju (gcc, libgcc, ldid, libz su potrebni ako idete drugom rutom)
  • MobileTerminal - Dakle, možete pristupiti iPhone terminalu
  • wget - Tako možete povući izvornu datoteku

Sada za preuzimanje i izgradnju izvora. Otvorite MobileTerminal ili SSH u telefonu, a zatim učinite sljedeće:

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

Posljednji korak, koristeći ldid, lažno je potpisivanje binarnog fajla. Bez toga, iPhone OS će odmah ubiti vaš proces.

Da biste pokrenuli program, pokrenite ga s mobilnog terminala sa:

./TouchClient

To će uzrokovati da Veency pojavi dijalog s pitanjem želite li prihvatiti VNC vezu. Pritisnite Prihvati.

Primijetio sam da pokretanje ovoga s MobileTerminala održava program u životu čak i kad napustite MobileTerminal, ali bilo bi bolje koristiti launchd. To još nisam shvatio.

Korak 11: Završni dodiri i budući rad

Da biste završili, ponovno spojite elektrodu s Pin 13 na iPhone -u na TX pin (pin 1) na Arduinu. Odspojite USB kabel i prebacite Arduino na vanjsko napajanje. Uključite proboj iPhone -a u svoj iPhone.

Ako:

  • TouchClient radi na vašem iPhoneu
  • PS2 softver radi na vašem Arduinu
  • Tastatura je priključena u konektor, a konektor je ispravno ožičen na Arduino
  • Veency radi, a vi ste prihvatili vezu sa TouchClientom
  • Ništa drugo nije zeznuto

Trebali biste moći pisati na PS/2 tastaturi i prevesti te pritiske na odgovarajuće pritiske na iPhoneu. Ovo će raditi bilo gdje u iPhoneu, u bilo kojoj aplikaciji ili izvornoj funkciji.

Ovo rješenje nije savršeno, ali je pristup opće namjene upotrebi Arduina za dodavanje podrške PS/2 tastature gotovo svemu što može čitati jednostavne serijske poruke.

Budući posao:

  • Mapiranje koda za skeniranje moglo bi se u potpunosti premjestiti na iPhone, a hardverski dio ovog projekta mogao bi se ponovno implementirati na mnogo jeftiniji čip s manjom potrošnjom energije, poput PIC -a. To bi smanjilo troškove jedinice za oko 30 USD, iako bi za to bio potreban programer za PIC.
  • Nisu svi posebni ključevi pravilno mapirani, ali ako pogledate Arduino kod, a zatim iPhone kod, vidjet ćete da je ovo nevjerojatno jednostavan proces. Molimo vas da ovdje objavite sve promjene koje unesete kao komentar!
  • Umjesto da budem ludi žičani haker, volio bih da ovo stane u tijesno malo kućište za stvarnu prenosivost. Bilo koja ideja u ovom odjelu bila bi zahvalna.
  • Htio bih TouchClientu dati lozinku za Veency kako ne bi došlo do tako dosadnog skočnog prozora Prihvati/Odbij.
  • Ova metoda se može koristiti za dodavanje Bluetooth tastature. Jednostavno dodajte Bluetooth-serijski modul u iPhone nastavak i nastavite koristiti TouchClient & Veency.

To je to. Nadam se da ste uživali u Instructable! Radujem se vašim komentarima. Pozdrav, - awgh

Preporučuje se: