Ардуинщики всех стран - объединяйтесь! В этом форуме, конечно.
Ответить

Ломается передача данных по I2C с прерываниями таймера

Пн фев 28, 2022 21:27:18


в данном скетче, при задействовании прерывания таймера TIMSK1 |= (1 << OCIE1A); по I2C в порт начинает валиться какая-то хрень. Если эту строку закомментить -- все работает прекрасно, в порт значения идут. Подкиньте направление, куда копать, плз.
Последний раз редактировалось Аlex Пн фев 28, 2022 21:28:02, всего редактировалось 1 раз.
Причина: spoiler

Re: Ломается передача данных по I2C с прерываниями таймера

Пн фев 28, 2022 21:43:07

Приоритет прерываний у таймеров выше, чем у TWIaddr.
Возможны "накладки".
Ну и где там функция обработчика прерывания по таймеру?
Лучше таки или знать содержимое используемых библиотек (сторонних авторов) или самому необходимое писать.
8)

Re: Ломается передача данных по I2C с прерываниями таймера

Пн фев 28, 2022 21:55:28

Лучше таки или знать содержимое используемых библиотек (сторонних авторов) или самому необходимое писать.
8)

а еще лучше писать на ассемблере. Одна беда -- резко падает скорость разработки кода.

Re: Ломается передача данных по I2C с прерываниями таймера

Вт мар 01, 2022 10:07:13

Да как-то проблем не замечал...
Ни с ассемблером ни с ардуиноIDE...
viewtopic.php?f=62&t=156720
8)

Re: Ломается передача данных по I2C с прерываниями таймера

Вт мар 01, 2022 10:16:33

Да как-то проблем не замечал...
Ни с ассемблером ни с ардуиноIDE...
viewtopic.php?f=62&t=156720
8)

и какое это отношение имеет к теме моего вопроса?

UPD. Разобрался, дело совершенно не в прерывании таймера
Ответить