Рассказываю, как все было на самом деле.
Оказывается, записывать данные в регистр I2C нужно после того, как инициирована передача. Иначе, контроллер думает, что их там нет.
Иными словами, чтобы послать один байт, нужно сделать следующее:
I2CNDAT = 0x01; U0CTL |= MST; I2CTCTL |= I2CTRX + I2CSTT + I2CSTP; I2CDRB = 0xEE;
Если последние две строки поменять местами, работать НЕ БУДЕТ! Надеюсь, кому-нибудь пригодится.
|