Serwisy partnerskie:
Close icon
Serwisy partnerskie

Wprowadzenie do Arduino Due

Article Image
Kompletny poradnik, krok po kroku wprowadzający do Arduino Due.
1. Praktyczny Kurs Arduino - przewodnik po artykułach składających się na kurs 2. Czym jest Arduino? 3. Porównanie Arduino z Raspberry Pi 4. Instalacja sterownika Arduino w systemie Windows 5. Generowanie pliku hex w Arduino 6. Jak wgrać bootloader w Atmega328? 7. Rozpoczęcie pracy z oprogramowaniem Arduino 8. Rozpoczęcie programowania w Arduino 9. Programowe resetowanie Arduino 10. Wprowadzenie do Arduino UNO 11. Wprowadzenie do Arduino NANO 12. Wprowadzenie do Arduino Pro Mini 13. Wprowadzenie do Arduino Mega 2560 14. Wprowadzenie do Arduino Due 15. Wprowadzenie do Arduino Lilypad 16. Wprowadzenie do ATmega328 17. Biblioteka Arduino dla Proteusa 18. Projekt płytki drukowanej Arduino UNO dla Proteus ARES 19. Biblioteka Arduino Lilypad dla Proteusa 20. Odczyt z portu szeregowego Arduino 21. Projektowanie układów LCD z Arduino 22. Łączenie klawiatury z Arduino 23. Wartość ADC na LCD przy użyciu Arduino 24. Symulacja czujnika ultradźwiękowego w Proteusie 25. Połączenie czujnika ultradźwiękowego z Arduino 26. Wiele czujników ultradźwiękowych z Arduino 27. Czujnik temperatury 18B20 z Arduino 28. Jak używać 18B20 w Proteus ISIS? 29. Łączenie LM35 z Arduino w Proteusie 30. Współpraca siedmiosegmentowego wyświetlacza z Arduino w Proteusie 31. Łączenie czujnika PIR z Arduino 32. Współpraca czujnika płomienia z Arduino 33. Interfejs NRF24L01 z Arduino 34. NRF24L01+ i Arduino - Response Timed Out 35. Połączenie RFID RC522 z Arduino 36. Komunikacja Bluetooth z Arduino przy użyciu HC05 37. Sterowanie serwomotorem za pomocą Arduino w Proteusie 38. Projekt sterowania sygnalizacją świetlną przy użyciu Arduino 39. Przewijanie tekstu na matrycy LED 8×8 z użyciem Arduino 40. Inteligentny system oszczędzania energii 41. Komunikacja USB pomiędzy Androidem i Arduino 42. Automatyka domowa z użyciem XBee i Arduino 43. Domowy system bezpieczeństwa oparty na GSM 44. Wysyłanie SMS-ów za pomocą Arduino UNO i SIM900 45. Odbieranie SMS-ów za pomocą komend AT przy użyciu Arduino 46. Projekt rozpoznawania głosu przy użyciu EasyVR Shield 47. Rozpoczęcie pracy z programem EasyVR Commander 48. Połączenie EasyVR z Arduino UNO 49. Błąd szkolenia - niepowodzenie rozpoznawania w EasyVR 50. Połączenie XBee z komputerem 51. Wprowadzenie do modułu XBee 52. Interfejs XBee z Arduino 53. Rozpoczęcie pracy z kamerą Pixy 54. Jak zainstalować oprogramowanie kamery Pixy - PixyMon 55. Aktualizacja firmware kamery Pixy do najnowszej wersji 56. Jak wytrenować kamerę Pixy za pomocą komputera 57. Sterowanie kierunkiem obrotu silnika prądu stałego za pomocą Arduino 58. Sterowanie prędkością obrotów silnika prądu stałego za pomocą Arduino 59. Sterowanie kierunkiem obrotu silnika krokowego za pomocą Arduino 60. Sterowanie prędkością obrotów silnika krokowego za pomocą Arduino 61. Pobieranie danych z serwera internetowego za pomocą Arduino Wi-Fi 62. Wprowadzenie do Arduino YUN 63. Dostęp do serwera Linux Arduino YUN za pomocą Putty
Rozwiń cały spis treści Zwiń spis treści

