Mikrokontrollerek alkalmazástechnikája

A VIK Wikiből
Mikrokontrollerek
alkalmazástechnikája
Tárgykód
VIMIJV51
Általános infók
Kredit
4
Tanszék
MIT
Követelmények
Házi feladat
1 db
Vizsga
írásbeli
Elérhetőségek

Vizsga

Mintavizsga

Vélemények

Vedd fel, ha kicsit közelebbről is meg akarsz ismerkedni a mikrokontollerekkel! A házira rá kell szánni az időt, de megéri, mert sokat lehet belőle tanulni. A vizsga nem vészes, ha jól megcsinálod a házit, akkor lehetetlen megbukni. Röviden ennyi.

Bacsa Dávid, 2007.01.07.


Én is felvettem, a háziba érdemes a félév vége előtt belekezdeni, mert az melós szokott lenni. Szerencsére házinak bármilyen neked tetsző témát választhatsz, de a megadott témák közt is vannak érdekesek. A zh elég egyszerű, könnyen tanulható az anyag, a vizsgán nehéz 4-esnél rosszabbat szerezni ha megcsináltad a házit.

Nekem az egész eddigi 4 év alatt a kedvenc tárgyam volt. Benesóczky vetíti az órákat, de bejárni nem kell; minden fent van a neten. Az eddigi leggyakorlat-orientáltabb (szép szó, hogy is kell írni? :) ) tárgyam volt.

Hardvert is kell építened; ha eddig nem tudtál, megtanulsz forrasztani és sok érdekes elektronikai tapasztalatra tehetsz szert.

Mindenkinek teljes szívemből ajánlom a tárgyat, akit egy picit is érdekel a téma.

Sárközy Péter, 2007.01.07.


Nem rossz, de azért annyira nem nagy poén. Benesóczky előadásai eléggé egyhangúak, bár korrektek. Az anyag megtalálható a neten, viszonylag korrekt minden, ami benne van. Benesóczky vizsgán nem túl vérengző, de a vizsga egyszerűnek sem mondható. Nagy szopás, hogy nem egy fajta mikrokontrollert kér számon, hanem legalább 3 fajtát (8051, PIC, AVR), és te valószínűleg csak azt fogod ismerni, amivel a házit csináltad (ha kezdő vagy, az AVR-t). Ráadásul nem kicsit másak ezek a mikrokontrollerek, pl. a 8051 CISC, az AVR meg RISC architektúrájú. Kurva nagy különbség asm-ben programozni őket (ami esetleg vizsgán feladat lehet).

A házi nagyon nagy szopás, rengeteg időt elvesz, a megvalósítás teljesen a te dolgod, tervezéstől kezdve összeforrasztásig, szoftver írásáig és dokumentálásig. Persze mindent neked kell megvásárolnod. Jó, ha már most tudod, mire jó egy mikrokontroller és milyen házit akarsz csinálni, és hozzákezdesz, különben azt veszed észre, hogy eltelt egy hónap, kezdesz megismerkedni a mikrokontrollerekkel, és pont a sok zh közepette kell megcsinálni a házit minden macerájával együtt.

Összességében ajánlom a tárgyat, mert amit tanul az ember az tényleg rettentően hasznos (digit2 helyett szerintem simán lehetne ez, ezerszer jobb, érthetőbb), szerintem egy villamosmérnöknek minimum tudnia kéne ezeket, de rengeteg meló van vele. 15 kreditet simán érhetne :).

Visko, 2007.01.07.


A nagyházi melós, nem elég működnie még sok dokumentáció is kell. A vizsga kettesre egyszerű, az ötöshöz jól kell tudni a funkcionális diagramot, a sok kiskérdést meg minden mást. Nem egy tipikus "könnyű választható" tárgy.

Fodor Péter, 2008.05.29.

Linux alól történő fejlesztéshez kapcsolódó levelek

Van egy csomó nyílt progi. Linux alá pl. az AVRDUDE. A programfordításhoz pedig az AVRGCC (Ez C fordító). Ha ezek nem szimpik, google tud még javasolni mást is.

u.i.: ha nincs még tapasztalatod lehet, hogy nem könnyű a tárgy, de ha már forrasztottál, netalán programoztál is legalább egyszer egy kontrollert, "potya" kredit.

  • Ha valaki meg akar tanulni kontrollereket programozni, akkor az alábbi tárgyakat, az alábbi sorrendben(!!!) tudom ajánlani:
    • Mikrokontrollerek alkalmazástechnikája
    • Digitális áramkörök megvalósítása mikroprogramozott eszközökkel I. és II. (vagy valami hasonló)

Tibenszky Zoltán, 2007.01.07.


Én Atmel AVR-rel játszadozom néha. (az AVR az Atmel egy architektúra) Ehhoz linux alá ezeket ismerem. Windows alá az AVRStudio, WinAVR van program írásra és a program letöltésére PonyProg. PIC-et nem ismerem, de asszem az MPLab ingyenes hozzá. Motorola kontrollerekhez is tuti van ingyenes fejlesztő környezet. A programozó hardwareeket ezekhez nem ismerem, AVR-nél ez néhány ellenállás + a kábel a PC-hez, még kristály sem kell. Sztem minden kontrollerhez van ingyenes fordító, ill. programozó, hisz így fogják sokan használni a terméket, a gyártónak is érdeke, hogy az emberek az ő kontrollerjén tanuljanak megprogramozni, szóval biztos találsz ingyenes progikat.

