Arduino Due je plošča, ki temelji na krmilniku ARM in je namenjena elektronskim inženirjem in ljubiteljem. ARM arhitektura je zelo vplivna na sodobno elektroniko, uporabljamo jih povsod, kot so mobiteli, iPod-i, računalniki itd. Če nekdo želi oblikovati industrijske sisteme, mora to na krmilnikih ARM. Krmilniki ARM so zaradi svoje okretnosti zelo pomembni.
Osnove Arduino Due smo že opisali v uvodu v Arduino Due. Zdaj bomo v tej vadnici prilagodili svetlost LED z uporabo PWM signala, ki ga generira DUE. Signal DUE PWM (Pulse Width Modulation) zagotavlja spremenljivo napetost glede na konstantno napajanje.
Modulacija širine impulza:
Na zgornji sliki, če je stikalo v določenem časovnem obdobju neprekinjeno zaprto, bo LED v tem času neprekinjeno svetila. Če je stikalo za polovico sekunde zaprto in odprto za naslednjo pol sekunde, bo lučka svetila le v prvi polovici sekunde. Zdaj se razmerje, za katerega LED sveti v celotnem času, imenuje delovni cikel in se lahko izračuna na naslednji način:
Delovni cikel = čas vklopa / (čas vklopa + čas izklopa)
Delovni cikel = (0,5 / (0,5 + 0,5)) = 50%
Torej bo povprečna izhodna napetost 50% napetosti akumulatorja.
To velja eno sekundo in vidimo, da je LED pol sekunde ugasnil, druga polovica sekunde pa sveti. Če se je pogostost vklopov in izklopov povečala z "1 na sekundo" na "50 na sekundo". Človeško oko ne more zajeti te frekvence vklopa in izklopa. Za normalno oko bo videti LED, ki sveti s polovico svetlosti. Tako se z nadaljnjim skrajšanjem časa vklopa LED zdi veliko svetlejši.
Programirali bomo DUE za pridobivanje PWM in priključili LED, da prikažemo njegovo delovanje.
V DUE je 12 kanalov PWM (od 2 do 13) in lahko uporabimo katerega koli ali vse. V tem primeru se bomo držali enega signala PWM na PIN2.
Sestavni deli:
- Arduino zaradi
- Napajanje (5v)
- LED
- Gumbi (dva kosa),
- Upor 1KΩ (dva kosa), upor 220Ω
In Arduino IDE - Arduino Nightly Software (https://www.arduino.cc/en/Main/Software).
Shema vezja in delovna razlaga:
Vezje je povezano na plošči v skladu s shemo vezja. Vendar je treba biti pozoren med priklopom LED sponk. Čeprav gumbi lahko kažejo odskočni učinek, vendar v tem primeru ne povzroča večjih napak, zato nam tokrat ni treba skrbeti.
Dobiti signal PWM iz DUE je enostavno; Arduino IDE ponuja uporabne funkcije, ki programerju olajšajo težave. Če se odločimo za programiranje golih čipov, moramo nastaviti krmilnik ATMEGA za signal PWM, kar ni enostavno; za natančen signal moramo definirati veliko registrov in nastavitev, vendar se v Arduinu ne moramo ukvarjati z vsemi temi stvarmi. Pulzno modulacijo smo že pokrili z ATmega32, z Arduino Uno in s 555 IC timerjem.
Arduino IDE privzeto določi vse datoteke glave in registre, preprosto jih moramo poklicati in to je to, na ustreznem zatiču bomo imeli izhod PWM. Prav tako moramo poklicati določene ukaze, da dobimo signal PWM, ti so obravnavani spodaj:
pinMode (2, OUTPUT) analogWrite (pin, vrednost)
Najprej moramo izbrati izhodni kanal PWM ali izbrati pin med 12 nožicami DUE, nato pa moramo ta pin nastaviti kot izhod. Ker za izhod uporabljamo PIN2, ga nastavimo kot IZHOD, kot je prikazano v prvi vrstici.
Nato moramo omogočiti funkcijo PWM DUE s klicanjem funkcije » analogWrite (pin, vrednost) «. Tukaj 'pin' predstavlja številko pina, kjer potrebujemo izhod PWM. Postavili smo ga kot "2", zato na PIN2 dobimo PWM izhod. »Vrednost« je vrednost vklopa, ki se giblje med 0 (vedno izklopljeno) in 255 (vedno vklopljeno). V ta prostor lahko zapišemo ustrezno vrednost za zahtevano svetlost LED.
Na ploščo DUE smo prilepili nekaj gumbov za spreminjanje te vrednosti. En gumb je za povečanje vrednosti svetlosti, drugi pa za zmanjšanje vrednosti svetlosti. Ko končate s programiranjem, lahko s pritiskom na te gumbe prilagodimo svetlost.