Joby'ye katılıyorum - Arduino harika ama her zaman beni çevreleyen çerçeveyle boğulmuş hissediyorum. Arduino'nuzda düz C kullanmaya devam ediyorum ve sıfırdan sağladıkları bir çok kütüphane işlevselliğini inşa ediyorum. Genellikle genişlikten önce derinliği tercih ederim - daha fazla sağlanan çerçeve kullanarak başka bir mikrodenetleyici ailesine başlamayın. Bu işlevlerin bazılarını kendiniz nasıl uygulayacağınız hakkında biraz daha fazla bilgi edinin.
Çalışan bir programla başlayın ve Arduino kütüphane çağrılarını her seferinde bir işlevle kendi sürümlerinizle değiştirin. Zaten engellemediyseniz kontrol kayıtları, zamanlama, bit işlemleri, vb. Hakkında çok şey öğreneceksiniz. ATMega328 veri sayfasını derinlemesine okuyun - ihtiyacınız olan her şey orada.
AVR Studio veya Code :: Blocks gibi farklı bir IDE deneyin. GCC araç zincirini öğrenin. Daha gelişmiş kodlama tekniklerini deneyin - birim testleri, kapsam, profil oluşturma, tüy bırakma / atel kontrolü. Arduino'ya bir RTOS koyun.
Kombine bir programcı / kontrolör zayıflığın bir işareti değildir - sadece bir tasarım seçimidir. Ondan gelebilecek tek 'zayıflık' devre içi hata ayıklama eksikliğidir. Bir AVR Ejderhası alın ve bunu 50 dolara yatıracaksınız.