А если перепрогаммировать а потом сбросить питание то опять в аналог переходит?
Да вроде как есть в AS5600 что-то типа ППЗУ.. Но как-то не особо понятно описана процедура.
И риск убить чип при этом имеется.
Вот как рассказывает об этом ИИ (перевод гугла) -
Программирование регистра CONF (Configuration) AS5600 включает использование интерфейса I2C для установки таких параметров, как нулевой/максимальный углы, тип выхода (аналоговый/ШИМ) и режимы питания, но для постоянного программирования (прожига) настроек клавиш (ZPOS, MPOS) требуются специальные команды «BURN» (запись 0x80 в регистр CONF),0xFF(и ожидание) и может быть выполнено лишь ограниченное количество раз, отслеживаемое регистром ZMCO. Перед изменением существующих значений (особенно таких битов, как OUTS) необходимо считать их, чтобы избежать повреждения других настроек, убедиться в наличии магнита и соблюдать требования к времени, указанные в техническом описании для прошивки .
Основные этапы программирования I2C
Подключение и идентификация: Используйте протокол I2C с адресом по умолчанию датчика (обычно 0x36или 0x37).
Принцип «чтение перед записью»: перед изменением чего-либо необходимо прочитать регистр CONF ( 0x01) и другие соответствующие регистры ( ZPOS, MPOS, и т. д.), чтобы узнать их текущие значения.
Изменение битов: Используйте побитовые операции (И, ИЛИ, Исключающее ИЛИ) для изменения определенных битов в регистре CONF без влияния на другие, например, для установки типа выхода или режима питания.
Обратная запись: Записать измененное значение обратно в регистр CONF.
Постоянное выжигание (OTP - однократно программируемый)
Ограниченное сжигание: ZPOS и MPOS можно сжигать безвозвратно только три раза (проверьте реестр ZMCO).
Команда угла выгорания:
Убедитесь, что магнит обнаружен (бит MD установлен).
Запись 0x80в реестр 0xFF(BURN register).
Подождите не менее 1 мс.
При желании можно провести проверку, последовательно считывая регистры 0x01, 0x11, 010.
Регистр BURN ( 0xFF): Запись в этот регистр запускает постоянную запись в регистры ZPOS и MPOS.
Общие регистры и биты
CONF ( 0x01): Содержит биты для выбора выхода (OUTS), частоты ШИМ (PWMF), режима питания (PM), фильтра (SF, FTH), гистерезиса (HYST), сторожевого таймера (WD) и направления (вывод DIR).
ZPOS ( 0x02): Нулевая позиция (начальная).
MPOS ( 0x03): Максимальное положение (остановка).
RAW ANGLE ( 0x0C/ 0x0D): Исходный 12-битный ракурс.
Важно: Для получения подробных схем регистров, информации о битовых функциях и точных параметрах синхронизации всегда обращайтесь к официальному техническому описанию микросхемы ams OSRAM AS5600 , поскольку неправильное программирование может потребовать замены устройства.
Я никогда не пробовал такое "шитьё", потому-что просто не требовалось. Ни аналог, ни ШИМ не использовал, только I2C.
И из описания я так и не понял, можно ли прошить "на постоянку" тип выхода..
Так-что, что-либо более конкретное сказать не могу..
P.S. Вот ещё помучал ИИ и.. Он раскололся

Для постоянного сохранения настроек конфигурации AS5600 необходимо использовать...BURN_SETTING управление через интерфейс I2C.
Важное предупреждение
Регистр конфигурации ( CONF) можно записать в энергонезависимую память только ОДИН раз . После записи такие параметры, как режим питания, гистерезис и тип выхода, нельзя будет изменить для данного конкретного чипа.
Этапы программирования
Чтобы навсегда сжечь CONF регистр: (оптимистично, однако!
; комментарий мой)
Настройка CONFрегистров (0x07, 0x08): Запишите желаемые параметры (например, режим питания, гистерезис, тип выхода) во временные регистры конфигурации.
Необходимо выполнить следующие предварительные условия: команда BURN_SETTING может быть выполнена только в том случае, если регистры углов (ZPOS и MPOS) ранее не были записаны (ZMCO должен быть равен 0).
Выполнить команду записи: Записать значение 0x40 в регистр записи (адрес 0xFF ).
Примечание: Не путайте это с BURN_ANGLE(0x80), который используется для ZPOS/MPOS и может повторяться до 3 раз.
Карта регистров для CONF (0x07, 0x08)
Регистр CONF состоит из 14 бит, распределенных по двум байтам:
PM [1:0]: Режим питания (по умолчанию: 00 - номинальный).
HYST [1:0]: Гистерезис (по умолчанию: 00 - Выкл.).
ВЫХОДЫ [1:0]: Выходной каскад (00 = аналоговый полный диапазон; 01 = аналоговый с уменьшенным диапазоном; 10 = ШИМ).
PWMF [1:0]: Частота ШИМ.
SF [1:0]: Медленный фильтр.
FTH [2:0]: Быстрый порог фильтрации.
WD: Сторожевой таймер (по умолчанию: 0 - выключен).
Пример кода (I2C)
cpp
// Example using Wire library to burn CONF settings
Wire.beginTransmission(0x36); // AS5600 Address
Wire.write(0xFF); // Burn Register Address
Wire.write(0x40); // Command to burn SETTINGS (CONF)
Wire.endTransmission();
Используйте код с осторожностью.