A tananyag elérhető mobil applikáción keresztül is „Kristálytiszta Elektronika”, illetve „Crystal Clear Electronics” néven – az androidos eszköz nyelv és régió beállításaitól függően – a Google Play-en. Rendszerezve tartalmazza az ingyenes tananyaghoz kapcsolódó adatlapokat is! Az új tananyagrészek publikálásával párhuzamosan fog frissülni az applikáció is.


Előszó
1. Számábrázolások, mikroprocesszorok és mikrokontrollerek fejlődéstörténete
A tananyagrész olvasása során betekintést nyerhetsz abba, hogy megfelelően összekapcsolva hogyan válnak tranzisztorok ezrei, milliói egy sokkal komplexebb, multifunkcionális áramkörré, és hogy milyen út vezetett a ma ismert nagyteljesítményű mikroprocesszorok világáig. Ahhoz, hogy összeálljon a fejünkben a kép, először néhány alapfogalmat kell áttekintenünk.
2. Korszerű mikrokontroller típusok, ARM Cortex magok
Ebben a tananyagrészben megismerkedhettek a különböző architektúrák előnyeivel és hátrányaival. Ezeken belül elmélyedhettek az ARM alapú rendszerek felépítésében, még pontosabban az STMicroelectrics STM32 termékcsaládjának kialakításában. Valamint megismerhetitek, milyen igények vezettek a mai modern kontrollerek kialakulásához.
3. Hardverközeli programozás C nyelven, fordítás folyamata
Most megismerhetitek, hogy egyes programok miért futtathatók bizonyos számítógépeken, míg másokon nem. Bepillantást nyerhettek a hardverközeli programozás és a C fordító működésének rejtelmeibe.
4. STM programozási környezet: CubeIDE, ST-Link
Ebben a tananyagrészben megismerkedhettek az STM mikrovezérlők programozására szolgáló felülettel, a CubeIDE-vel. Bemutatjuk hogyan könnyíti meg ez a felület a kontroller konfigurációját és a szoftver elkészítését. Végül megismerkedünk az ST-Link programozóval.
A fejezethez tartozó példakódot itt találod
5. Hardverleíró réteg
Most megismerheted, miként segíti a programozást a Hardverleíró rétegek használata. Még a leg egyszerűbb programok esetén is, gyorsítja a fejlesztési időt, „elrejti” az adott vezérlő regisztereit, ezáltal a kód hordozhatóságát is segíti.
A fejezethez tartozó példakódot itt találod
6. Hibakeresés, elemzés
A szoftverfejlesztés nélkülözhetetlen folyamata a hibakeresés és működés ellenőrzése. Ahhoz, hogy megtalálhassuk az anomáliákat, szerencsére manapság már egy jól felszerelt eszköztár áll a rendelkezésünkre. Ebben a tanagyrészben megismerheted az STM32CubeIDE ehhez kapcsolódó funkcióit, továbbá megtanulhatod, miként érdemes magát a hibakeresési folyamatot elvégezni.
A fejezethez tartozó első példakódot itt találod
7. A mikrokontroller I/O portjai
Most megtudhatod, hogyan teremt kapcsolatot a mikrokontroller a fejlesztőpanelen található többi eszközzel. Bemutatjuk miként épülnek fel a ki- és bemeneti egységek, milyen speciális funkciókat képesek az egyes lábak megvalósítani. Fény derül arra is, hogy hogyan védheted meg az érzékeny eszközöket a nemkívánt behatásoktól, mint például túlfeszültség és túláram.
A fejezethez tartozó példakódot itt találod
8. Soros kommunikáció I.
Ebben a tananyagrészben megismerkedhetsz az adatátviteli típusokkal, valamint a soros és a párhuzamos kommunikáció közötti különbségekkel. Megtudhatod, hogyan épül fel az I2C és az SPI kommunikáció és azt is, hogy hogyan használhatók a gyakorlatban.
A fejezethez tartozó példakódot itt találod
9. Ember-gép kapcsolat eszközei
Gondolkoztál már azon, hogy hogyan vagyunk képesek kapcsolatot teremteni elektronikus eszközeinkkel? A legegyszerűbben kapcsolók és visszajelző lámpák segítségével. Szerencsére a technika fejlődése nem állt meg, így visszajelzésre ma már különböző grafikus kijelzőket is használhatunk. Ezekről az eszközökről bővebben olvashatsz ebben tananyagrészben.
A fejezethez tartozó példakódot itt találod
10. Soros kommunikáció II
Ebben a tananyagrészben újabb soros kommunikáció típusokat ismerhetsz meg. Elmélyítheted ismereteidet az UART témakörben, kiderítheted hogyan épül fel a járművekben is használatos CAN és a számos verziót megélt USB.
A fejezethez tartozó példakódot itt találod
11. A-D átalakítás
Jelen tananyagrészben megismerkedhetsz az analóg-digitális átalakítóval (Analog to Digital Converter - ADC), megtudhatod milyen lépések szükségesek ahhoz, hogy analóg jeleinket a mikrovezérlő számára is értelmezhető információvá alakítsuk. Megláthatod, hogy milyen hibák fordulhatnak elő az átalakítás során és hogyan tudjuk ezeket kiküszöbölni, ezzel növelve a mérés pontosságát.
A fejezethez tartozó példakódot itt találod
12. D-A átalakítás
Ebben a tanananyagrészben megismerkedhetsz a digitális-analóg átalakítók (DAC-k) kialakításával, és az ezekből adódó hibajelenségekkel. Részletesen megvizsgálhatod az STM32F4 mikrovezérlőben található DAC-t, továbbá érdekes prédákon keresztül megtanulhatod, hogyan kell beállítani az adott alkalmazásnak megfelelően.
A fejezethez tartozó példakódot itt találod
13. Szenzortípusok és alkalmazásuk
Ebben a tananyagrészben megismerhetitek a különböző szenzorok működési elvét és felépítését. Bővíthetitek ismereteiteket a hőmérséklet, a nyomás, a páratartalom és nem utolsó sorban a fényérzékelő szenzorokkal, valamint ezek programozásával és használatával kapcsolatban.
A fejezethez tartozó példakódot itt találod
14. Szenzorok kalibrálása
Ebben a tananyagrészben részletesebben megismerheted az NTC és PTC hőmérséklet-érzékelőket, megtudhatod milyen összefüggések figyelhetők meg a szenzorok kialakítása és a mérési eredmények között, végül egy mérési elrendezés segítségével te is kipróbálhatod, hogy hogyan lehet kalibrálni egy hőmérő szenzort.
A fejezethez tartozó példakódot itt találod
15. Számláló és Timer egységek, WDT
Ebben a tananyagrészben megismerkedhetsz a mikrokontroller számláló és időzítő perifériáival. Megtudhatod, hogyan alkalmazhatsz PWM (Impulzusszélesség-modulációt) vagy hogyan kapcsolhatsz egy kódadót a vezérlő megfelelő bemeneteire. Végül szemléletes példán keresztül megfigyelheted, hogy hogyan segít a Watchdog timer lekezelni a szoftveres beragadás okozta hibákat.
A fejezethez tartozó példakódot itt találod
16. Real-time Clock
Gondolkoztál már azon, hogyan képesek különböző eszközeink mindig a megfelelő időt mutatni? Az RTC (Real Time Clock – Valós idejű óra) periféria segítségével nagy pontosságú időmérést valósíthatunk, továbbá egyes típusok naptár funkciókat is kínálnak. Ezen tananyagrészből megtudhatod, hogyan épül fel és használhatod a különböző területeken ezt a nagyon hasznos kiegészítőt.
A fejezethez tartozó példakódot itt találod
17. Motorok vezérlése
Ebben a tananyagrészben megismerheted a villamos gépek különböző típusait, alkalmazási területeit. Betekintést nyerhetsz az egyen- és váltóárammal üzemelő gépek világába, továbbá szemléletes példákon keresztül megtapasztalhatod, milyen lépések szükségesek ahhoz, hogy egy villanymotor egyálalán forgásba lendüljön és vezérelhessünk.
A fejezethez tartozó példakódot itt találod
18. P, PI, PD, PID szabályozások
Ebből a tananagyrészből megtudhatod, mi a különbség a szabályozás és a vezérlés között. Megismerheted a szabályozások stabilitási feltételeit, dinamikus tulajdonságait. Nem utolsó sorban betekintést nyerhetsz a leggyakrabban használt szabályozási struktúrák világába is.
19. Egyszerű P és PI szabályozók implementálása
Ezen tananyagrész segítségével, gyakorlatban is kipróbálhatod a szabályozáskoról szerzett elméleti tudásod. Megismerheted, hogyan implementálható az egyszerű vezérlés, valamint a P és a PI szabályozó egy mikrovezérlő segítségével. Érdekes információkat találhatsz arról, is, hogyan hangolhatók a szabályozási paraméterek és természetesen te magad is kipróbálhatod ezeket!
A fejezethez tartozó példakódot itt találod
20. Mikrokontrollerek energiaigénye különböző órajelfrekvenciák és működési módok esetében
Hordozható eszközeinket szeretnénk minél tovább használni, ezért elengedhetetlen a fogyasztás csökkentése, ebben a tananyagrészben megismerkedhetsz a mikrovezérlő és a különböző perifériák energiaigényével, működési módjaival és hogy hogyan érhetők el az alacsonyabb energiaszintek.
A fejezethez tartozó példakódot itt találod
21. Egyszerű valós idejű operációs rendszerek
Ebben a tananyagrészben bemutatjuk egy operációs rendszer feladatát és működését a beágyazott rendszerekben, és ismertetjük, hogy mikor is érdemes használni. Ezen felül megismerkedhettek az ütemezővel, az események és a megosztott erőforrások kezelésével is.
22. Egy valós idejű operációs rendszer használata (FreeRTOS)
Az előzőekben már megismerted a beágyazott operációs rendszerek általános felépítését, most egy konkrét rendszer, a FreeRTOS segítségével a gyakorlatban is kipróbálhatod hogyan kell programozni egy valós idejű operációs rendszerben, milyen programozástechnikai hibák fordulhatnak elő és hogyan tudsz ellenük védekezni.
A fejezethez tartozó példakódot itt találod
23. Fájlrendszerek, SD-kártya
Ebből a tananyagrészből megtudhatod, mi is lapul a SD kártyák műanyag tokja alatt. Megismerkedhetsz a kártyák élettartamát befolyásoló tényezőkkel, a különböző rendszerek által használt különböző fájlrendszerekkel és az adatok mozgatását segítő HAL függvényekkel.
A fejezethez tartozó példakódot itt találod
24. Komplex összefoglaló alkalmazás a tananyagban megismert példák felhasználásával
Ebben a tananyagrészben az eddig megszerzett tudásunk alapján, megtervezünk és elkészítünk egy szabályozót, mellyel a zuhanyzó vízhőmérsékletét állíthatjuk be. Ezen a példán keresztül bemutatjuk, hogy milyen lépések vezetnek egy projekt előkészítéshez és megvalósításához.
A fejezethez tartozó példakódot itt találod
Jelenleg ajánlott fejlesztőeszközök és alkatrészek
Készítettünk egy összefoglaló táblázatot, amelyben megtalálhatjátok, hogy melyik STM32 fejlesztői kártyával (Nucleo / Discovery) és milyen kiegészítő elemekkel tudjátok kipróbálni a tananyagban leírtakat.
A példakódokat az adott kártyának megfelelően kell átírni (portolni), de a tananyag első fejezeteiben ehhez is találtok segítséget.
Például az STM32CubeIDE-ben projekt létrehozásakor kiválasztjátok a rendelkezésre álló board-ot, majd a hardver konfigurátorban a példakódnak megfelelően beállítjátok az eszközt.
Ezután a példakódok megfelelő fájljainak átmásolásával már fordítható is a projekt.
A tananyagot tesztelő iskolákban egy, a tananyagban is látható egyedi fejlesztőkártyát használják a diákok, azonban ennek gyártására még nem találtunk megfelelő lehetőséget. A fenti táblázatban szereplő javaslatok olcsó, teljesértékű, általánosan beszerezhető megoldásokat kínálnak.