Arduino temel olarak bir mikrodenetleyici programlamak için gerekli bileşenleri kullanımı oldukça rahat halde bir araya getirmiş olan bir platformdur. Arduino platformunu oluşturan bileşenlere bir göz atalım.

Arduino platformunda kullanılan temel bileşenlere bakacak olursak, bunlar:

Arduino Geliştirme Ortamı (IDE)

Arduino Bootloader (Optiboot)

Arduino Kütüphaneleri

AVRDude (Arduino üzerindeki mikrodenetleyici programlayan yazılım)

Derleyici (AVR-GCC)



Arduino bütün bu bileşenleri bir araya getirip kolayca kullanımımıza sunuyor. Zaten onu bu kadar popüler yapan da bizi ayrıntılarla uğraştırmadan doğrudan mikrodenetleyici programlamamızı sağlaması.

Arduino geliştirme ortamı Processing adlı dilin ortamına dayanıyor ve görünüş olarak da ona çok benziyor. Java dilinde geliştirilen ortamın kodlarına buradan ulaşabilirsiniz. Eğer Java biliyorsanız Arduino ortamı üzerinde istediğiniz değişiklikleri yapabilirsiniz. Arduino geliştiricilerinin e-posta grubuna üye olup gelişmeleri takip edebilirsiniz. Arduino geliştirme ortamına ait bilgilere buradan ulaşabilirsiniz.

Normalde bir mikrodenetleyiciyi programlamak için kullandığımız ürüne yönelik geliştirilmiş olan programlayıcıları kullanmamız gerekir. Bunun bir alternatifi de seri haberleşme üzerinden mikrodenetleyiciyi programlamamızdır. Tabi bunun için mikrodenetleyicimizin bir seri haberleşme modülüne sahip olması ve kendi program belleğini programlama özelliğine sahip olması gerekiyor. Bir de bu programlama işini yapacak ufak bir programcığa ihtiyaç var. İşte bu programcığa “bootloader” deniliyor. Mikrodenetleyici çalışmaya başladıktan hemen sonra programlamaya başlamak için gerekli verilerin gelmesini bekliyor. Bu veriler gelmediyse doğrudan mikrodenetleyiciye yüklenmiş programı koşturmaya başlıyor. İşte Arduino’da kullanılan bootlooader’ın ismi OptiBoot. Optiboot’un kodlarına buradan ulaşabilirsiniz. Merak edip kodlara baktığınızda bol bol Atmega assembly kodları göreceksiniz.

Arduino kütüphaneleri belki de Arduino’nun bu kadar popüler olmasındaki en önemli bileşen. Bu kütüphaneler sayesinde mikrodenetleyicilerin ayrıntılı olarak bilmesek de kolayca programlayabiliyoruz. Arduino ile birlikte gelen standart kütüphaneler yanında internette gönüllüler tarafından geliştirilmiş birçok farklı kütphane de bulmak mümkün. Bu kütüphanelerin linklerini burada bulabilirsiniz.

Arduino kütüphaneleri geliştirme ortamıyla beraber geliyor ve Arduino klasörleri içerisindeki “libraries” klasörünün altında yer alıyor. Buradaki kodlara göz atarak kütüphanelerin yapısını ve mikrodenetleyicinin modüllerinin nasıl programlandığını görebilirsiniz.

Kodlarımız derlendikten sonra programlamak için kullanılan AVR Dude programıyla ilgili bilgilere ve kodlarına da buradan ulaşabilirsiniz.

Atmel Mikrodenetleyicileri programlama da kullandığımız derleyici, linker vs… gibi araçları bir arada barındıran WinAVR projesine de buradan ulaşabilirsiniz.

Coşkun Taşdemir