| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen | 
	
	
		| Autor | Nachricht | 
	
		| Andy19312 
 
 
 Anmeldungsdatum: 22.10.2005
 Beiträge: 428
 
 
 | 
			
				|  Verfasst am: 30.01.2007, 19:52    Titel: Computermaus + Tastatur |   |  
				| 
 |  
				| 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 |  | 
	
		|  | 
	
		| PMedia 
 
 
 Anmeldungsdatum: 14.08.2006
 Beiträge: 2847
 
 
 | 
			
				|  Verfasst am: 30.01.2007, 20:02    Titel: |   |  
				| 
 |  
				| 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 |  | 
	
		|  | 
	
		| Mao 
 
 
 Anmeldungsdatum: 25.09.2005
 Beiträge: 4409
 Wohnort: /dev/hda1
 
 | 
			
				|  Verfasst am: 30.01.2007, 20:21    Titel: |   |  
				| 
 |  
				| 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?
  ). 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.
  (DOS-Maustreiber, direkte Abfrage des Keyboardpuffers über Port 0x60 (bzw. 0x64).) _________________
 Eine handvoll Glück reicht nie für zwei.
 --
 
  |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| Andy19312 
 
 
 Anmeldungsdatum: 22.10.2005
 Beiträge: 428
 
 
 | 
			
				|  Verfasst am: 31.01.2007, 14:36    Titel: |   |  
				| 
 |  
				| Hm, könntest Du ein paar Grafiken zur besseren Darstellung erstellen? |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| Mao 
 
 
 Anmeldungsdatum: 25.09.2005
 Beiträge: 4409
 Wohnort: /dev/hda1
 
 | 
			
				|  Verfasst am: 31.01.2007, 15:05    Titel: |   |  
				| 
 |  
				| 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 |  | 
	
		|  | 
	
		| Georgp24 
 
 
 Anmeldungsdatum: 30.06.2006
 Beiträge: 81
 Wohnort: Ahlen
 
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| Skilltronic 
 
  
 Anmeldungsdatum: 10.09.2004
 Beiträge: 1148
 Wohnort: Köln
 
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		|  |