Hallo Leute,
ich benutze einen Linux-Router (TL-MR3020), um gewisse einfache
Steuerungen zu realisieren und diese über W-Lan fernzusteuern.
Ich wollte nun ein Hygrosens TEMOD-I2C Modul in Betrieb nehmen. Die
Kommunikation über I2C dürfte soweit funktionieren (2 MOSFET zur
Pegelwandlung, am Oszi sehe ich relativ saubere Rechteck-Signale). Mit
dem Programm "i2cdetect" finde ich auch das Modul unter der Adresse
0x52, doch dieses Modul auszulesen bereitet mir einige Schwierigkeiten:
1 | # i2cdump -y 0 0x52 w
|
2 | 0,8 1,9 2,a 3,b 4,c 5,d 6,e 7,f
|
3 | 00: a11c a11c a11c a11c a11c a11c a11c a11c
|
4 | 08: a11c a11c a11c a11c a11c a11c a11c a11c
|
5 | 10: a11c a11c a11c a11c a11c a11c a11c a11c
|
6 | 18: a11c a11c a11c a11c a11c a11c a11c a11c
|
7 | 20: a11c a11c a11c a11c a11c a11c a11c a11c
|
8 | 28: a11c a11c a11c a11c a11c a11c a11c a11c
|
9 | 30: a11c a11c a11c a11c a11c a11c a11c a11c
|
10 | 38: a11c a11c a11c a11c a11c a11c a11c a11c
|
11 | 40: a11c a11c a11c a11c a11c a11c a11c a11c
|
12 | 48: a11c a11c a11c a11c a11c a11c a11c a11c
|
13 | 50: a11c a11c a11c a11c a11c a11c a11c a11c
|
14 | 58: a11c a11c a11c a11c a11c a11c a11c a11c
|
15 | 60: a11c a11c a11c a11c a11c a11c a11c a11c
|
16 | 68: a11c a11c a11c a11c a11c a11c a11c a11c
|
17 | 70: a11c a11c a11c a11c a11c a11c a11c a11c
|
18 | 78: a11c a11c a11c a11c a11c a11c a11c a11c
|
19 | 80: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
|
20 |
|
21 |
|
22 | # i2cget -y 0 0x52 0 w
|
23 | 0xa11c
|
Dieser Wert wird ändert sich jedesmal, wenn ich das Modul an die 5V
hänge (etwa 0x950d, 0xcf3b, 0x3f10, ). Ab dem Zeitpunkt, zu dem ich
diesen Wert abhole, ändert sich auch die analoge Ausgangsspannung (0-5V)
nicht mehr.
Der analoge Wert stimmt, doch der digitale Wert schwankt sehr stark.
Weiters kann ich mir aus den Datenblättern keinen Reim daraus machen,
wie man ohne dem USB-Modul von Hygrosens eine neue AD-Wandlung anstoßen
kann,..
Kann mir jemand weiterhelfen - auch wenn es hier nicht um einen
konventionellen Mikrocontroller geht?
Besten Dank im Voraus!!