Avkoda USB-tangentbord med PIC
Re: Avkoda usb tangetent bord med PIC
PS/2 är seriella data 8O1 samt klocka, runt 10-16kc ungefär. (från dev till host)
Från host till dev tillkommer en ACK bit i slutet, vilken skickas från dev till host.
Dessutom förekommer lite handskakning om host skall skicka till dev.
dev genererar alltid klocka.
Från host till dev tillkommer en ACK bit i slutet, vilken skickas från dev till host.
Dessutom förekommer lite handskakning om host skall skicka till dev.
dev genererar alltid klocka.
Re: Avkoda usb tangetent bord med PIC
Newbadboy> Jag tror grejen var att du faktiskt gjort ett inlägg sedan dess och kommenterat vissa andra saker, men ignorerat dom lösningsförslag som redan diskuterats. Hade du inte varit inne alls emellan så hade nog ingen brytt sig om det. Samma sak om du iallafall nämnt något om lösningsförslagen, kanske bara sagt att det kunde vara ngt att fundera på. Det ser lite illa ut när flera förslag presenteras men inte ens får en kommentar i svaret.
Re: Avkoda usb tangetent bord med PIC
Som sagt så tog min dotter halva min uppmärksamhet och gör nu oxå. Ju mer jag kollar på det ju mer känns det som en vanlig matris är way to go..... Är kanske inte så lönt att blanda in en massa protokoll och grejer för att lösa ngt enkelt
Re: Avkoda usb tangetent bord med PIC
Varför är du ens ute på internet när du umgås med familjen?
Som en tonåring.
Haha, nä nu ska jag gå härifrån.
Som en tonåring.
Haha, nä nu ska jag gå härifrån.
Re: Avkoda USB-tangentbord med PIC
Köp ett billigt USB-tangentbord och se om det kan fås att gå i PS/2 läge med dubbla pullup motstånd till +5V. PS/2 protokollet bör kunna hanteras av vilken mikrokontroller som helst. Den första PS/2 kontrollern var en Intel 8048 som vilken mikrokontroller som helst i dagsläget lär prestera mer än.
Intel 8048 har 1 kByte ROM och 64 bytes RAM. Tillverkad från och med 1976.
Om du behöver använda USB så behöver processorn antingen:
* Klara att köra en mjukvarubaserad USB stack med en minstafrekvens på 12 MHz, 2 kB Flash, 128 byte RAM. *
* Använder USB OTG
* Eller har direkt stöd för USB host läge.
Sedan tillkommer hantering av datastrukturerna för USB-HID med avseende på tangentbord. Vilket nästan är det värsta
Intel 8048 har 1 kByte ROM och 64 bytes RAM. Tillverkad från och med 1976.
Om du behöver använda USB så behöver processorn antingen:
* Klara att köra en mjukvarubaserad USB stack med en minstafrekvens på 12 MHz, 2 kB Flash, 128 byte RAM. *
* Använder USB OTG
* Eller har direkt stöd för USB host läge.
Sedan tillkommer hantering av datastrukturerna för USB-HID med avseende på tangentbord. Vilket nästan är det värsta

Re: Avkoda USB-tangentbord med PIC
Köp ett t-bord som tänkt, plocka isär det och dekoda matrisen med en PIC eller liknande, de är nämligen internt byggt som en matris. Samma sak kan man göra med ett fullstort t-bord.
Data kan lämpligen hanteras som "knapp påverkad" och "knapp släppt".
Självklart kan man få samma funktion vid att se till att det inköpta t-bord kan fungera i PS2-läge.
Data kan lämpligen hanteras som "knapp påverkad" och "knapp släppt".
Självklart kan man få samma funktion vid att se till att det inköpta t-bord kan fungera i PS2-läge.
Re: Avkoda USB-tangentbord med PIC
Icecap skrev:Köp ett t-bord som tänkt, plocka isär det och dekoda matrisen med en PIC eller liknande, de är nämligen internt byggt som en matris. Samma sak kan man göra med ett fullstort t-bord.
Data kan lämpligen hanteras som "knapp påverkad" och "knapp släppt".
Självklart kan man få samma funktion vid att se till att det inköpta t-bord kan fungera i PS2-läge.
Lät som ett bra bud faktiskt. Då får jag både enkelhet och utseende
Re: Avkoda USB-tangentbord med PIC
max3421
tex.
http://www.ebay.com/itm/USB-Host-ADK-Sh ... 1117229259?
Edit: längre ner i texten finns länk till lite kod
https://github.com/felis/USB_Host_Shield_2.0
tex.
http://www.ebay.com/itm/USB-Host-ADK-Sh ... 1117229259?
Edit: längre ner i texten finns länk till lite kod
https://github.com/felis/USB_Host_Shield_2.0
Senast redigerad av nifelheim 5 april 2014, 15:51:21, redigerad totalt 2 gånger.
Re: Avkoda USB-tangentbord med PIC
Blev precis gråhårig.blueint skrev:Köp ett billigt USB-tangentbord och se om det kan fås att gå i PS/2 läge med dubbla pullup motstånd till +5V. PS/2 protokollet bör kunna hanteras av vilken mikrokontroller som helst. Den första PS/2 kontrollern var en Intel 8048 som vilken mikrokontroller som helst i dagsläget lär prestera mer än.
Intel 8048 har 1 kByte ROM och 64 bytes RAM. Tillverkad från och med 1976.
Om du behöver använda USB så behöver processorn antingen:
* Klara att köra en mjukvarubaserad USB stack med en minstafrekvens på 12 MHz, 2 kB Flash, 128 byte RAM. *
* Använder USB OTG
* Eller har direkt stöd för USB host läge.
Sedan tillkommer hantering av datastrukturerna för USB-HID med avseende på tangentbord. Vilket nästan är det värsta

