Hallo, ich möchte mit einem i2c USB converter einen gyrosensor per i2c ansteuern. Ich nutze Hterm als ausführendes Programm dafür. Die Kommunikation klappt soweit auch. Nur ist jetzt das Problem,dass ich gern einzelne Register auslesen und beschreiben möchte. wenn ich jetzt aber den Befehl S d3 (Adresse des Sensors plus das lesebit in Hex) [und zb] 3A (Registeradresse in Hex) P eingebe: als Befehl in klarschrift SD33AP dann gibt er mir alle register bis zu 3A aus. Was beim lesen vielleicht noch okay ist.. aber beim schreiben finde ich das dann zu schwer. Gibt es dafür einen Befehl, der mich also Register einzeln auslesen und beschreiben lässt. Bin für jede hilfe Dankbar Steiger
Zusatz: der Microcontroler in im USB-IC2 Converter ist ein atmega88.
Steiger schrieb: > na ist einer von ELV > > http://www.elv.de/output/controller.aspx?cid=74&de... Und nun soll also jemand für Dich das Handbuch runterladen und lesen? Peter
Och mensch..wenn es so wäre dass dort drinstehen würde "So steuern sie einzelne Register an..." würde ich nicht fragen. Sollte jemand das dort in der anleitung so finden..kann er mir seine adresse geben und ich zeige mich erkenntlich.
Das hängt auch von deiner I2C Peripherie ab. Manche Chips erlauben das Lesen/Schreiben der einzelnen Register a la: Hauptadresse>RegisterAdresse>Registerwert aber andere erlauben nur das alles in einem Schwupps zu tun. Lese das Datenblatt zu deinem Gyrosensor.
> S d3 (Adresse des Sensors plus das lesebit in Hex) [und zb] 3A >(Registeradresse in Hex) P eingebe: >als Befehl in klarschrift SD33AP >dann gibt er mir alle register bis zu 3A aus. Nach der Adresse des Sensors und dem lesebit gibst du die aAnzahl von Bytes an, die gelesen werden sollen und du schreibst dort eine 3A hin also wedren auch 3A Bytes gelesen. Welches Register dulesen willst mußt du deinem Gyro schon mitteilen das kann der I2C zu USB nicht von alleine, der weiß ja nicht was da fürn Ding dranhängt. Das weißt nur du und du mußt ins Datenblatt gucken wie man dem Gyrosensor mitteilet das man ein bestimmtes Register auslesen will. Ergo alles funktioniert so wie es soll nur nicht so wie du es willst.
http://invensense.com/mems/gyro/documents/PS-MPU-6000A.pdf Hier ist der Link zum Handbuch des Gyrosensors. Auf Seite 39 ist ganz klar beschrieben wie das funktionieren sollte. Das gebe ich ergo in die Zeile von hterm ein. In runden klammern sind dann die Reaktionen des Sensors zu lesen SD2 (k foü acknowleded) 01[dieses Register möchte ich auslesen, oder auch ein beliebig anderes wie hx1A bzw.bis hoch zu hx75] (k) SD3 (und nun sollte ja nach der Anleitung der Inhalt des gewünschten Registers erscheinen,jedenfalls nach meiner Lesart...passiert aber nicht.) Jemand eine Idee? Wenn ich mir noch keine Arbeit damit gemacht hätte wäre mein erster Weg nicht in ein Forum, sondern es so lange weiterprobeiren bis nichtsmehr da is zum auszuprobieren. Also wer kann helfen..ich weiß echt nicht weiter. Steiger
Hi >Och mensch..wenn es so wäre dass dort drinstehen würde "So steuern sie >einzelne Register an..." würde ich nicht fragen. Steht doch bei den Beispielen drin. Oder was denkst du, was man macht ,wenn eine einzelne EEPROM-Speicherzelle gelesen wird oder die Zeit aus der RTC? MfG Spess
Hallo! Also Wenn ich I2C Register lese oder schreibe hat das den Aufbau Start ChipWriteAdresse RegisterAdresse Stop Start ChipLeseAdresse AnzahlBytes Stop Wobei Anzahl Bytes eben für jedes Byte Takten muss und somit auch von deinem USB Gerät abhängt. Also bei dir wäre das S 0xD2 0x01 P S 0xD3 0x01 P Also auf Register 0x01 umschalten dann 0x01 Bytes lesen S 0xD2 0x03 P S 0xD3 0x06 P Das wäre ab Register 0x03 6 Bytes lesen Aber wie gesagt die genaue Schreibweise hängt von deinem Gerät ab. Hoffe es hilft Martin
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.