Előfordulhat olyan feladat, amikor analóg feszöltség értéktől függ programunk működése. Pl. szeretnénk riasztást küldeni egy bizonyos feszültségszint átlépésekor. Nem teljesen légből kapott példa a tápfeszültség figyelése. Ha lecsökken egy bizonyos feszültségszint alá, akkor szóljon a program a felhasználónak, hogy baj van stb. Természetesen megvalósítható ez úgy is, hogy folyamatosan mérjük…
ADC átalakító részletesen
Az ATMega328 található ADC átalakító és a hozzá kapcsolódó bemenet választó multiplexer többé-kevésbé egyszerű működésű része a vezérlőnek. Az Arduino környezetben a használat roppant egyszerű. Egy kicsit azért több van ebben a részegységben, mint amit elsőre látunk. Ezért kalandregényre ne számítsunk! Érdemes még elolvasni az analóg komparátorról szóló leírást is….
Az energiatakarékos üzemmódokról részletesen
———————————————————— Ebben a témakörben már született egy rövid leírás (megtekinthető itt), ami elegendő lehet azoknak, akik számára fontos, hogy elemről történő üzemeltetés alatt a vezérlő minél kevesebbet fogyasszon, de nem akarnak a részletekbe merüli. Ha nagyon leegyszerűsítjük a dolgot, akkor annyi a lényeg, hogy kiadható egy „sleep” assembly utasítás, minek…
EEPROM kezelése alacsony szinten
——————————————————————— Az ATMEga328 vezérlőben 1Kbyte EEPROM memóriát találunk. Ez roppant hasznos olyan adatok tárolására, melyeket szeretnénk a tápfeszültség kikapcsolásának ideje alatt is megőrizni. Az EEPROM működési elvéről itt található információ. Sajnos ennek a memória típusnak nagy hátránya, hogy az adatok írása rendkívül lassú, valamint az újra írások száma is erősen…
I2C kommunikáció mélységei
Tartalom: ——————————————————— Az I2C port a legkényelmesebb sok periféria használata esetén. A gyakorlatban szinte végtelen (128db) I2C kommunikációval működő eszközt csatlakoztathatunk a vezérlőnkhöz mindössze két jelvezeték használatával (nomeg a közös GND). Természetesen az egyre több eszköz egyre lassúbb kommunikációt eredményez, de a kényelemnek mindig van ára. Ugyanígy problémát okoz a…
Watchdog időzítő részletesen
Ez egy kivonat
Több sora is van
SPI port alacsony szinten
Az SPI átvitel az egyik leggyorsabb kommunikációs forma a vezérlők illetve SPI porttal rendelkező eszközök között, épp ezért alap felszereltség a mikrovezérlők világában. Az SPI port működése könnyedén megvalósítható szoftveres úton is, ha netán egy vezérlőben kevésnek bizonyul a beépített hardveres SPI portok száma. Azonban szoftveres megoldás esetén az átvitel…
USART alacsony szinten
———————————————————————————— Bár nem szoktunk rá gondolni, de az egyik elsődleges kommunikációs lehetőség az Arduino világban a soros port (tudományos nevén USART). Elsődleges, mert akkor is használjuk, amikor nem is tudunk róla. A bootloadert is tartalmazó Arduino UNO vagy nano (és pesze a többi alaplap) minden programfeltöltéshez az USART-ot használja. Az…
Időzítők belső lelkivilága
Időzítőkről eddig nem sok szó esett. Leginkább azért, mert nem volt rá igazán szükségem. Most azonban több olyan program írásába is belekezdtem, amiket szinte lehetetlen az időzítők által generált megszakítások nélkül megoldani. Fogjunk hát hozzá, és ismerjük meg működésüket részletesen. A leírásban sokszor fogok a vezérlő belső regisztereire hivatkozni. Ezek…
Digitális ki és bemenetek kezelése alacsony szinten
Az Arduino környezetben nagyon kényelmesen használható függvényeket gyártottak számunkra, és ezek segítségével a kód könnyen olvasható és értelmezhető. Ezek a függvények elrejtik elölünk a vezérlő működését, ami egyszerűvé teszi a programozást. Azonban ennek ára van, hiszen a programkódunk – anélkül hogy erről tudnánk – lényegesen hosszabb és ezáltal a végrehajtás…