Cześć ludziska! Wróciłem, aby zapewnić wam codzienną dawkę przydatnych informacji. Dziś ujawnię szczegóły na temat Wprowadzenia do Arduino Due. Jest to płytka z mikrokontrolerem oparta o 32-bitowy mikrokontroler ARM Atmel SAM3X8E. Jest on opracowany przez Arcuino.cc z zamiarem zapewnienia łatwej ścieżki dla początkujących, aby uzyskać praktyczne doświadczenie z modułem bez wcześniejszej wiedzy technicznej. Możesz po prostu podłączyć urządzenie do komputera za pomocą przewodu USB i od razu zacząć się nim bawić.

Moduły Arduino to krok naprzód w stosunku do pojedynczego mikrokontrolera. Jeśli twój projekt opiera się głównie na mikrokontrolerze, musisz dokupić zewnętrzne peryferia i połączyć je z kontrolerem, aby złożyć automatykę w twoim projekcie.

Płytki Arduino ułatwiły pracę bardziej niż kiedykolwiek wcześniej. Choć mniej więcej znane są jako mikrokontrolery, to mają nad nimi przewagę w postaci wbudowanych peryferiów i możliwości realizacji wielu funkcji na jednym układzie scalonym.

Nie jest również wymagana zewnętrzna wypalarka dla Arduino, ponieważ posiada ono wersję wbudowaną. Musisz tylko napisać i skompilować wymagany kod do oprogramowania Arduino i wypalić moduł za pomocą jednego kliknięcia na komputerze.

W tym wpisie omówię wszystko co jest związane z Arduino Due tj. jego główne cechy, rozmieszczenie pinów, opis pinów, używane kompilatory i zastosowania. Przejdźmy do szczegółów tego małego modułu i dowiedzmy się wszystkiego, co musisz wiedzieć.

Wprowadzenie do Arduino Due

Arduino Due jest płytką z mikrokontrolerem, która bazuje głównie na Atmel SAM3X8E (32-bitowy mikrokontroler ARM). Jest to duży moduł w porównaniu do Arduino Nano lub Arduino Uno i posiada większą ilość pinów i miejsca w pamięci w porównaniu do nich.

Zawiera 54 cyfrowe piny, które mogą działać na dwa sposoby: wejście lub wyjście. Spośród tych cyfrowych pinów, dwanaście może być wykorzystanych do generowania wyjść PWM.

Moduł ten zawiera wszystko co jest potrzebne do projektu automatyzacji, w tym dwanaście wejść analogowych, oraz cztery moduły szeregowe UART.

Byłem oszołomiony, kiedy dowiedziałem się, że moduł ten taktowany jest częstotliwością zegara około 84 MHz. Tak, dobrze słyszeliście. Wspaniały oscylator pomoże znacznie zwiększyć szybkości przetwarzania.

Dostępne są dwa porty USB, z których jeden jest używany jako port USB do programowania, a drugi jako port Native USB. Nie martw się, wyjaśnię ci różnicę między nimi. Po prostu podążaj za tekstem.

Większość płytek Arduino działa przy napięciu 5 V, ale ten moduł jest wyjątkiem, który działa przy napięciu 3,3 V. Piny wbudowane w układ nie są w stanie wytrzymać napięcia wyższego niż podane powyżej. Może to drastycznie wpłynąć na wydajność płytki i sprawić, że twoje piny staną się niesprawne.

Na płytce dodano JTAG, który służy głównie do testowania fizycznego połączenia między pinami na płytce.

Arduino Due może być programowane za pomocą wspólnego oprogramowania Arduino (IDE), które jest kompatybilne ze wszystkimi płytkami Arduino i może pracować na oba sposoby: online i offline.

Moduł zawiera 2 DAC (digital to analog), 2 TWI, gniazdo zasilania (można zasilać urządzenie podłączając je do komputera przez przewód USB lub używając tego gniazda zasilania), przycisk resetowania gniazda SPI (header), przycisk kasowania i przycisk resetowania. Mnóstwo funkcji, ułatwiających nasze zadanie.

Ze względu na ograniczenia napięciowe, nakładki (shields) Arduino, które działają przy 5 V nie są kompatybilne z tym modułem. Jednak nakładki dostarczane z układem Arduino R3 działają sprawnie, w tym Arduino WiFi Shield i Ethernet Shield, ponieważ pracują one przy napięciu 3,3 V.

1. Funkcje Arduino Due

Otrzymałeś krótki przegląd urządzenia. Zebrałem główne funkcje tego urządzenia w jednym miejscu.
Poniższa tabela przedstawia główne funkcje Arduino Due.
 

2. Rozkład pinów Arduino Due