Tibenszky Zoltán, 2007.01.07.


Vannak, sőt, még szép, nagy függvénykönyvtárak is, legalábbis az AVR-ekhez. link

Szerintem ezzel el tudsz indulni.

Windows alá is van teljesen jó, ingyenes, C-C++-ASM fejlesztőkörnyezet: AVR Studio, amihez fel kell rakni a WinAVR-t. (Ld. Google) Ezt a párost próbáltam, de csak eléggé felszínesen. Pipec, szimulál és debuggol is kényelmesen.

Chreex, 2007.01.07.


A linux alóli programozás mint azt már korábban írták lehetséges, de nem nagyon van grafikus felület. Ez egyetlen szempontból tűnik nekem nagyon gáznak, nagyon nem tudok elképzelni konzolos debuggert. A debugger az egész lelke szerintem, amikor bármi szarul működik, nem tehetsz mást, debuggolsz. Linux ezért nem javasolt szerintem.

Az Atmel egy cég, amelynek 8bites RISC mikrokontrollereit AVR-nek hívja. Az AVR Studio az Atmel által készített hivatalos fejlesztői környezet, C és ASM fordítója van (szerintem C++ nem), de elég jó szimulátora/debuggere van, és van programozója/letöltője is, ami sajnos nem ismeri a legolcsóbb programozót (STK 200/300 a neve asszem), amit célszerű használnunk. Sajnos a PonyProg letöltő sem minden chipet támogat, bár ismeri az STK 200/300-at. Van még egy nagyon fasza program, a Bascom, ez egy basic nyelvű fordító/letöltő/debugger/szimulátor, egy hátránya van, hogy 4k-ig generál gépi kódot, utána fizetős (a 4k-s demó viszont ingyenes), ez nagyon jó letöltővel is rendelkezik, mindent tud, ami kell.

PIC-eket nem ismerem, de volt szerencsém Freescale (Motorola) mikrokontrollerekhez. Iszonyú szar a dokumentáltsága az AVR-ekhez képest, a fejlesztői környezet (codewarrior) demó, szintén adott méretű gépi kódot generál csak (asszem 16k), utána kőkeményen fizetős. Ja és attól tartok ezekhez kell hardveres fejlesztői környezet is, az is egy 10-15ezres BDM (background debugger module) - legalábbis amit én használtam, de nem láttam más alternatívát. Összességében nekem az AVR sokkal jobban tetszett, mint a freescale, olcsóbb is, használhatóbb is, és főleg sokkal jobban van dokumentálva. Nem utolsó sorban Benesóczkyék is jobban szeretik, mint bármi mást, tehát segítséget is ennél tudnak a legtöbbet adni.

Visko, 2007.01.07.

UI: ne írjon senki sem a PIC-ekről, nem ismerem, biztos az is nagyon jó, de nem voltam rákényszerítve, hogy megismerjem, nem kell hitvitát kezdeményezni :)


  • Elég olcsón össze lehet rakni egy saját programozót, csak pár elemet kell beforrasztani.
  • Debugnak-nak elég két led az áramkörben (tudod, hogy meddig jut el a program + feltételvizsgálat), igényesebbeknek hétszegmenses kijelző (pl. regisztertartalom kiírására).
  • Tehát kell egy
    • text editor (előny, ha kiemeli a parancsokat/adatokat. pl. a gedit képes erre)
    • fordító, amit a parancssorból meghívsz egy utasítással
    • programozó, amit szintén egy utasítással meghívsz
  • Nem kell hozzá grafikus felület.

Tibenszky Zoltán, 2007.01.07.


Konzolos debuggolás szerintem akkor is nehézkes, sok esetben szimuláció is segít a program fejlesztése során, ahhoz tényleg kell grafikus felület.

A házi feladat 49%-ban számít bele a jegybe. Ha a házi feladat nem működik, de dolgoztál vele rendesen 2-est kaphatsz megfelelő dokumentáltság esetén (természetesen a részfeladatok, elkészített hardver, megírt szoftver bemutatása mellett). A házi feladat legalább elégséges megléte után mehetsz vizsgázni. A házi feladatot a szorgalmi időszak utolsó előtti hetéig lehet leadni, az utolsó héten csak késedelmi díj fejében (ami most már beszedhetetlen :) ), utána egyáltalán nem. A félév során három kötelező konzultáció van, előadás időben: először meg kell beszélni a házi feladat specifikációját, másodjára kapcsolási rajz és szoftverterv kell, a harmadikra megépített hardver esetleges szoftverrel. Minden konzultációra értékelik a munkád, amely (talán 20%-os súllyal) beleszámít a házi értékelésébe. Ezek a konzultációk relatíve rövidek, 10-20 percesek, ezért külön konzultációs időpontot is meg lehet beszélni.

Visko, 2007.01.08.