Forum: Mikrocontroller und Digitale Elektronik SCA3000-D02-PWB


von Aliya (Gast)


Lesenswert?

Hallo,
Gibt es irgendjemand der kennt sich mit dem Sensor SCA3000-D02-PWB?
Ich kann den Sensor nicht auslesen und ich habe keine Ahnung wieso!

von Jörg S. (joerg-s)


Lesenswert?

Controller?
Source-Code?
Schaltplan?
Was schickst du hin?
Was kommt raus?
...

von Aliya (Gast)


Angehängte Dateien:

Lesenswert?

ich habe mein Sensor an einem XT75 Terminal angeschlossen. Der Sensor 
hat 10Bit Adressierung 0x1F1 . Ich schicke den Master über HyperTerminal 
für lesen diese Befehle:
Adressierung: <af2f11714>
Auslesen: <bf30001>

von Aliya (Gast)


Lesenswert?

So sieht Das Protokoll aus:

1.    Die Adresse des SCA3000 lautet 11110AA AAAAAAAA (siehe 
"sca3000_product_family_specification_8257300a.07.pdf", Seite 28).
Für die "AA AAAAAAAA" habe ich den Wert "0x1F1" verwendet (siehe Seite 
27).
In Binär-Form ist das: 0x1F1 = 01 1111 0001
Damit lautet die vollständige Adresse: 1111001 11110001.
2.    Mit bit 8 des ersten übertragenen Bytes erkennen I2C-Slaves, ob es 
sich um eine Read- oder Write-Operation handelt.

Bei Read-Operationen ist bit 8 immer '1'.
Bei Write-Operationen ist bit 8 immer '0'.

Die Write-Adresse für den SCA3000 lautet somit: 11110010 11110001.
3.    Read-Befehle funktionieren beim SCA3000 offensichtlich aus einer 
Kombination aus Chip-Adressierung, Auswahl des Chip-Registers und 
anschließendem Auslesen des Registerwertes.
Hier trifft wahrscheinlich "Case 1" aus "Figure 10" der Spezifikation zu 
("sca3000_product_family_specification_8257300a.07.pdf", Seite 28) zu:

1)Versuch

Der Lese-Befehl zum Auslesen des Registers 0x00 müsste dann wie folgt 
lauten:
[S]11110011[SA]11110001[SA]00000000[SA] und dem Auslesen der 'register 
data'
bzw. in Hex: F3 F1 00 und Lesen.
4.    Beim XT75 müsste die Befehlsfolge so aussehen:
● <aF3F1>
● <b000001>
Mit <aF3F1> wird der SCA3000 adressiert.
Mit <b000001> wird das Register adressiert und 1 Byte gelesen.
folgende Regeln gelten für Xt75:
·Beim Befehl <a byte byte byte> werden die bytes nacheinander gesendet.
·Beim Befehl <b byte number> wird das byte gesendet und danach number 
Bytes gelesen (number muss immer eine 4-stellige Hex-Zahl sein).

2)Versuch
vorher das Register "I2C_RD_SEL" (0x17 bzw. 17h) adressieren.
1.    <aF2F11700> - Adressierung des Registers 0x00
2.    Auslesen des Registers:
         <aF2F1> - dies entspricht "11110AA0" und "AAAAAAAA"
         <bF30001> - dies entspricht "11110AA1" und der Anweisung danach 
1 Byte zu lesen.
3.    Zusammengefast also:
·         <aF2F11700>
·         <aF2F1>
·         <bF30001>

von Jörg S. (joerg-s)


Lesenswert?

>ich habe mein Sensor an einem XT75 Terminal angeschlossen
Das ist dieses GSM Modul das google ausspuckt?

Und was macht der SCA3000 jetzt wenn du eine I2C Anfrage sendest? Kommt 
das ACK für die Adresse? Sendet er gültige Daten? Kommt am XT75 
überhaupt was raus?

von Aliya (Gast)


Lesenswert?

schreiben funktioniert, auslesen nicht.
so sieht es wenn xt75 antwortet beim lesen {a+}, es heisst er hat es 
gemacht und das ACK kam auch.
beim auslesen (Adressierung ok}und beim auslesen kommt so eine Antwort 
bzw. Fehlermeldung {b-0001}, bedeutet Slave Adresse(f3) nicht 
annerkannt.

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
Noch kein Account? Hier anmelden.