Arduino M0 Pro - 32 bit Cortex M0 Arduino - Debug Arayüzlü hakkında
Arduino M0 Pro ile sahip olacağınız ARM Tabanlı İşlemci potansiyeliyle nesnelerin interneti (IoT: Internet of Things), giyilebilir teknolojiler, yüksek teknoloji otomasyon ve sınırı hayal gücünüz olan yeni fikirleriniz ile maker dünyasına adım atabilirsiniz.
Arduino M0 Pro, Arduino UNO platformunun basit ve daha güçlü bir temsilcisidir. Bu kart, 32-bit ARM Cortex® M0 mimarisine sahip, Atmel'in SAMD212 MCU işlemcisi ile güçlendirilmişti r. M0 kartı ile Arduino ailesi, yüksek işlem gücüne sahip yeni bir üyeye sahip olmuştur.
Atmel’in güçlü çekirdeğine sahip bu kart, esneklik sağlayarak size projelerinizin kapsamını artıracak yeni fikirler verecektir. Ayrıca 32-bit uygulama geliştirme öğrenmeniz için M0 Pro en ideal aracınız olacaktır.
AtmelEmbedded Debugger (EDBG) sayesinde karta ek bir donanım gerekmeden size tam işlevli bir hata ayıklama arayüzü (debugging) sağlanmaktadır. Ayrıca EDBG ek olarak programlama ve bootloader işlevi sağlayan sanal COM portu işlevi de görmektedir.
Güç:
Arduino M0 Pro, kart üzerindeki micro-USB konektör veya harici olarak orta kısmı + olan 6 - 15 V arasında bir DC adaptör ile beslenebilir. Bu şekilde bağlantı yapıldığında adaptörün + ve – bağlantıları, kart üzerindeki Vin ve GND pinleri ile bağlanmış olur.
Kart üzerindeki güç pinleri şunlardır:
VIN: Harici adaptör kullanıldığı durumda adaptörün voltajı bu pin üzerindedir. Bu pine uygulanan voltaj regülatörler ile 3.3V ve 5V a çevrilir. 6V-20V arasında voltajla çalışabilmektedir. Uygulanacak voltaj için önerilen değerler 7V-12V arasındadır.
5V: Kart 3.3V seviyesinde çalışsa da bu pinden 5V çıkış alınabilmektedir. En fazla 1A akım verebilir.
3.3V: Kart üzerinde bulunan 3.3V regülatör çıkışına bağlıdır. En fazla 1A akım verebilir.
GND: Toprak pinleridir.
IOREF: Giriş/çıkış pinlerinin referans voltajıdır. Maksimum 3.3V olabilir.
Hafıza:
ATSAMD21G18 mikrodenetleyici 256KB boyutunda flash program belleğine sahiptir (4KB kadarlık kısmı bootloader için kullanılmaktadır ). Bootloader, Atmel tarafından fabrika çıkışı mikrodenetleyicinin ROM belleğine yazılı olarak gelmektedir. Bootloader NVM sigortası tarafından korunmaktadır. ATSAMD21G18, 32KB SRAM belleğe sahiptir.
Giriş/Çıkış:
Arduino M0 Pro üzerinde bulunan 14 dijital giriş/çıkış pininin her biri pinMode(), digitalWrite() ve digitalRead() fonksiyonları kullanılarak giriş veya çıkış olarak kullanılabilmekt edir. Pinler 3.3V lojik seviyesinde çalışmaktadır. Her bir pinden en fazla 7 mA akım çekilebilir. Her bir pine ait 20-60 kΩ değerinde pull-up direnci bulunmaktadır. Ayrıca bazı pinler özel görevlere atanmıştır:
Seri Haberleşme (UART): 0 (RX) ve 1 (TX) numaralı pinler, TTL lojik seviyesinde seri haberleşme için kullanılmaktadır . Arduino M0 Pro’da Serial komutları USB üzerinden sanal COM portu haberleşmesi için kullanılmaktadır . Kart üzerindeki 0 (RX) ve 1 (TX) numaralı pinler kullanılarak haberleşme yapılacaksa Serial1 komutları kullanılmalıdır.
TWI (I2C): 2 (SDA) ve 3 (SCL) numaralı pinleri kullanmaktadır. Two-Wire Interface haberleşmesi için Wire kütüphanesi kullanılabilir.
PWM: 2’den 13’e kadar numaralı pinler analogWrite() komutu kullanılarak 8-bit PWM çıkışı olarak kullanılabilir. PWM çıkış çözünürlüğü analogWriteResol ution() komutu ile değiştirilebilir . NOT: 4 ile 10 numaralı pinler ve 5 ile 12 numaralı pinler aynı anda PWM çıkışı olarak kullanılamazlar.
SPI: ICSP bağlantısında bulunmaktadır. SPI kütüphanesi kullanılarak haberleşme yapılabilir. Dikkat edilmesi gereken husus iseArduino UNO kartındaki gibi bu kartta SPI pinleri, dijital giriş çıkışlar ile aynı bağlantıyı taşımamaktadır. Sadece ICSP konektöründe SPI bağlantısı mevcuttur. Bu demek oluyor ki eğer SPI iletişime sahip bir shield’ınız var ise ICSP konektörü bulunmadığı takdirde bu kart ile kullanamayacaksı nız.
LED: Kart üzerinde 13 numaralı pine bağlı bir LED bulunmaktadır. 13 numaralı pin HIGH olarak çıkış verildiğinde yanar, LOW olarak çıkış verildiğinde söner.
Analog Girişler: Arduino M0 Pro üzerinde A0’dan A5’e kadar numaralandırılmı ş 6 adet analog giriş mevuttur. Arduino UNO kartıyla aynı konumda yer almaktadır. Her bir analog giriş 12-bit çözünürlüğe sahiptir (okunan değer 0 ile 4096 arasında değişir). Varsayılan olarak bu pinler toprak hattı ile 3.3V aralığında çalışır. AREF pini ve analogReference( ) fonksiyonu kullanılarak giriş aralığı değiştirilebilir .
DAC (Digital-to-Anal og Converter): A0 pini anaogWrite() fonksiyonu kullanılarak gerçek 10-bitlik analog çıkış olarak kullanılabilir. Bu pin Audio kütüphanesi kullanılarak ses çıkışı olarak kullanılabilir.
Reset: Bu pine LOW sinyali verilerek mikrodenetleyicinin resetlenmesi sağlanabilir. Bu pin kart üzerindeki reset butonuna bağlıdır. Genellikle shield kullanımında altta kalan reset butonunu shield üzerine taşımak için kullanılır.
Haberleşme:
Arduino M0 Pro; bilgisayar, başka bir Arduino veya mikrodenetleyici veya tablet, telefon, kamera gibi çeşitli cihazlarla haberleşmeye yarayan çeşitli arabirimlere sahiptir. Kartta seri haberleşme için 1 adet UART ve 3 adet 3.3V lojik seviyesinde çalışan USART bulunmaktadır.
Programlama Portu, bilgisayar tarafından sanal COM portu olarak tanınmayı sağlayan EDBG’ye bağlıdır. Bu portun bilgisayar tarafından tanınması için Windows sistemlerde sürücü yüklemek gereklidir. Mac ve Linux bilgisayarlarda ise otomatik olarak tanınmaktadır. EDBG aynı zamanda SAMD21’in donanımsal UART’ına bağlıdır. RX0 ve TX0 pinleri seriden USB’ye haberleşme sağlayarak ATSAMD21G18 mikrodenetleyicinin bilgisayar tarafından programlanabilme sini sağlar. Arduino yazılımı, seri portu metin tabanlı okuma/yazma işlevine sahip bir seri monitöre sahiptir. Haberleşme sırasında kart üzerindeki TX ve RX ledleri yanıp söner.
Native Port, SAMD21’e bağlıdır. USB üzerinden seri haberleşme sağlar. Bu sayede bilgisayarınızda ki seri monitör ya da diğer uygulamalarla haberleşme yapabilirsiniz. Aynı zamanda bu port üzerinden bağlantı yapıldığında kart kendisini bilgisayara USB klavye veya fare olarak tanıtabilir. Ayrıca Native Port üzerinden doğrudan karta klavye, fare veya akıllı telefon gibi cihazlarınızı bağlayabilirsini z.
SAMD21, aynı zamanda TWI ve SPI haberleşme protokollerini de destekler.
Programlama:
Arduino M0 Pro, Arduino IDE kullanılarak programlanabilir . AVR mikrodenetleyicilerden farklı olarak, SAMD21 yeni program yüklenmeden önce flash belleğinin silinmesine ihtiyaç duyar. Program yükleme işlemini SAMD21’in ROM belleğindeki özel bir alan kontrol eder.
Her iki USB portu da bilgisayar ile kartı programlamak için kullanılabilir.
Programlama Portu: Bu portu kullanmak için Arduino yazılımından kart tipi olarak "Arduino M0 Pro (Programming Port)" seçilmelidir. Bu port kullanılarak programlama yapıldığında SAMD21 çipine "hard erase” yapılmış olur. Bu yöntem, Native Port kullanılarak yapılan "soft erase”den daha sağlıklı sonuç vermektedir. Tavsiye edilen programlama portu bu porttur. "Hard erase” yapılarak mikrodenetleyici kilitlendiğinde dahi programlama ve silme işlemi yapılabilir.
Native Port :Bu port kullanılarak programlama yapmak için Arduino yazılımından kart tipi olarak "Arduino M0 Pro (Native USB Port)" seçilmelidir. Bu port ile programlama yapıldığında "soft erase” işlemi yapılır ve mikrodenetleyici resetlenerek bootloader ile tekrar çalışır.
Arduino M0 Pro - 32 bit Cortex M0 - Genel Özellikler
Yeni nesil 32-bit Arduino board
32-bit ARM Cortex® M0 çekirdekli Atmel SAMD212 MCU işlemci
3.3V lojik voltaj seviyesi
Çift USB bağlantısı: Programlama Portu ve Native Port
20 genel amaçlı I/O pini
Arduino M0 Pro - 32 bit Cortex M0 - Teknik Özellikler