Ну так вы проверили, какие значения АЦП сохраняются в локальный
массив, в самом МК, во время работы CAN? Вам нужно выяснить,
действительно ли АЦП даёт другой результат при работе CAN? И вообще, разница, при 16 бит АЦП ожидаема. 16 бит это достаточно большая разрядность, чтобы замечать дефекты и ограничения точности схемы.
Сколько % у вас выбросы? Сколько процентов от полной шкалы датчика и сколько процентов от текущего значения? Может, у вас всё хорошо и вас беспокоят отклонения пары последних бит?