Если ты имеешь ввиду программу самого проца (то есть алгоритм его работы) - то да через программатор:
http://milas.spb.ru/~kmg/files/projects/stk200/Подключается к LPT порту.
Далее скачиваешь с инета прграмму, которая поддерживает stk200 и авр`ы (например PonyProg) и прожигаешь.
Также есть
http://milas.spb.ru/~kmg/files/Distr.zip (CodeVision Avr) компилятор C с встроенным программатором (Собственно программа писалась на нем).
Пресеты же хранятся во внутреннем EEPROM проца и изменяются без помощи программатора.
Алгоритм записи следующий:
По миди посылается команда "Change Program" с номером пресета, далее щелкаешь хотя-бы одним переключателем на морде (чтобы было изменение состояния) дале посылается команда "Change Program" с тем-же номером пресета и контроллер запоминает состояние органов управления.
То есть если между двумя одинаковыми командами "Change Program" было изменение состояния переключателей, состояние запоминается в данном пресете.
По одиночной команде "Change Program" или если между двумя командами не было изменеий состояния, информация о пресеты вытаскивается из EEPROM и выдается на релюхи.
Любое изменение органов управления имеет приоритет перед миди.