Ужасно извиняюсь ,что беспокоил по своей проблеме.
Проблема решена и все работает прекрасно. Все оказалось абсолютно банально. Асм оказался слишком быстр для WTI. Так как на меге толком нельзя было проверить выполнение команды СТОП ,прога по быстрячку обрабатывала данные и залетала на СТАРТ еще до того как TWI успевал сформировать сигнал СТОП,из за чего и был глюк начиная со второго захода. Достаточно было установить паузу длиной в 1 SCL, как все стало в норме. При частоте шины 100кГц достаточно паузы для надежности в 10 микросекунд.
Желаю тем кто любит писать "быстрый" код ,не наступать на эти грабли.
|