Попробуйте купить чистый AVR контроллер и шить его используя Arduino as ISP (загуглите по этому же запросу). Смотрите datasheet на конкретный проц и пытаетесь запустить его, включить, например, таймер или приёмо-передатчик и передать\получить байт данных. Для понимания в общем, можно писать проги на Си, когда разберетесь в общем, как работает МК и как взаимодействует с переферией, тогда, если останется желание, можете и в асемблер "зарыться".