
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
Hallo Strini, > Ist es möglich von einem I2C Baustein ( 12 bit A/D Wandler) mit der C-Control I V2.0 ( mit dem I2C Objekt von Basic++) Daten auszulesen. > Mit der alten C-Control war es mir nicht möglich (mit C3C) über den I2C - Bus einen 12 Bit Wert auszulesen.(konnte nur 8 bit auslesen ) > Also, mit der alten CC1 V1.1 ist das sehr wohl sehr einfach möglich. Zumindest in Basic. Als keines Bsp.: define pop DA[1] 'Trick zum Auslesen des Stacks ... '----Aufrufe - Bausteine m.Byte-Addr.Reg.---------------- 'i2caddr immer Schreibadresse !! 'addr = Registeradresse 'Byte schreiben: sys WrByteBReg,wert,addr,i2caddr 'Byte lesen: sys RdByteBReg,addr,i2caddr wert=pop 'Word schreiben: sys WrWordBReg,Wordwert,addr,i2caddr 'Word lesen: sys RdWordBReg,addr,i2caddr Wordwert=pop ... syscode "int_i2c.s19" 'nur einmal laden, dann auskommentieren Dies ist ein kleiner Auschnitt des I2C-Multitreibers für die CC1 V1.1 . (siehe CCTools unter Download: i2c_multitreiber.zip) Für Dich wäre dann sys RdWordBReg,addr,i2caddr interessant. > Hier das Protokoll des Bausteines > > S SLAVE ADDRESS W A CONTROL-BYTE A P > 1______7__________1_1_______8_______1_1 > S SLAVE ADDRESS R A DATA-BYTE A DATA-BYTE A P > 1_______7_________1_1_____8_____1_____8____1_1 Also irgendwie ist hier ein Stop zuviel. Normalerweise erfolgt nach dem Schreiben des internen Adressregisters direkt ein Repeatet-Start. Aber, aus Interesse, was für einen AD-Wandler benutzt Du ? (Bezeichnung?) MfG André H. |
| Antwort schreiben |