Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Computermaus + Tastatur

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Spezielle Fragen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Andy19312



Anmeldungsdatum: 22.10.2005
Beiträge: 428

BeitragVerfasst am: 30.01.2007, 19:52    Titel: Computermaus + Tastatur Antworten mit Zitat

Ich hätte da mal eine Frage....

Was für Standartchips sind den eigendlich bei Computermäusen und Tastaturen verbaut?

Also Computermäuse und Tastaturen hatte ich schon öfters mal aufgehabt.

Bei der Computermaus sind zwei sich drehende Kreise drinne mit zwei Lichtschranken.

Was für ein Signal kommt beim Chip an und wie wird dieser dann zur seriellen Schnittstelle geschickt.

Computertastur hatte ich auch schon mal offen gehabt.

Wenn ich eine Taste nach unten drücke, legt sich ein Kontakt.
"ist hier auch eine matrize drinne verbaut"?

Ein paar Eingänge vom Chip und ein paar Ausgänge vom Chip.

Was für ein Strom kommt dort beim Chip an und was für ein Signal geht dann von diesem Chip wieder zum PC ab.


Cu

Ich hoffe ihr könnt mir schnell helfen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
PMedia



Anmeldungsdatum: 14.08.2006
Beiträge: 2847

BeitragVerfasst am: 30.01.2007, 20:02    Titel: Antworten mit Zitat

Also ich hab hier ne "Serial Mouse 2.0A" von Microsoft, bei der weiß ich dass ein 8051 Mikrocontroller drin ist. Der wird auch in manchen Tastaturen verbaut.

Meine Vermut ist, das eine Maus seriell die Änderung ihrer Position weitergibt, rel. fest steht dass dies bei 9600Baud oder bei Probs 300 Bauds geschiet.
Mehr weiß ich glaub ich nicht.

//Edit:
Mir ist grad eingefallen, die Maus meldet ja nix wenn sie im HyperTerminal oder nem anderen geöffnet wird. Vlt. muss der PC sie abfragen. Ich glaub im Internet wird man den einen oder anderen Code finden.
Für QB hab ich hier ein "Beispiel" wie man Informationen vom Treiber holt.

ACHTUNG:
Nur für QBasic geeignet (1.0) und nicht mehr für QuickBasic (4.5 oder 7.1)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 30.01.2007, 20:21    Titel: Antworten mit Zitat

Korrekt.
Das Programm/Betriebssystem, welches Eingabeinformationen haben will muss sich - bei beiden Geräten - in einen Interrupt einklinken. Bei der Maus war das imho der IRQ 12. Tastatur müsst ich erst nachgucken.
In der ISR wird dann die Kommunikation, ich gehe jetzt z.B. von der Tastatur aus, eine Anfrage an den Chip auf dem Mainboard (gibt 2 Tastatur"chips". Einen Tastaturchip in der Tastatur selbst und einen Tastaturcontroller auf dem Mainboard.) gesendet werden, ob gerade Zeit ist oder der Chip beschäftigt ist. Ist der Chip gerade nicht beschäftigt, gibt der Controller auf dem Mainboard ein entsprechendes Signal zurück. Wenn nicht, dann muss man das solange weiter probieren, bis es geht.
Als nächstes wird der Scancode vom Tastaturchip abgeholt.
Ähnlich verläuft es bei der Maus, allerdings hast du da zum Glück nur einen Chip/Controller zum Ansteuern. Komplizierter wird das Ganze aber wieder, da nur die Differenzen zum letzten Mal übertragen werden (irgendwo logisch, gell? zwinkern). Desweiteren muss die Maus initialisiert werden.
Ich hab bisher noch keine serielle Maus angesteuert, alles hier beruft sich auf die PS/2 Schnittstelle, aber bei dieser müsste es ähnlich ablaufen.

Wenns dir aber nur um den direkten Zugriff auf die beiden Geräte geht, gibt's auch einfacher Möglichkeiten. zwinkern (DOS-Maustreiber, direkte Abfrage des Keyboardpuffers über Port 0x60 (bzw. 0x64).)
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Andy19312



Anmeldungsdatum: 22.10.2005
Beiträge: 428

BeitragVerfasst am: 31.01.2007, 14:36    Titel: Antworten mit Zitat

Hm, könntest Du ein paar Grafiken zur besseren Darstellung erstellen?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 31.01.2007, 15:05    Titel: Antworten mit Zitat

Du willst wirklich _direkt_ draufzugreifen, ohne irgendwelche Interrupts?
Wenn ja, dann werd ich mich mal dransetzen.
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Georgp24



Anmeldungsdatum: 30.06.2006
Beiträge: 81
Wohnort: Ahlen

BeitragVerfasst am: 31.01.2007, 21:45    Titel: Antworten mit Zitat

Hier sind zwei Links zur Maus Programmierung:

http://www.computer-engineering.org/ps2protocol/

http://users.tkk.fi/~then/mytexts/mouse.html
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 31.01.2007, 22:01    Titel: Antworten mit Zitat

Hier noch eine Möglichkeit von QB aus die Maus zu steuern zwinkern
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Spezielle Fragen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz