Arduino Due je ploča zasnovana na ARM kontroleru dizajnirana za elektroničke inženjere i hobiste. ARM arhitektura je vrlo utjecajna u modernoj elektronici, koristimo je svugdje poput svojih mobitela, iPod-a, računala itd. Ako netko želi dizajnirati industrijske sustave, to mora na ARM kontrolerima. ARM kontroleri su vrlo važni zbog njihove okretnosti.
Već smo obradili osnove Arduino Due-a u uvodu u Arduino Due. Sada ćemo u ovom vodiču prilagoditi svjetlinu LED diode pomoću PWM signala koji generira DUE. DUE PWM (Pulse Width Modulation) signal daje promjenjivi napon u odnosu na konstantno napajanje.
Modulacija širine impulsa:

Na gornjoj slici, ako je prekidač neprekidno zatvoren tijekom određenog vremenskog razdoblja, LED će tijekom tog vremena neprekidno biti "UKLJUČEN". Ako je prekidač zatvoren pola sekunde i otvoren sljedećih pola sekunde, tada će LED svijetliti samo u prvoj polovici sekunde. Sada se omjer za koji LED svijetli tijekom ukupnog vremena naziva radni ciklus i može se izračunati na sljedeći način:
Radni ciklus = Vrijeme UKLJUČIVANJA / (Vrijeme UKLJUČIVANJA + Vrijeme isključivanja)
Radni ciklus = (0,5 / (0,5 + 0,5)) = 50%
Tako će prosječni izlazni napon biti 50% napona baterije.
To je slučaj jedne sekunde i možemo vidjeti kako se LED gasi pola sekunde, a LED u drugoj polovici sekunde. Ako se učestalost vremena uključivanja i isključivanja povećala s '1 u sekundi' na '50 u sekundi '. Ljudsko oko ne može zabilježiti ovu frekvenciju UKLJUČIVANJA i ISKLJUČENJA. Za normalno oko LED će se vidjeti kao da svijetli s pola svjetline. Tako se daljnjim smanjenjem vremena UKLJ. LED čini puno svjetlijim.
Programirat ćemo DUE za dobivanje PWM-a i spojiti LED da pokažemo kako radi.
U DUE postoji 12 PWM kanala (pin 2 do Pin 13) i možemo koristiti bilo koji ili sve njih. U ovom ćemo se slučaju pridržavati jednog PWM signala na PIN2.

Komponente:
- Arduino zbog
- Napajanje (5v)
- LED
- Gumbi (dva komada),
- Otpornik 1KΩ (dva dijela), otpor 220Ω
I Arduino IDE - Arduino Nightly Software (https://www.arduino.cc/en/Main/Software).
Kružni dijagram i radno objašnjenje:

Krug je spojen na pločici prema shemi krugova. Ipak treba obratiti pažnju tijekom spajanja LED stezaljki. Iako gumbi mogu pokazati odskočni efekt, ali u ovom slučaju to ne uzrokuje značajne pogreške, pa se ovaj put ne moramo brinuti.
Dobivanje PWM signala iz DUE-a je jednostavno; Arduino IDE nudi korisne značajke koje ublažavaju poteškoće programera. Ako se odlučimo za programiranje golih čipova, trebamo postaviti ATMEGA kontroler za PWM signal, što nije lako; moramo definirati mnoge registre i postavke za točan signal, međutim u Arduinu se ne moramo baviti svim tim stvarima. Već smo pokrili modulaciju širine impulsa s ATmega32, s Arduino Uno i s 555 IC tajmera.
Prema zadanim postavkama sve datoteke zaglavlja i registri su unaprijed definirani u Arduino IDE-u, jednostavno ih trebamo pozvati i to je to, imat ćemo PWM izlaz na odgovarajućem pinu. Također moramo pozvati određene naredbe da bismo dobili PWM signal, o njima se govori u nastavku:
pinMode (2, OUTPUT) analogWrite (pin, vrijednost)
Prvo moramo odabrati izlazni kanal PWM-a ili odabrati pin između 12 pinova DUE, nakon toga taj pin moramo postaviti kao izlaz. Budući da koristimo PIN2 kao izlaz, postavit ćemo ga kao IZLAZ kao što je prikazano u prvom retku.
Dalje moramo omogućiti PWM značajku DUE pozivanjem funkcije " analogWrite (pin, vrijednost) ". Ovdje 'pin' predstavlja broj pin-a za koji nam je potreban PWM izlaz. Mi to stavljamo kao '2', tako da na PIN2 dobivamo PWM izlaz. "Vrijednost" je vrijednost UKLJUČENJA, ona varira između 0 (uvijek isključeno) i 255 (uvijek uključeno). U ovaj prostor možemo upisati odgovarajuću vrijednost potrebne svjetline LED-a.
Priključili smo nekoliko gumba na DUE ploču za promjenu ove vrijednosti. Jedan gumb služi za povećanje vrijednosti svjetline, a drugi za smanjenje vrijednosti svjetline. Jednom kad je programiranje završeno, možemo podesiti svjetlinu pritiskom na ove tipke.
