Можно попробовать справиться STMовским ШИМом с этой задачей, если будут известны требования к нелинейным искажениям (и, в особенности, на частотах > 10 кГц).
Тогда либо вариант Tracked D (ШИМ формирует приблизительную форму напряжения, линейный каскад формирует точную форму) либо, если нелинейные искажения порядка 5% никого не испугают, то просто ШИМ (250..400 кГц) с компенсацией dead-time + программная компенсация изменения напряжения питания моста.