Есть такая вещь для микроконтроллеров АВР, как USB-bootloader. Использовать можно практически любой мик серии классик и мега, у кого выводов хватит, а это означает возможность использовать дешевые микроконтроллеры в ДИПовских корпусах, которые и нуб спаять сможет.
Микроконтроллер первый раз прошивается на обычном программаторе, хоть типа "5 проводков". После мик может работать как виртуальный ком порт, и самопрошиваться по USB. Это было все описано в цикле статей Сергея Рюмика "Микроконтроллерное управление звуком - 4".
Имхо, самый дешевый и достаточно удобный вариант. Кстати, в том цикле я о HiAsm и узнал

Попытаюсь отрыть нужный журнал
