Arduino M0 Pro Özellikleri
   

Robotturk, Robotik Ürünler Sitesi

ARDUINO M0 Pro

Arduino M0 Pro, Arduino uno platformunun 32 bitlik basit ama güçlü bir uzantısını temsil ediyor. Kart Atmel’in 32-bit ARM Cortex M0 çekirdeğe sahip SAMD21 mikrodenetleyicisinden güç alıyor.

Arduino M0 Pro yu öne çıkaran özellikleri; 12 kanal PWM, USB host özelliği (örneğin bir klavye veya fareye USB girişlerinden takarak doğrudan kullanabilirsiniz), Arduino UNO pin dizilimi olarak %100 uyumluluk ve 2 adet micro-USB girişi ve yüksek çözünürlüklü IO pinleri üzerinden yapılacak analog veya dijital sinyal işleme işlemlerinde pinlerin yüksek çözünürlük kalitesidir.

Arduino M0 Pro

Arduino M0 Pro Teknik Özellikleri

Mikrodenetleyici : ATSAMD21G18, 48 pin
Mimari : ARM Cortex-M0+
Çalışma gerilimi : +3.3 V DC
Flash hafıza : 256 Kb
SRAM : 32 Kb
Saat frekansı : 48 MHz
Giriş / çıkış pini başına düşen DC akım : 7 mA
Besleme gerilimi : 5 - 15 V DC
Dijital giriş / çıkış pinleri : 20 tane
PWM çıkışı : 12 tane
Analog giriş pinleri : 6 + 1 DAC
Güç tüketimi : 44 mA
Boyutları : 53.34 mm x 68.58 mm
Ağırlık : 22 g

Arduino M0 Pro Ön Yüz Arduino M0 Pro Arka Yüz
Arduino M0 Pro ön yüz Arduino M0 Pro arka yüz

Güç

Arduino M0 Pro, bir mikro USB ile bilgisayara bağlanarak veya harici bir güç kaynağı ile beslenebilir. Güç kaynağı otomatik olarak öncelik sırasına göre;
1) Harici kaynak,
2) Gömülü debugger USB'si,
3) Hedefin USB'si seçilir. 

Harici güç kaynağı olarak pil ve ya AC – DC adaptör kullanılabilir. Adaptörün 2.1 mm jaklı ucunun merkezi pozitif olmalıdır ve Arduino Uno 'nun power girişine takılmalıdır. Pil veya bataryanın uçları ise power konnektörünün GND ve Vin pinlerine bağlanmalıdır. Arduino M0 Pro ‘nun USB host olarak kullanılması durumunda, USB konnektörden çekilen  akım 500mA'i aşarsa harici güç kaynağı gereklidir.

VIN : Arduino M0 Pro kartına harici bir güç kaynağı bağlandığında kullanılan voltaj giriş pinidir. 6 ile 20 V arasında voltaj beslemesi yapılabilir.

5V : Mikrodenetleyiciye ve karttaki diğer bileşenlere güç sağlamak için kullanılan regüle edilmiş güç kaynağıdır. Bu VIN’den gelen voltajın dahili regülatör ile düzenlenmesi ile veya USB veya başka bir 5 V kaynağından gelebilir. Kart üzerindeki dahili regülatörden sağlanan maksimum çıkış akımı 1 A dir.(güç kaynağına göre)

3.3V :Arduino kart üzerindeki regülatörden sağlanan 3,3V çıkışıdır.

GND : Toprak pinidir.

IOREF :giriş/çıkış pinlerinin çalıştığı voltajdır. Arduino M0 Pro için bu 3.3 V tur.

Hafıza

ATSAMD21G18 256 KB flash program hafızasına sahiptir. Bunun 4 KB kadarı bootloader tarafından kullanılır.

Giriş ve Çıkışlar

Arduino M0 Pro üzerindeki 14 digital giriş/çıkış pininden her biri pinMode(), digitalWrite() ve digitalRead() fonksiyonları ile giriş ya da çıkış olarak kullanılabilir. Bu çıkışlar 3.3 V ‘ta çalışırlar. Her pin maksimum 7 mA çekebilir ya da sağlayabilir ve 20-60 KOhm dahili pull - up dirençleri vardır. Ayrıca bazı pinlerin özel fonksiyonlara sahiptir.

Arduino M0 Pro Pin diyagramı

Serial 0 (RX) ve 1 (TX) : Bu pinler TTL seri data almak (receive - RX) ve yaymak (transmit - TX) içindir.

TWI : SDA ve SCL : Wire kütüphanesini kullanarak TWI haberleşmesini destekler.

PWM: 2 - 13: Bu pinler analogWrite () fonksiyonu ile 8-bit PWM sinyali sağlar. PWM çözünürlüğü analogWriteResolution() fonksiyonu ile değiştirilebilir.

Harici kesmeler 2 (kesme 0), 3 (kesme 1), 18 (kesme 5), 19 (kesme 4), 20 (kesme 3) ve 21 (kesme 2) : Bu pinler bir kesmeyi tetiklemek için kullanılabilir.

SPI: SPI pinleri ICSP header üzerinde  mevcuttur.  SPI kütüphanesi ile bu pinler üzerinden SPI haberleşme si sağlanır. Arduino Uno da olduğu gibi, M0 Pro’da da SPI pinleri herhangi bir dijital giriş çıkış ile ilişkilendirilmemiştir.  Bu durumda SPI haberleşeme yapan herhangi bir shield kullanırken bu shiledın ICSP headerı olup olmadığına dikkat edilmelidir. Aksi taktirde haberleşme sağlanamaz.

