Arduino Mega 2560 Schematic

Güç:
Arduino Mega gücünü usb üzerinden veya harici güç kaynağından alabilir. Harici güç kaynağı AC-DC adaptör olabileceği gibi bataryada olabilir. Adaptör kart üzerindeki 2.1mm merkez-pozitif güç soketinden bağlanabilir. Batarya kart üzerindeki GND ve Vin pinleri üzerinden bağlanabilir.

Kartın çalışması için sürekli olarak usb'nin bağlı olması şart değildir. Kart sadece adaptör veya batarya ile çalıştırılabilir. Bu sayede kart bilgisayardan bağımsız olarak çalıştırılabilir.

Harici güç kaynağı olarak 6-20V arası kullanılabilir. Ancak bu değerler limit değerleridir. Kart için önerilen harici besleme 7-12V arasıdır. Çünkü kart üzerinde bulunan regülatör 7V altındaki değerlerde stabil çalışmayabilir. 12V üstündeki değerlerde de aşırı ısınabilir.

Mega kartının üzerindeki mikrodenetleyicinin çalışma gerilimi 5V'dur. Vin pini veya güç soketi üzerinden verilen 7-12V arası gerilim kart üzerinde bulunan voltaj regülatörü ile 5V'a düşürülerek karta dağılır.

Güç pinleri aşağıdaki gibidir:

  • VIN: Harici güç kaynağı kullanılırken 7-12V arası gerilim giriş pini.
  • 5V: Bu pin regülatörden çıkan 5V çıkışı verir. Eğer kart sadece usb (5V) üzerinden çalışıyor ise usb üzerinden gelen 5V doğrudan bu pin üzerinden çıkış olarak verilir. Eğer karta güç Vin (7-12V) veya güç soketi (7-12V) üzerinden veriliyorsa regülatörden çıkan 5V doğrudan bu pin üzerinden çıkış olarak verilir.
  • 3V3: Kart üzerinde bulunan 3.3V regülatörü çıkış pinidir. Maks. 50mA çıkış verebilir.
  • GND: Toprak pinleridir.



Hafıza:



Atmega2560 256 KB'lık flash belleğe sahiptir (8 KB kadarı bootloader tarafından kullanılmaktadır). 8 KB SRAM ve 4 KB EEPROM'u bulunmaktadır.




Giriş ve Çıkış:

Mega üzerindeki 54 adet dijital pinin hepsi giriş veya çıkış olarak kullanılabilir. 16 tane analog giriş pinide bulunmaktadır. Bu analog giriş pinleride aynı şekilde dijital giriş ve çıkış olarak kullanılabilir. Yani kart üzerinde toplam 70 tane dijital giriş çıkış pini vardır. Bu pinlerin tamamının lojik seviyesi 5V'dur. Her pin maks. 40mA giriş ve çıkış akımı ile çalışır. Ek olarak, bazı pinlerin farklı özellikleri bulunmaktadır. Özel pinler aşağıda belirtildiği gibidir.

  • Seri Haberleşme, Serial: 0 (RX) ve 1 (TX), Serial1: 19 (RX) ve 18 (TX), Serial2: 17 (RX) ve 16 (TX), Serial3: 15 (RX) ve 14 (TX) : TTLSeri veri alıp (RX), vermek (TX) için kullanılır. Pin 0 ve 1 doğrudan kart üzerinde bulunan Atmega16u2 usb-seri dönüştürücüsüne bağlıdır. Yani bilgisayardan karta kod yüklerken veya bilgisayar-mega arasında karşılıklı haberleşme yapılırkende bu pinler kullanılır. O yüzden karta kod yüklerken veya haberleşme yapılırken hata olmaması için mecbur kalınmadıkça bu pinlerin kullanılmamasında fayda vardır.
  • Harici Kesme, 2 (interrupt 0), 3 (interrupt 1), 18 (interrupt 5), 19 (interrupt 4), 20 (interrupt 3), 21 (interrupt 2): Bu pinler yükselen kenar, düşen kenar veya değişiklik kesmesi pinleri olarak kullanılabilir. Ayrıntılı bilgi için attachInterrupt() fonksiyon sayfasını inceleyebilirsiniz.
  • PWM, 2-13 ve 44-46: 8-bit çözünürülükte PWM çıkış pinleri olarak kullanılabilir.
  • SPI, 53 (SS), 51 (MOSI), 50 (MISO), 52 (SCK): Bu pinler SPI haberleşmesi için kullanılır.
  • LED, 13: Mega üzerinden 13. pine bağlı olan dahili bir led bulunmaktadır. Pin HIGH yapıldığında led yanacak, LOW yapıldığında led sönecektir.
  • Analog, A0-A15: Mega 16 tane 10-bit çözünürlüğünde analog giriş pinine sahiptir. Bu pinler dijital giriş ve çıkış içinde kullanılabilir. Pinlerin ölçüm aralığı 0-5V'dur. AREF pini ve analogReference() foksiyonu kullanılarak alt limit yükseltilip, üst limit düşürülebilir.
  • I2C, 20 veya SDA pini ve 21 veya SCL pini: Bu pinler I2C haberleşmesi için kullanılır.
  • AREF: Analog giriş için referans pini.
  • Reset: Mikrodenetleyici resetlenmek istendiğinde bu pin LOW yapılır. Reset işlemi kart üzerinde bulunan Reset Butonu ile de yapılabilir.