Teraz masz już opanowane główne cechy tego modułu. W tym rozdziale zwrócę uwagę na rozmieszczenie pinów układu.
Poniższy rysunek przedstawia rozmieszczenie pinów w Arduino Due.

Wiem, że jest to dość przytłaczające i trudne do strawienia na pierwszy rzut oka, ale nie martw się, rozbiłem go w opisie pinów z obrazkami.

3. Opis pinów Arduino Due

Funkcja przypisana do każdego pinu pomoże ci zrozumieć przeznaczenie każdego pinu w danym projekcie, w którym może być użyty.

Poniższa tabela przedstawia opis poszczególnych pinów.

Masz jasność co do funkcji związanych z każdym pinem. Teraz podkreślę funkcje każdego pinu za pomocą obrazów, ułatwiając ci przeglądanie informacji bez większego kłopotu.

Piny cyfrowe I/O

Arduino Due posiada cztery porty o nazwach PORTA, PORTB, PORTC i PORTD. W układzie znajdują się 54 piny I/O. Piny oznaczone kolorem RÓŻOWYM na powyższym schemacie pinów są używane jako cyfrowe piny I/O.

Piny analogowe

Na płytce znajduje się dwanaście pinów analogowych. Są one częścią PORTA i PORTB i pojawiają się na płytce w następujący sposób.

Gniazda USB i gniazdo zasilania

Na płytce dostępne są dwa porty USB, z których jeden to port USB do programowania, a drugi to natywny port USB. Oba porty mogą być wykorzystane do programowania, jednak port natywny pełni również funkcję hosta USB dla podłączonych urządzeń peryferyjnych, takich jak klawiatury czy smartfony.

Na płytce znajduje się jedno gniazdo zasilające, które służy do zasilania urządzenia.

UART

Na płytce są dodane cztery kanały UART. Służą one do komunikacji szeregowej z urządzeniami zewnętrznymi, gdzie TX to Serial Transmit Pin, a RX to Serial Receive Pin. Pojawiają się one na płytce w następujący sposób.

TWI

Na płytce wbudowane są dwa moduły TWI (Two Wire Interface - Interfejs Dwuprzewodowy), znane również jako protokół I2C, służące do nawiązywania komunikacji pomiędzy urządzeniami o małej prędkości, takimi jak przetworniki ADC i DAC, a mikrokontrolerami. Jest to komunikacja dwuprzewodowa i posiada dwie linie: Serial Clock (SCL) i Serial Data (SDA). Pierwszy z nich to sygnał zegarowy, który służy do synchronizacji transferu danych pomiędzy urządzeniami, natomiast drugi służy do przechowywania żądanych danych.

Wyjście PWM

Spośród 54 pinów cyfrowych, dwanaście jest wykorzystywanych dla wyjścia PWM. Pojawiają się one na płytce w następujący sposób.

Złącze (Header) JTAG

Nagłówek JTAG jest godnym uwagi dodatkiem na płytce, którego brakuje większości płytek w Arduino Community. Jest to wspólny interfejs sprzętowy, który wyznacza ścieżkę do bezpośredniej komunikacji z zewnętrznymi układami na płytce. Został on wprowadzony przez Joint (European) Test Access Group z zamiarem testowania fizycznych połączeń między pinami na chipie. Wyposażony jest w cztery piny znane jako TCK, TMS, TDI i TDO. Złącze (header) to łączy się z płytką w następujący sposób.

Przycisk resetowania i kasowania

Na urządzeniu dodany jest jeden przycisk resetowania i jeden przycisk kasowania. Pierwszy z nich służy do resetowania kontrolera, natomiast drugi do kasowania informacji zapisanych na płytce. Pojawiają się one na płytce w następujący sposób.

Źródło zasilania

Istnieją cztery źródła zasilania wymienione jako 5 V, 3,3 V, Vin i Ground. Napięcie 3,3 V jest napięciem pracy każdego z pinów, natomiast Vin jest napięciem wejściowym o zalecanym zakresie napięć od 7 V do 12 V. Kontroler można zasilić napięciem Vin lub 5 V. Te źródła napięcia pojawiają się na płytce w następujący sposób.

4. Programowanie i komunikacja