Analog Girişler: M0 Pro’da 6 adet analog girişi bulunmaktadır (A0 – A5). Bu pinler Arduino Uno’daki ile aynı yerdedir. Her bir analog pin 12 bit (4096 farklı değer) çözünürlük desteklemektedir. Varsayılan ayarda analog pinler 0 – 3.3 V aralığında analog girişler ölçer. Ancak sinyal üst sınırı, AREF pini ve analogReference() fonksiyonu kullanılarak değiştirilebilir.

DAC : A0 pini , analogWrite() fonksiyonu ile 10 bit çözünürlükte (1023 seviye) gerçek analog çıkış sağlar. Bu pin, Audio kütüphanesi ile audio çıkış yaratmak için kullanılabilir.

RESET : Mikrodenetleyiciyi resetlemek içindir. Genellikle shield üzerine reset butonu eklemek için kullanılır.

Haberleşme

Arduino M0 Pro kartı, bir bilgisayar ile, başka bir Arduino kart veya diğer mikrodenetleyiciler ile ve telefon, tablet, kamera gibi diğer cihazlar ile haberleşmesini sağlayacak donanıma sahiptir.  SAMD21 mikrodenetleyicisi bir adet  donanımsal  UART çıkışı sağlarken 3 adet de donanımsal USART (3.3v) çıkışı sağlamaktadır. 

Bilgisayarın programlama portu EDBG'ye bağlanır. EDGB bilgisayarda çalışan yazılıma bir virtual Com port olarak görünür (SAMD entegresi standart USB sürücülerini kullanmaktadır, dışarıdan bir sürücüye gerek yoktur. Fakat Windows için bir .inf dosyası gerekmektedir. Linux bir makine ise Arduino M0 PRO2nun takılı olduğu portu otomatik olarak bir COM port olarak görecektir.). EDBG aynı zamanda SAMD21 işlemcisinin donanımsal UARTına bağlıdır. RX ve TX pinleri seri-USB haberleşme ile ATSAMD21G18 mikrodenetleyici aracılııyla kartın programlanmasını sağlar. Arduino yazılımı, metinsel verileri aktarmayı sağlayan bir seri monitör içerir. Karttan bilgisayar ATSAMD21G18 çipi ve USB bağlantısı ile veri gönderilirken, kart üzerindeki RX ve TX ledleri yanıp söner. Yerel USB portu SAMD21 e bağlıdır ve USB üzerinden seri haberleşmeye (CDC)  izin verir. Bu şekilde bilgisayarınızdaki seri monitör veya diğer uygulamalar ile haberleşme sağlanır. Ayrıca SAMD21, TWI ve SPI haberleşmelerini de destekler.  TWI haberleşmesi için Wire kütüphanesi, SPI haberleşmesi için ise SPI kütüphanesi kullanılır.

Programlama

Arduino M0 Pro, Arduino IDE ile programlanabilir. Arduino M0 Pro üzerindeki 32 bitlik SAMD21 nedeniyle, kartın programlanması AVR mikrodenetleyici tabanlı diğer Arduino kartlarından farklıdır. Arduino M0 Pro’ya yeni bir program yüklenmeden önce flash belleğin silinmesi gerekir.  Sketch’in mirodenetleyiciye yüklenmesi ise buna özel ayrılmış olan bir ROM alanı üzerinden yapılır. Kart üzerindeki her iki USB portu da programlama için kullanılabilir.

Programlama Portu (DC güç jakına yakın olan USB portu) ile programlama : Programlama portu, Arduino M0 PROkartını programlamak için tavsiye edilen porttur. Bu portu kullanmak için Arduino IDE de “Arduino M0 Pro (Programming Port)” seçilmelidir.  Programlama portu ,EDBG'nin işlemcinin ilk UART portu olan RX0 ve TX0 pinleri üzerinden veri almasıyla çalışır. EDBG aynı anda işlemcinin Erase ve Reset pinlerine de bağlıdır. Programlama portunun açılp kapanması UART ile haberleşme başlamadan önce bir "hard erase" işlemi yapar ve işlemciye reset atar. Bu nedenle Yerel porttan yapılan “soft erase”  işleminden daha güvenilirdir.

Yerel (Native) Port (Reset butonuna yakın olan USB portu) ile programlama: Bu port üzerinden programlama yapabilmek için, porttan bilgisayara USB bağlantısı yapıldıktan sonra, Arduino IDE üzerinde “Arduino M0 Pro (Native USB Port)” seçilmelidir. Yerel USB portu doğrudam SAMD21 ‘e bağlıdır. Yerel USB portunun 1200 bps lik baud oranı ile açılıp kapanması “soft erase” prosedürünü tetikler ve bu işlem flash belleği silerek kartı bootloader ile yeniden başlatır. Yerel portu farklı bir baud oranı ile açıp kapatmak SAMD21 ‘i resetler.

USB Aşırı Akım Koruması

M0 Pro, bilgisayarınızın USB  portlarını kısa devre ve aşırı akımdan koruyan, sıfırlanabilen bir çoklu sigortaya sahiptir. Çoğu bilgisayar kendi iç korumalarına sahip olmasına rağmen, bu şekilde fazladan bir koruma katmanı sağlanmış olur. USB portundan 500 mA'den fazla akım akarsa, kısa devre veya aşırı yük kaldırılana kadar sigorta otomatik olarak bağlantıyı keser.

* Bu makale Robotiksistem tarafından hazırlanmıştır. Robotiksistem.com kaynak gösterilmek kaydıyla kullanılabilir.
robotik