пытаюсь завести TWI в режиме мастера под at91sam7s256. Судя по форуму, не я первый

Код
#include "project.h"
#include "lib_twi.h"
...
#define TWI_BUS_CLOCK 100000 /* in Hz */
#define AT91C_MXL7001_I2C_ADDRESS (0xC0)
int main()
{
char ConfigReg = 0xaa;
/* TWI initialization @ TWI_BUS_CLOCK */
AT91F_TWI_Open(TWI_BUS_CLOCK);
while (1) {
AT91F_TWI_WriteSingleIadr(AT91C_BASE_TWI,
AT91C_MXL7001_I2C_ADDRESS,
(char)0x0a,
AT91C_TWI_IADRSZ_1_BYTE,
&ConfigReg);
}
}
#include "lib_twi.h"
...
#define TWI_BUS_CLOCK 100000 /* in Hz */
#define AT91C_MXL7001_I2C_ADDRESS (0xC0)
int main()
{
char ConfigReg = 0xaa;
/* TWI initialization @ TWI_BUS_CLOCK */
AT91F_TWI_Open(TWI_BUS_CLOCK);
while (1) {
AT91F_TWI_WriteSingleIadr(AT91C_BASE_TWI,
AT91C_MXL7001_I2C_ADDRESS,
(char)0x0a,
AT91C_TWI_IADRSZ_1_BYTE,
&ConfigReg);
}
}
Функции AT91F_TWI_* - взяты из lib_twi, идущей с reference кодом.
То есть посылаю в цикле 1 байт. На осциллографе вижу: start бит, первый бит адреса, потом нули (хотя посылаю 0xAA, "гребенку"), ACK и STOP бит.
Явно, что-то не так: независимо от посылаемых данных, картинка не меняется.
В чем проблема, где ошибка? Бракованный референс-код или проблемы в чипе?
Заранее премного благодарен!