Prawie wszystkie płytki Arduino mogą być programowane przez oprogramowanie Arduino zwane IDE. Jest łatwe w użyciu i przeciętna osoba bez wcześniejszych technicznych umiejętności może nauczyć się tego oprogramowania bez większych trudności. Jest ono łatwo dostępne, wystarczy pobrać oprogramowanie i wybrać płytkę, na której chcesz pracować. Jak wspomniałem wcześniej, do wypalenia kodu w sterowniku nie jest wymagana żadna zewnętrzna wypalarka.

Oprogramowanie Arduino doskonale współpracuje z popularnymi systemami operacyjnymi takimi jak Windows, Linux czy MAC.

Moduł ten wyposażony jest w szereg protokołów komunikacyjnych do komunikacji z urządzeniami zewnętrznymi. UART jest przydatny do nawiązania komunikacji szeregowej. Jeden moduł szeregowy wystarczy, prawda? Nie. Jest ich cztery, co daje elastyczność w nawiązywaniu komunikacji szeregowej z więcej niż jednym urządzeniem. Biblioteka szeregowa w programie służy głównie do komunikacji szeregowej pomiędzy płytką a urządzeniami zewnętrznymi.

Serial Monitor (monitor szeregowy) jest niezwykłym dodatkiem w oprogramowaniu Arduino, służącym głównie do przesyłania danych tekstowych do lub z płytki.

Piny TX i RX zawierają na każdym pinie LED, który miga podczas przesyłania danych.

Urządzenie wyposażone jest również w interfejs dwuprzewodowy, który posiada dwie linie SDA i SCL. Na płytce dostępne są dwa kanały TWI. Arduino Software Wire Libary jest używane do dostępu do magistrali TWI.

Arduino Due jest wyposażone w szeregowy interfejs peryferyjny (SPI), który odgrywa istotną rolę w komunikacji pomiędzy mikrokontrolerem a innymi urządzeniami peryferyjnymi, takimi jak rejestry przesuwne i czujniki. Do komunikacji SPI wykorzystywane są dwa piny MOSI (Master Output Slave Input) oraz MISO (Master Input Slave Output). Pierwszy z nich służy do odbierania danych, natomiast drugi pomaga w wysyłaniu danych przez mikrokontroler.

5. Różnica pomiędzy Arduino Due a Arduino Mega

Pomiędzy oboma modułami istnieje istotna różnica w zakresie napięcia pracy, miejsca w pamięć, ilości pinów i szybkości przetwarzania. Arduino Due może wykonywać funkcje z większą szybkością w porównaniu do Arduino Mega. Większe możliwości wbudowanych peryferii i więcej miejsca w pamięci stawiają Arduino Due przed Mega.

Istnieją jednak pewne ograniczenia. Arduino Due nie jest kompatybilne z urządzeniami 3,3 V, ponadto SAM3Xchip posiada skomplikowany i przytłaczający interfejs, który może przerazić osobę, która pierwszy raz używa tego modułu. Na początek, zaleca się pracę z mniejszym modułem, takim jak Arduino Uno, a gdy opanujesz jego obsługę, możesz przejść do bardziej złożonego interfejsu.

6. Zastosowania Arduino Due

Arduino Due jest trochę nieporęczne, zajmuje dużo miejsca i jest używane w szerokiej gamie aplikacji, gdzie szybkość przetwarzania jest efektem końcowym. Poniżej przedstawiamy główne zastosowania płytki.

  • Automatyka przemysłowa
  • Dom i systemy bezpieczeństwa
  • Aplikacje wirtualnej rzeczywistości
  • Aplikacje na Androida
  • Projekty oparte na GSM
  • System wbudowany

To wszystko na dzisiaj. Mam nadzieję, że zapewniłem ci wszystko, czego potrzebujesz, aby rozpocząć pracę z tym modułem. Jeśli nadal żyjesz w niepewności, możesz zwrócić się do mnie w sekcji komentarzy poniżej. Poprowadzę cię najlepiej, jak potrafię. Twoje opinie i sugestie są dla nas cennymi ziarnami, na podstawie których generujemy i kształtujemy nasze treści – więc nie przestawaj ich podsyłać.

Dziękuję za przeczytanie artykułu.

Wykaz elementów
Ilość
Symbol
Nazwa/opis/gdzie kupić

Artykuł Introduction to Arduino Due opracowano w wersji polskiej na podstawie współpracy z portalem www.theengineeringprojects.com.

