
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
Hallo, ersetz es mit "sys I2C_GETACK" So arbeitet es bei meiner Station. MfG ManfredW > Hallo, > > ich habe das "sys I2C_SendACK" mal weggelassen > ohne Erfolg. Jetzt ist das Ansteuern der anderen Ports nicht mehr möglich. > Denke die übertragenen Daten stimmen dann nicht mehr mit den > Spezifikationen für I2C überein. > > Danke trotzdem!! > mfg Maik > > > > Hallo, > > > > ich vermute, dass > > sys I2C_sendACK > > nach write weggelassen werden muss. > > > > MfG ManfredW > > > > > Hallo zusammen, > > > > > > ich bin gerade an die Grenzen meiner M-Unit gestossen und bin gerade dabei eine Porterweiterung via PCF8574AT zu realisieren. > > > Damit ich auch die ausreichende Geschwindigkeit erreiche habe ich die I2C Assemblerroutine geladen und möchte über diese auf den PCF zugreifen. > > > > > > Jetzt kann ich alle Ports umschalten (7-1), ausser Port0 dieser ist immer LOW. Wo liegt da mein Denkfehler im Programm? > > > Zur Verdeutlichung hier meinen Testquelltext: > > > > > > Kann mir da jemand einen Hinweis geben? > > > Danke Maik > > > > > > '------------------------------------------ > > > ' Definitionen der I2C-Einsprungadressen > > > '------------------------------------------ > > > define I2C_START &h101 > > > define I2C_STOP &h10e > > > define I2C_READ &h12f > > > define I2C_WRITE &h119 > > > define I2C_GETACK &h156 > > > define I2C_SENDACK &h173 > > > define I2C_SENDNACK &h17C > > > > > > '------------------------------------------ > > > ' Definitionen der šbergabe-Variable > > > '------------------------------------------ > > > define BASIC_IO byte[1] ' Übergabe mit 1. BASIC-Variablen-Byte ($A1) > > > > > > define BaseAdr byte[2] ' Basis-Adresse des ersten Moduls > > > define Base8574a &b01110000 ' Basis-Adresse PCF 8574A > > > > > > '------------------------------------------------------------------------- > > > #main > > > > > > BaseAdr = Base8574a > > > > > > sys I2C_START > > > BASIC_IO = BaseAdr 'moduladresse > > > sys I2C_Write > > > BASIC_IO = &b11111111 'alle 8 ports sollten auf 1 sein > > > sys I2C_WRITE > > > sys I2C_sendACK > > > sys I2C_STOP > > > > > > > > > end Meine Homepage: http://manfred.wilzeck.de |
| Antwort schreiben |