Я не ИИ к сожалению) Я просто, честно, не всегда знаю как ответить,
так как не всегда понимаю вопрос или недостаточно знаний чтобы на
него правильно ответить. Как можно проверить атомарность? Из того,
что я читал, я понял, что атомарность можно обеспечить специальными
командами. Я пытался сделать что-то такое создав две функции:
функцию для получения значений с ацп и функцию для переноса данных
из переменной, что хранит данные ацп, в область данных объекта
сообщения. Для
каждой функции я объявил макрос DISABLE. Из документации: The DISABLE directive instructs the compiler to generate code that disables all interrupts for the duration of a function, - то есть пока выполняется функция остальные прерывания запрещаются. Эквивалентно ли это обеспечению атомарности? Для этого МК также есть команда atomic. Из описания: The _atomic_ routine allows you to protect a number of instructions from hardware interrupts. Но когда я попытался обернуть в неё свой код, вылетала ошибка, поэтому её я так и не использовал.