У атмела были в своё время специальные атмеги и аппноты. К атмеге
нужно было подключить 8 мосфетов, два резистора для датчиков тока и
всё. Вот что я предлагаю. Не обязательно специальная атмега, нужен
контроллер с двумя компараторами, двумя программируемыми
источниками опорного, двумя таймерами (output compare)
сбрасываемыми от компараторов. У микрочипа такое есть, pic18
некоторые. Итого у тебя на плате из габаритных и дорогостоящих
компонентов ОДНА микросхема (максимум три, драйвер мосфетов, стабилизатор для питания МК), 8 транзисторов, возможно 8 диодов, пара мощных резисторов, конденсаторы. И ты не ограничен токами в 1.5А или напряжениями в 36V (и, следовательно скоростью или мощностью двигателя). В твоём варианте МК всё равно остаётся, но добавляется спец. драйвер, уходят транзисторы (но драйвер без внешних транзисторов обычно хилый и может потребовать установки радиатора!), начинаются сложности с питанием. В целом дороже и хуже. Ты же сам расписываешь, что через ногу STEP полноценно управлять не получается. Потому, что ты программно реагировать должен на каждый STEP, причём изохронно (с определённой частотой, без колебаний фазы, иначе будет вращение такое же дёрганное), а программно выдавать его не можешь, только таймером. А с таймером ты не можешь остановиться в заданной позиции точно. Потому, что тебе нужен не только таймер, но и счётчик импульсов. Так чтоб и то, и другое соединить -- не во всяком МК будет, нужна FPGA. Приехали...