Boyutlar
Öncelikle belirteyim ki, daha önce boyut karşılaştırmalarına, yan yana fotoğraflarına bakıp oldukça küçükmüş dediğim Pro Mini, elime geçtiğinde tahmin ettiğimden çok daha küçük geldi.
Arduino Uno ve Arduino Pro Mini |
Pro Mini ve Uno arasındaki boyut farkını yaratan en önemli özellik, Pro Mini’nin üzerinde güç ve usb girişi ve usb çipi bulunmayışı. Boyut farkına rağmen cihazların donanım ve performans olarak farkları yok(bundan ilerleyen kısımlarda bahsedeceğim)
ATmega328P’nin iki farklı pakedi. Özellikleri birebir aynı, boyutları ise oldukça farklı. Gerçek boyut karşılaştırması için yukarıdaki Arduino Uno ve Arduino Pro Mini fotoğrafına bakabilirsiniz. |
Pro Mini Ön Yüz |
Pro Mini Arka Yüz |
Donanım
Pro Mini’nin üzerinde Atmel’in ATmega328P model mikrodenetleyicisi var.
Diğer tüm Arduino kartlarında bulunan mikrodeneteyicilerin de çoğunlukla Atmega 328P ve nadiren ATmega168 olduğunu belirteyim. Yani aslında Arduino’nun tüm farklı boyutlarında(Uno, Mega, Mini, Nano vs) odak noktası olan asıl ürün hep aynı. Değişen ise enerji tüketimi, çalışma gerilimi, minör performans farkları, header sayıları, bazı diğer donanımsal farklar ve tabi board’u kullanım amacınızla ilgili tercihler.
Pro Mini sürümleri ikiye ayrılıyor:
- 8 MHz İşlemci Hızı, 3.3 Volt çalışma gerilimi, 3.3-12 Volt giriş gerilimi
- 16 MHz İşlemci Hızı, 5 Volt çalışma gerilimi, 5-12 Volt giriş gerilimi(bende bulunan)
Arduino Pro Mini’nin, Arduino Uno gibi 6 Analog ve 14 Dijital port’u var.
Bağlantılar
Satın aldığım pakedin içeriği. Klon Arduino Pro Mini, Header’lar, Usb Modülü ve Jumper’lar |
Cihazı programlayabilmek için yapmam gereken ilk şey usb modülüne bağlamam gereken pinlere karşılık gelen header’ları lehimlemek.
Breadboard üzerinde kullanmak isterseniz GPIO header’larını da lehimlemeniz gerekiyor. Ben nasıl kullanacağıma henüz karar vermediğimden ve Arduino’mu mümkün olduğu kadar küçük muhafaza etmek istediğimden GPIO’ları şu an lehimlememeyi tercih ediyorum.
Pakedin içerisinde gelen jumper kabloları ile usb modülü ve board’u birbirine bağlıyorum. Sonra pc’me bağlıyorum ve yanan led’lerden, cihazın çalıştığını anlıyorum.
Ardunio Pro Mini pc’ye bağlandı. Mavi Led 13. GPIO pin’ine bağlı ve kurulu gelen program bu led’i 1 saniye aralıklarla yakıp söndürüyor. Kırmızı Led ise board’un güç aldığını gösteriyor. |
Pc’ye bağlı usb modülü. Sağ üstteki kırmızı led, Modülün güç aldığını gösteriyor. |
Board’un ve modülün üzerinde kırmızı power led’lerinin yandığını görebilirsiniz. Aynı zamanda bir saniye aralıkla yanıp sönmekte olan mavi led’in Arduino’larda standart olan 13 nolu pine bağlı olan led olduğunu ve içerisinde 1 saniye aralıklarla bu ledi yakıp söndüren bir program olduğunu tahmin ediyorum.
Daha önceden indirip yüklemiş olduğum Arduino ide’mi açtığımda ise kötü bir sürprizle karşılaşıyorum çünkü pc’m, donanımı görmüyor. Bu problemin sebebi, lisans modeli sebebiyle klon cihazlarda daha ucuz bir usb çipi(CH340G) kullanılması ve bu çipin sürücü desteğinin/uyumluluğunun problemli olması.
Aynı problemi Windows 8’de ve klon bir Uno ile yaşamış çok uğraşmış ve çözememiş, daha sonra problemin board’un usb çipinde olduğuna karar vermiştim. Daha sonra bu klon Uno’yu orijinal Uno üzerinden programlamayı başarmıştım. Kısacası çin malı Arduino’larda usb bir problem. Çözmenin farklı yolları olabiliyor veya benim gibi saatler süren uğraşın ardından çipin bozuk olduğuna karar verebiliyorsunuz. Eğer USB çipinizde problem varsa board’unuzu bir başka board üzerinden programlamayı değerlendirebilirsiniz. Bu konu üzerine benim denediğim ve çalıştığını teyit ettiğim bir yazı ve daha üst düzey bir diğer yazı.
Neyseki bu sefer bu adresteki yönergeleri izlemem yeterli oldu. (not: mac os x el capitan kullanıyorum)
Kod yüklüyoruz
Adresteki yönergeleri izlediğimde, sağ altta board’un bilgisayara hangi port üzerinden bağlı olduğunu gördüm ve problemin çözüldüğünü anladım.
Ide’mi açtığımda karşıma gelen boş progamı board’a yüklüyor ve 10 dakikadır yanıp sönen ve başımı ağrıtan mavi led’i söndürüyorum 🙂 Boş bir program da olsa resmen Arduino’yu programlamış olduk.
Daha sonra ide’de hazır bulunan blink adlı sample sketch’i yüklüyorum. Bu sketch, zaten board’a kurulu olarak gelmiş olan sketch. Ben bunu Board’a yüklemeden önce pin’i 10 olarak değiştiriyorum.
Bu aşamada diğer header’ları da lehimlersem breadboard üzerinde daha rahat çalışacağıma karar veriyorum.
Lehimli ve breadboard’a oturtulmuş Pro Mini |
Daha sonra breadboard üzerinde hazırlamış olduğum led devresine bağlıyorum. Programı yüklediğimde hazırladığım devredeki led yanıp sönmeye başlıyor.
Devrenin üstten görünüşü. 10 nolu pinden çıkan kablo 330 Ohm’luk bir dirence, bu direnç Led’in pozitif bacağına bağlı. Led’in diğer bacağı GND(toprak)’a bağlı. |
Herşey yolunda. Board çalışıyor. Sketch yükleyebiliyoruz.
Çalışan devre. |
Pin Layout’undaki farklılıklar
Orjinal Arduino Pro Mini. Header’lar kartın 3 kenarına dizilmiş. Alt sıranın üzerinde bulunan 4 pin’in herhangi bir yerinde hangi portlar oldukları yazmıyor. Bu pinler, soldan sağa A4, A5, A6 ve A7. Resim Arduino.cc adresinden alınmıştır. |
Klon Pro Mini. Header’lar kartın 4 kenarına dağıtılmış. Üst kısımda, reset tuşunun üstünde yer alan portlar A4, A5, A6 ve A7. |
Bu yazının bir parçası olarak düşündüğüm LCD ekranı pro mini üzerinden çalıştırma konusunu, I2C arayüzünü ve I2C için Arduino Library’lerini ve yukarıda bahsettiğim port tarayıcı programı da anlatacağım bir başka yazı olarak yazmayı düşünüyorum(umarım yazarım) ve burada konuyu toparlıyorum.