Arduino Due
Arduino Due, 32-bit ARM çekirdekli mikrodenetleyiciye dayanan ilk Arduino kartıdır. 54 dijital giriş / çıkış pini, 12 analog giriş ile, güçlü büyük ölçekli Arduino projeleri için mükemmel bir karttır.
Arduino Due , Atmel SAM3X8E ARM Cortex-M3 CPU’yu temel alan bir mikro denetleyici karttır. 32-bit ARM çekirdekli mikrodenetleyiciye dayanan ilk Arduino kartıdır. 54 dijital giriş / çıkış pini (12 tanesi PWM çıkışı olarak kullanılabilir), 12 analog giriş, 4 adet UART (donanım seri portu), 84 MHz saat, USB OTG özellikli bir bağlantı, 2 DAC (dijitalden analoga) , 2 TWI, bir güç girişi, bir SPI başlığı, bir JTAG başlığı, bir sıfırlama düğmesi ve bir silme düğmesi.
Uyarı: Arduino kartlarının çoğunun aksine Arduino Due kartı 3,3V’de çalışır. I / O pinlerinin tolere edebileceği maksimum voltaj 3.3V’dir. Herhangi bir I / O pinine 3,3V’den daha yüksek voltaj uygulanması, panele zarar verebilir.
Pano mikrodenetleyiciyi desteklemek için gereken her şeyi içerir; Başlamak için bir mikro USB kablosuyla bir bilgisayara bağlayın veya AC-DC adaptörü veya pille çalıştırın. Due, 3.3V’de çalışan ve Arduino pinyonuyla uyumlu olan tüm Arduino kalkanlarıyla uyumludur.
Due, 1.0 pinout’u takip eder:
- TWI : AREF pimine yakın olan SDA ve SCL pimleri.
- IOREF : Tahta tarafından sağlanan voltaja uyum sağlamak için uygun konfigürasyona sahip eklenmiş bir kalkan sağlar. Bu, 5V’da çalışan Due ve AVR tabanlı anakartlar gibi bir 3.3V kart ile ekran uyumluluğunu sağlar.
- Bağlantısız bir pim, gelecekteki kullanım için ayrılmıştır.
Teknik Özellikler
Mikrodenetleyici | AT91SAM3X8E |
Çalışma gerilimi | 3.3V |
Giriş Voltajı (önerilen) | 7-12V |
Giriş Voltajı (sınırlar) | 6-16V |
Dijital I / O Pimleri | 54 (bunların 12 tanesi PWM çıkışı sağlar) |
Analog Giriş Pimleri | 12 |
Analog Çıkış Pimleri | 2 (DAC) |
Tüm G/Ç hatlarında toplam DC Çıkış Akımı | 130 mA |
3.3V Pin için DC Akım | 800 mA |
5V Pin için DC Akım | 800 mA |
Flash Bellek | Kullanıcı uygulamaları için 512 KB kullanılabilir |
SRAM | 96 KB (iki banka: 64KB ve 32KB) |
Saat hızı | 84 MHz |
Uzunluk | 101,52 mm |
Genişlik | 53,3 mm |
Ağırlık | 36 g |
Güç
Arduino Due, USB konektörü veya harici bir güç kaynağı ile çalıştırılabilir. Güç kaynağı otomatik olarak seçilir. Harici (USB olmayan) güç, AC-DC adaptörü (duvar siğili) veya bataryadan gelebilir. Adaptör, kartın güç jakına 2.1 mm’lik bir orta-pozitif fiş takılarak bağlanabilir. POWER konektörünün Gnd ve Vin pin başlıklarına bir bataryadan eklenebilir.
Kart 6 ila 20 voltluk harici bir kaynakta çalışabilir. Bununla birlikte, 7V’dan daha düşük bir güçle besleniyorsa, 5V pin beş volttan daha az besleyebilir ve pano dengesiz olabilir. 12V’tan fazla kullanılıyorsa, voltaj regülatörü aşırı ısınabilir ve panele zarar verebilir. Tavsiye edilen aralık 7 ila 12 volttur.
Güç pimleri aşağıdaki gibidir:
- Vin. Harici bir güç kaynağı kullanırken (USB bağlantısından veya diğer düzenlenmiş güç kaynağından 5 volta karşılık) Arduino kartına giriş voltajı. Bu pim üzerinden voltaj besleyebilir veya gç kablosu ile voltaj besliyorsanız, bu pime erişebilirsiniz.
- 5V .Bu pim, panodaki regülatörden regüle edilmiş 5V’luk çıkışlar verir. Kart, ya DC güç jakından (7 – 12V), USB konektöründen (5V) ya da kartın VIN pininden (7-12V) güçle beslenebilir. 5V veya 3,3 V pimlerle voltaj beslemesi regülatörden geçer ve kartınıza zarar verebilir. Tavsiye etmiyoruz.
- 3V3 . Dahili regülatör tarafından üretilen 3,3 voltluk bir besleme. Maksimum akım çekişi 800 mA’dır. Bu regülatör ayrıca SAM3X mikro kontrol cihazına güç kaynağı sağlar.
- GND . Yer pimleri.
- IOREF . Arduino kartındaki bu pin, mikro denetleyicinin çalıştığı voltaj referansını sağlar. Düzgün olarak yapılandırılmış bir koruyucu, IOREF pin voltajını okuyabilir ve 5V veya 3,3V ile çalışmak için uygun güç kaynağını seçebilir veya çıkışlardaki voltaj çeviricilerini etkinleştirebilir.
Bellek
SAM3X kod depolamak için 512 KB (256 KB’lık 2 blok) flash belleğe sahiptir. Önyükleyici, fabrikada Atmel’den önceden yakılır ve özel bir ROM belleğinde saklanır. Mevcut SRAM, iki bitişik 64 KB ve 32 KB’lik bankada 96 KB’dir. Tüm mevcut hafızalara (Flash, RAM ve ROM) doğrudan bir adresleme alanı olarak erişilebilir.
SAM3X’in Flash belleği, dahili silme tuşuyla silinebilir. Bu, şu anda yüklü olan çizimi MCU’dan kaldıracaktır. Silmek için, kart çalışır durumdayken birkaç saniye boyunca Silme tuşunu basılı tutun.
Giriş ve çıkış
- Dijital I / O: 0 ila 53 arası pimler
- Due üzerindeki 54 dijital pinlerin her biri pinMode() , digitalWrite() ve digitalRead() fonksiyonlarını kullanarak giriş veya çıkış olarak kullanılabilir. 3,3 voltta çalışırlar. Her bir pim, pime bağlı olarak 3 mA veya 15 mA’lik bir akım sağlayabilir (kaynak) veya pime bağlı olarak 6 mA veya 9 mA’lik bir akımı alabilir. Ayrıca, 100 KOhm’luk bir dahili çekme direncine (varsayılan olarak çıkarılmış) sahiptirler. Ek olarak, bazı pimler özel işlevlere sahiptir:
- Seri: 0 (RX) ve 1 (TX)
- Seri 1: 19 (RX) ve 18 (TX)
- Seri 2: 17 (RX) ve 16 (TX)
- Seri 3: 15 (RX) ve 14 (TX) (RX) ve iletim (TX) TTL seri verilerini almak için kullanılır (3,3 V seviyesi ile). Pim 0 ve 1, ATmega16U2 USB-TTL Seri çipinin ilgili pinlerine bağlanır.
- PWM: 2 ila 13 numaralı pimler AnalogWrite () işleviyle 8 bit PWM çıkışı sağlayın. PWM çözünürlüğü, analogWriteResolution () işleviyle değiştirilebilir.
- SPI: SPI üstbilgisi (diğer Arduino kartlarındaki ICSP üstbilgisi) Bu pimler SPI kitaplığını SPI kitaplığını kullanarak destekler. SPI pimleri, Uno, Leonardo ve Mega2560 ile fiziksel olarak uyumlu olan merkezi 6 pimli başlık üzerine ayrılmıştır. SPI başlığı, yalnızca diğer SPI cihazlarıyla iletişim kurmak için kullanılabilir, SAM3X’in In-Circuit-Serial-Programlama tekniği ile programlanması için kullanılamaz. Due’in SPI’sı, Due için Genişletilmiş SPI yöntemleri ile birlikte kullanılabilen gelişmiş özelliklere de sahiptir .
- CAN: CANRX ve CANTX Bu pinler CAN iletişim protokolünü destekler ancak henüz Arduino API’ları tarafından desteklenmemektedir.
- “L” LED’i: 13 Dijital pim 13’e bağlanmış bir yerleşik LED vardır. Pim YÜKSEK olduğunda, pim LOW olduğunda LED yanar, söner. LED’i de kısmak mümkündür, çünkü dijital pim 13 aynı zamanda bir PWM çıkışıdır.
- I2C/TWI 1: 20 (SDA) ve 21 (SCL)
- I2C/TWI 2: SDA1 ve SCL1. Tel kütüphanesi kullanılarak TWI iletişimini destekleyin. SDA1 ve SCL1, Tel kütüphanesi tarafından sağlanan Wire1 sınıfı kullanılarak kontrol edilebilir. SDA ve SCL dahili pullup dirençlerine sahipken, SDA1 ve SCL1’de bulunmamıştır. Tel1’in kullanılması için SDA1 ve SCL1 hatlarında iki pullup direnci eklenmesi gerekir.
- Analog Girişler: A0 – A11 arası pimler Due, 12 adete kadar çözünürlük (yani 4096 farklı değer) sağlayabilen 12 analog girişe sahiptir. Varsayılan olarak, diğer Arduino kartları ile uyumluluk için okumaların çözünürlüğü 10 bit olarak ayarlanır. ADC’nin çözünürlüğünü analogReadResolution () ile değiştirmek mümkündür. Due’ın analog giriş pimleri, yerden en fazla 3,3V değerine kadar ölçüm yapar. Due’s pinlerinde 3,3V’den fazla uygulama SAM3X çipine zarar verecektir. Due’de analogReference () işlevi yok sayılır.
AREF pimi, bir direnç köprüsü üzerinden SAM3X analog referans pimine bağlanır. AREF pimini kullanmak için, direnç BR1 PCB’den sökülmelidir.
- DAC1 ve DAC2 Bu pimler analogWrite () işleviyle 12 bit çözünürlükte (4096 seviye) gerçek analog çıkışlar sağlar. Bu pimler Ses kütüphanesini kullanarak bir ses çıkışı oluşturmak için kullanılabilir .
Lütfen DAC çıkış aralığının aslında sadece 0,55 V ila 2,75 V olduğunu unutmayın.
Karratki diğer pinler:
- Aref Analog girişler için referans voltajı. AnalogReference () ile kullanılır .
- Reset Mikrodenetleyiciyi sıfırlamak için bu çizgiyi DÜŞÜK duruma getirin. Tipik olarak tahtadaki bloğu engelleyen ekranlara bir sıfırlama düğmesi eklemek için kullanılır.
İletişim
Arduino Due bir bilgisayar, başka bir Arduino veya diğer mikrodenetleyici ve telefon, tablet, kamera vb. SAM3X bir donanım UART ve TTL (3.3V) seri haberleşme için üç donanım USART sağlar.
Programlama portu, bağlı bir bilgisayardaki yazılıma sanal bir COM portu sağlayan bir ATmega16U2’ye bağlanmıştır (Cihazı tanımak için, Windows makinelerinin bir .inf dosyasına ihtiyacı olacaktır, ancak OSX ve Linux makineleri, kartı otomatik olarak bir COM portu olarak tanıyacaktır. ). 16U2 ayrıca SAM3X donanım UART’a bağlanır. RX0 ve TX0 pinleri üzerindeki seri, ATmega16U2 mikrodenetleyici aracılığıyla kartın programlanması için Seri-USB haberleşmesi sağlar. Arduino yazılımı, basit metin verilerinin panoya gönderilmesini sağlayan bir seri monitör içerir. Veriler ATmega16U2 yongası ve USB bağlantısı üzerinden bilgisayara aktarılırken (ancak 0 ve 1 pinlerinde seri haberleşme için değil) kart üzerindeki RX ve TX LED’leri yanıp söner.
Yerel USB bağlantı noktası, SAM3X’e bağlanır. USB üzerinden seri (CDC) haberleşmesine izin verir. Bu Seri Monitöre veya bilgisayarınızdaki diğer uygulamalara seri bağlantı sağlar. Ayrıca, bağlı bir bilgisayara bir USB fare veya klavye taklit etmesini sağlar. Bu özellikleri kullanmak için, Fare ve Klavye kitaplığı referans sayfalarına bakın .
Yerli USB bağlantı noktası, fare, klavye ve akıllı telefonlar gibi bağlı çevre birimleri için bir USB ana bilgisayarı olarak da kullanılabilir. Bu özellikleri kullanmak için USBHost referans sayfalarına bakın .
SAM3X ayrıca TWI ve SPI iletişimini destekler. Arduino yazılımı TWI veriyolunun kullanımını basitleştirmek için bir Tel kütüphanesi içerir; Ayrıntılar için belgelere bakın. SPI iletişimi için SPI kütüphanesini kullanın .
Programlama
Due, Arduino Arduino Yazılımı (IDE) ile programlanabilir. SAM3X’e skeçler yüklemek, diğer Arduino kartlarında bulunan AVR mikrodenetleyicilerinden farklıdır, çünkü flaş belleğin yeniden programlanmadan önce silinmesi gerekir. Çipe yükleme, yalnızca çipin flash belleği boşken çalıştırılan SAM3X üzerindeki ROM tarafından yönetilir.
USB portlarından herhangi biri, çipin silinmesiyle ilgili olarak Programlama portunun kullanılması tavsiye edilmekle birlikte, kartın programlanması için kullanılabilir:
- Programlama portu: Bu portu kullanmak için Arduino IDE’de kurulu olarak “Arduino Due (ProgrammingPort)” seçeneğini seçin. Due’ın programlama portunu (DC güç jakına en yakın olan) bilgisayarınıza bağlayın. Programlama portu, 16U2’yi, SAM3X’in ilk UART’sine (RX0 ve TX0) bağlı bir USB-seri çip olarak kullanır. 16U2, SAM3X’in Sıfırlama ve Silme pimlerine bağlı iki pime sahiptir. 1200bps’de bağlanan Programlama portunun açılması ve kapatılması, SAM3X çipinin “sert silme” prosedürünü tetikleyerek, UART ile iletişim kurmadan önce, SAM3X üzerindeki Silme ve Sıfırlama pimlerini etkinleştirir. Bu, Due’i programlamak için önerilen porttur. Yerel bağlantı noktasında oluşan “yumuşak silme” den daha güvenilirdir ve ana MCU düştüğünde bile çalışmalıdır.
- Yerel bağlantı noktası(Native): Bu bağlantı noktasını kullanmak için Arduino IDE’de kurulu olarak “Arduino Due (NativeUSBPort)” seçeneğini seçin. Yerel USB bağlantı noktası doğrudan SAM3X’e bağlanır. Due’in Yerel USB bağlantı noktasını (sıfırlama düğmesine en yakın olan) bilgisayarınıza bağlayın. Yerel bağlantı noktasının 1200bps hızında açılması ve kapatılması ‘yumuşak silme’ prosedürünü tetikler: flaş bellek silinir ve kart önyükleyici ile yeniden başlatılır. Eğer MCU bir sebepten dolayı çökerse, bu prosedür tamamen SAM3X’teki yazılımda olduğu için yumuşak silme prosedürünün işe yaramayacağı muhtemeldir. Yerel bağlantı noktasını farklı bir baud hızında açmak ve kapatmak SAM3X ürününü sıfırlamayacaktır.
Yükleme için avrdude kullanan diğer Arduino kurullarından farklı olarak, Due patronac dayanır. ATmega16U2 firmware kaynak kodu Arduino deposunda mevcuttur . ISS başlığını harici bir programlayıcı ile kullanabilirsiniz (DFU önyükleyicisinin üzerine yazarak). Daha fazla bilgi için bu kullanıcı destekli eğiticiye bakın.
USB Aşırı Akım Koruması
Arduino Due, bilgisayarınızın USB bağlantı noktalarını şortlardan ve aşırı akımlardan koruyan, sıfırlanabilir bir çok işlevli sigortaya sahiptir. Çoğu bilgisayar kendi iç korumasını sağlasa da, sigorta ekstra bir koruma katmanı sağlar. USB portuna 500 mA’dan daha fazla uygulanırsa, sigorta kısa veya aşırı yük kaldırılana kadar otomatik olarak bağlantıyı kesecektir.
Fiziksel Özellikler ve Kalkan Uyumluluğu
Arduino Due PCB’nin maksimum uzunluğu ve genişliği sırasıyla 4 ve 2.1 inç, USB bağlaçları ve önceki boyutun ötesine uzanan güç jakı. Üç vida deliği, kartın bir yüzeye veya kasaya bağlanmasına izin verir. 7 ve 8 numaralı dijital pimler arasındaki mesafenin, diğer pinlerin 100 mil aralığının bir katı değil, 160 mil (0.16 “) olduğunu unutmayın.
Arduino Due, Uno, Diecimila veya Duemilanove için tasarlanan çoğu kalkanla uyumlu olacak şekilde tasarlanmıştır. 0 ila 13 (ve bitişik AREF ve GND pinleri) dijital pinleri, 0 ila 5 analog girişleri, güç başlığı ve “ICSP” (SPI) başlığının tümü eşdeğer konumlardadır. Ayrıca ana UART (seri port) aynı pimde (0 ve 1) bulunur. I2C’nin, Duemilanove / Diecimila (analog girişler 4 ve 5) olarak Due (20 ve 21) üzerindeki aynı pinlerin üzerinde bulunmadığını unutmayın .
Kaynak:arduino.cc