1. Praktyczny Kurs Arduino - przewodnik po artykułach składających się na kurs 2. Czym jest Arduino? 3. Porównanie Arduino z Raspberry Pi 4. Instalacja sterownika Arduino w systemie Windows 5. Generowanie pliku hex w Arduino 6. Jak wgrać bootloader w Atmega328? 7. Rozpoczęcie pracy z oprogramowaniem Arduino 8. Rozpoczęcie programowania w Arduino 9. Programowe resetowanie Arduino 10. Wprowadzenie do Arduino UNO 11. Wprowadzenie do Arduino NANO 12. Wprowadzenie do Arduino Pro Mini 13. Wprowadzenie do Arduino Mega 2560 14. Wprowadzenie do Arduino Due 15. Wprowadzenie do Arduino Lilypad 16. Wprowadzenie do ATmega328 17. Biblioteka Arduino dla Proteusa 18. Projekt płytki drukowanej Arduino UNO dla Proteus ARES 19. Biblioteka Arduino Lilypad dla Proteusa 20. Odczyt z portu szeregowego Arduino 21. Projektowanie układów LCD z Arduino 22. Łączenie klawiatury z Arduino 23. Wartość ADC na LCD przy użyciu Arduino 24. Symulacja czujnika ultradźwiękowego w Proteusie 25. Połączenie czujnika ultradźwiękowego z Arduino 26. Wiele czujników ultradźwiękowych z Arduino 27. Czujnik temperatury 18B20 z Arduino 28. Jak używać 18B20 w Proteus ISIS? 29. Łączenie LM35 z Arduino w Proteusie 30. Współpraca siedmiosegmentowego wyświetlacza z Arduino w Proteusie 31. Łączenie czujnika PIR z Arduino 32. Współpraca czujnika płomienia z Arduino 33. Interfejs NRF24L01 z Arduino 34. NRF24L01+ i Arduino - Response Timed Out 35. Połączenie RFID RC522 z Arduino 36. Komunikacja Bluetooth z Arduino przy użyciu HC05 37. Sterowanie serwomotorem za pomocą Arduino w Proteusie 38. Projekt sterowania sygnalizacją świetlną przy użyciu Arduino 39. Przewijanie tekstu na matrycy LED 8×8 z użyciem Arduino 40. Inteligentny system oszczędzania energii 41. Komunikacja USB pomiędzy Androidem i Arduino 42. Automatyka domowa z użyciem XBee i Arduino 43. Domowy system bezpieczeństwa oparty na GSM 44. Wysyłanie SMS-ów za pomocą Arduino UNO i SIM900 45. Odbieranie SMS-ów za pomocą komend AT przy użyciu Arduino 46. Projekt rozpoznawania głosu przy użyciu EasyVR Shield 47. Rozpoczęcie pracy z programem EasyVR Commander 48. Połączenie EasyVR z Arduino UNO 49. Błąd szkolenia - niepowodzenie rozpoznawania w EasyVR 50. Połączenie XBee z komputerem 51. Wprowadzenie do modułu XBee 52. Interfejs XBee z Arduino 53. Rozpoczęcie pracy z kamerą Pixy 54. Jak zainstalować oprogramowanie kamery Pixy - PixyMon 55. Aktualizacja firmware kamery Pixy do najnowszej wersji 56. Jak wytrenować kamerę Pixy za pomocą komputera 57. Sterowanie kierunkiem obrotu silnika prądu stałego za pomocą Arduino 58. Sterowanie prędkością obrotów silnika prądu stałego za pomocą Arduino 59. Sterowanie kierunkiem obrotu silnika krokowego za pomocą Arduino 60. Sterowanie prędkością obrotów silnika krokowego za pomocą Arduino 61. Pobieranie danych z serwera internetowego za pomocą Arduino Wi-Fi 62. Wprowadzenie do Arduino YUN 63. Dostęp do serwera Linux Arduino YUN za pomocą Putty
Rozwiń cały spis treści Zwiń spis treści
Firma:
Tematyka materiału: Arduino Due, Atmel SAM3X8E, USB, UART, ARDUINO IDE, PIERWSZE KROKI, PORADNIK KROK PO KROKU
AUTOR
Źródło
www.theengineeringprojects.com
Udostępnij
Zobacz wszystkie quizy
Quiz weekendowy
Edukacja
1/10 Jak działa rezystor LDR?
Oceń najnowsze wydanie EdW
Wypełnij ankietę i odbierz prezent
UK Logo
Elektronika dla Wszystkich
Zapisując się na nasz newsletter możesz otrzymać GRATIS
najnowsze e-wydanie magazynu "Elektronika dla Wszystkich"