Arduino mega ile Atmega2560 arasındaki pin haritalaması sayfayını inceleyebilirsiniz.



Haberleşme:

Arduino Mega'nın bilgisayarla, başka bir arduino veya mikrodenetleyici ile haberleşmesi için bir kaç farklı seçenek vardır. Atmega2560, 4 tane donanımsal UART TTL (5V) seri haberleşme imkanı sunar. Kart üzerinde bulunan Atmega16u2 usb-seri dönüştürücüde bilgisayarda sanal bir com port açarak Atmega2560 ile bilgisayar arasında bir köprü kurar. Arduino bilgisayar programı içerisinde barındırdığı seri monitör ile arduino ile bilgisayar arasında text temelli bilgilerin gönderilip alınmasını sağlar. Usb-seri dönüştürücü ile bilgisayar arasında usb üzerinden haberleşme olduğu zaman kart üzerinde bulunan RX ve TX ledleri yanacaktır.

Mega üzerinde donanımsal olarak 4 adet seri port bulunmaktadır. Ancak SoftwareSerial kütüphanesi ile bu sayı yazılımsal olarak arttırılabilir.

Atmega2560 aynı şekilde I2C ve SPI portlarıda sağlamaktadır. Arduino bilgisayar programı ile gelen Wire kütüphanesi I2C kullanımını,SPI kütüphanesi de SPI haberleşmesini sağlamak için kullanılır.




Programlama:

Arduino Mega kartı Arduino bilgisayar programı (Arduino IDE) ile programlanır. Programda Tools > Board sekmesi altında Arduino Mega'yı seçip programlamaya başlayabilirsiniz. Ayrıntılı bilgi için referans ve temel fonksiyonlar sayfasını inceleyebilirsiniz. Arduino Mega üzerindeki Atmega2560 üzerine bootloader denilen özel bir yazılım yüklü gelir. Bu sayede kartı programlarken ekstra bir programlayıcı kullanmanıza gerek yoktur.Haberleşme orjinal STK500 protokolü ile sağlanır.

Bootloader yazılımı bypass edilerek kart doğrudan mikrodenetleyicinin ICSP header'i üzerinden ISP programlayıcı ile programlanabilir (Referans).

Bootloader yazılımı gibi Atmega16u2 içerisindeki kaynak yazılımda açık kaynaklıdır. Bu yazılıma da DFU bootloader adı verilir. Atmel's FLIP software (Windows) veya DFU programmer (Mac OS X and Linux) kullanılarak bu yazılım yeniden yüklenebilir. Veya Atmega2560'da olduğu gibi 16u2'de ISP programlayıcı ile programlanabilir. Gerek Atmega2560 gerekse 16u2 içerisindeki yazılımlar her zaman en güncel hali ile gönderilir. O yüzden mecbur kalmadıkça bu yazılımları değiştirmenize gerek yoktur.




Usb Aşırı Akım Koruması:

Arduino Mega üzerinden bulunan resetlenebilir sigorta bilgisayarın usb portunu kısa devrelerden veya aşırı akım tüketimi durumlarından korumaktadır. Kart bilgisayar usb portu üzerinden 500mA'den fazla akım çektiğinde kart otomatik olarak usb'den aldığı gücü koruma amacıyla kesmektedir. Fazla akım durumu veya kısa devre ortadan kaldırıldığında sigorta normal konuma döner ve tekrar bağlantı kurulur.
 
Geri
Yukarı