Контроллер хорош только в том случае если есть готовая прошивка. А чтобы ее изобразить - это уже другой уровень, и я бы сказал другое направление - программирование. И тут нужно разграничивать один предмет от другого. Не всегда хороший программист хорошо разбирается в схемах жесткой логики и наоборот. И, кроме того, не всегда бывает оправданно что-то пытать с программой и использовать контроллер, который может потерять прошивку по разным причинам, когда решение в жесткой логике проще и надежнее. То есть выбираем оптимальный вариант и, естественно, по своим возможностям...