Gast
#983065
Hi, zurzeit kämpfe ich während der Inbetriebnahme meiner neu zusammengebauten Schaltung mit dem I2C - Bus. Am Bus hängen 3 ICs. Ich weiße die I2C Pins dem USCI_B0 Modul zu und initialisiere anschließend den ersten Baustein (TMP100) entsprechend einem Beispielcode von TI zum senden: UCB0CTL1 |= UCSWRST; // Enable SW reset UCB0CTL0 = UCMST + UCMODE_3 + UCSYNC; // I2C Master, synchronous mode UCB0CTL1 = UCSSEL_2 + UCSWRST; // Use SMCLK, keep SW reset UCB0BR0 = 80; // fSCL = SMCLK/80 = 100kHz UCB0BR1 = 0; UCB0I2CSA = 0x48; // Set slave address UCB0CTL1 &= ~UCSWRST; // Clear SW reset, resume operation UCB0I2CIE |= UCNACKIE; IE2 |= UCB0TXIE; // Enable TX ready interrupt Anschließend frage ich UCBBUSY ab, ob der Bus frei ist, allerdings bleibt dieses Bit immer gesetzt. Hat zufällig jemand einen Tip für mich, wie ich soft- und hardwaremäßig dem Fehler auf die Spur kommen kann? Bisher habe ich schon die ICs auf richtigen Einbau und korrekten Anschluß hin überprüft. Danke schon mal im Vorraus, Martin P.S. Wo finde ich den Formatierungsbefehl zum einfügen von Codeschnipseln in einen Beitrag?