sergvks 0 9 июня, 2016 Опубликовано 9 июня, 2016 · Жалоба Нужно передать 3 байта *pTWIMADDR = addr; *pTXTWI8 = dat0; *pTXTWI8 = dat1; *pTWIMCTL = (3<<6) | TWIMEN ; while(*pTWIFIFOSTAT&2); *pTXTWI8 = dat2; FIFO в проце на 2 байта, если во время while(*pTWIFIFOSTAT&2) вызывается прерывание обработчик которого требует приличное время, *pTXTWI8 не успевает прописаться сразу до опустошения FIFO, то TWI остаётся в BUSY и 3-й байт не передаётся. Может кто подскажет что я не так делаю ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться