Hallo, ich habe folgendes problem....durch diese kleine beschreibung wisst ihr schon alle bestimmt worum es geht...:) Das problem liegt daran ,dass ich nicht weißt wie ich ein Acknoledge mit dem SC16IS750 senden soll. würde mich gern freuen wenn jemand mir helfen könnte. Master SLAVE // MSP430F2274 SC16IS750 // ----------------- ------------------ // /|\| XIN|- Low -|I2C/SPI GND |-- // | | | | | // --|RST XOUT|- |A0 Slave | // | | |A1 Adress 0x9A | // | | | | // | | | | // | SDA/P3.1| <------->|SDA | // | SCL/P3.2| -------> |SCL VIN |--Spannung Eingang // so sieht mein code aus unsigned char array[40] = { 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb }; unsigned char store[40] = { 13, 13, 13, 13, 13, 13, 13, 0, 0, 0}; void main(void) { //int i = 3; WDTCTL = WDTPW + WDTHOLD; // Stop WDT //EINT(); BCSCTL1 = CALBC1_8MHZ; DCOCTL = CALDCO_8MHZ; while(1) { TI_USCI_I2C_transmitinit(0x9A,0x12); // Initilisiert die Übertragung mit USCI while ( TI_USCI_I2C_notready() ); // wait for bus to be free if ( TI_USCI_I2C_slave_present(0x9A) ) // slave address unterscheidet sich von der Initialisierung { // initializatio TI_USCI_I2C_receiveinit(0x9A,0x12); // Initilisiert der Empfang mit USCI while ( TI_USCI_I2C_notready() ); // warte bis der Bus frei ist TI_USCI_I2C_receive(32,store); while ( TI_USCI_I2C_notready() ); // warte bis der Bus frei ist TI_USCI_I2C_transmitinit(0x9A,0x12); // Initilisiert die Übertragung mit USCI while ( TI_USCI_I2C_notready() ); // wait for bus to be free TI_USCI_I2C_transmit(32,array); // start transmitting } //LPM3; } } und als Anhang habe ich auch eine visualisierung von dem Prozess..aber bekomme ich immer noch kein daten.
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.