- Lennart Aspenryd
- Tidigare Lasp
- Inlägg: 12607
- Blev medlem: 1 juli 2011, 19:09:09
- Ort: Helsingborg
Re: Avkoda USB-tangentbord med PIC
Gråhårig eller skallig!
Du har fått rådet att skita helt i USB överföring.
Ta det till dig!
Du har fått rådet att skita helt i USB överföring.
Ta det till dig!

Re: Avkoda usb tangetent bord med PIC
Fast det finns ju bara två teoretiska sätt att göra dem, så det är väl bara att växla data och klocka ifall det sätt man provar inte fungerar.TomasL skrev:Tja egen erfarenhet, tidigare så brukade jag spara dem (samma med PS2/AT adaptern) men nu hivar jag dem, då de i regel inte är kompatibla.
samt från WikipediaSuch passive adapters are not standardized and may therefore be specific to the device they came with
... ungefär som att det också korkat nog finns två sätt att använda de två "tomma" benen i en PS/2-kontakt för att få en till PS/2-kanal. (Praktiskt på en bärbar där man inte vill ha så många kontaktdon, men på de platser man kör den stationärt kan man ansluta både mus och tangentbord i samma port). (Ja, sen kan ju dessa "tomma" pinnar användas till andra saker också. Commodore CD32 (tv-spel-mässigt förpackad Amiga 1200 plus cd-rom och en extra krets minus diverse portar) har t.ex. rs-232-portens tx+rx fast med 5V-nivåer på de "tomma" ps/2-pinnarna).
Re: Avkoda USB-tangentbord med PIC
@TS: Gör som föreslås ovan så blir det bra.Icecap skrev:Köp ett t-bord som tänkt, plocka isär det och dekoda matrisen med en PIC eller liknande, de är nämligen internt byggt som en matris. Samma sak kan man göra med ett fullstort t-bord.
Data kan lämpligen hanteras som "knapp påverkad" och "knapp släppt".
Självklart kan man få samma funktion vid att se till att det inköpta t-bord kan fungera i PS2-läge.
Av nyfikenhet, vad slags tingest skall avkoda och varför?
För övrigt: Du är nog den första trådskrivare jag sett som beklagar sig över att du får många svar på en fråga

-
- Inlägg: 1045
- Blev medlem: 2 juli 2010, 23:04:07
Re: Avkoda USB-tangentbord med PIC
Det finns ett helt gäng med olika open source kontroller-firmwares till AVR / avr-gcc annars ...
Ett av de mer populära, med en länk till en förteckning över fler längre ner på sidan. De flesta funkar med kontrollerkortet Teensy.
Jag håller också på att hacka ihop en firmware till det kortet och ett DIY-tangentbord till att börja med, men det tar nog ett tag innan jag tycker det är moget att släppa.
Annars är det enklaste att göra som Icecap föreslår att norpa kontrollern från ett existerande tangentbord ... om nu inte en del av poängen var att skriva det själv, vilket det är för mig.
Ett av de mer populära, med en länk till en förteckning över fler längre ner på sidan. De flesta funkar med kontrollerkortet Teensy.
Jag håller också på att hacka ihop en firmware till det kortet och ett DIY-tangentbord till att börja med, men det tar nog ett tag innan jag tycker det är moget att släppa.
Annars är det enklaste att göra som Icecap föreslår att norpa kontrollern från ett existerande tangentbord ... om nu inte en del av poängen var att skriva det själv, vilket det är för mig.