Кусками уменьшай проект пока эффекты не исчезнут.
Возможно дешевле будет начать проект заново.
И делать постепенно, каждый раз подробно разбирая, как работает.
Сколько времени тратиться на обработку прерывания от АЦП ?
Это соответствует правильному значению ?
Тоже про UART итд.
Прежде чем использовать всё вместе, теcты по-пиши на каждую
подсистему. Изучи подробно, что получилось и как работает.
Всё по шагам, не торопясь.