A PICula projekt
Ebben a leírásban a Microchip PIC18F4520 mikrovezérlőjének működésével és programozásával ismerkedhetünk meg. Az elsajátított ismeretek azonban a PIC18 mikrovezérlő család többi tagjánál is felhasználhatók. Az első öt fejezetben a mikrovezérlő műveletvégző egységének programozásával foglalkozunk (8-bites, illetve kiterjesztett pontosságú előjeles és előjel nélküli műveletek, adatmozgatás, mutatók és veremtárak kezelése). Mivel ezeknek a műveleteknek a külvilág számára érzékelhető hatása nincs, ezen fejezetek példaprogramjait az Microchip integrált programfeljesztő rendszerében, az MPLAB szimulátor segítségével futtatjuk.A kísérleti áramkör c. fejezettől kezdődően térünk rá a perifériák kezelésére. Ezen fejezetek mintapéldáit a Sure Electronics DB-DP113 típusú PIC18F4520 demókártyáján fogjuk kipróbálni.

Célkitűzés
Az itt közzétett anyagot egyéni tanulásra szántam, ahol sem időkeret sem terjedelmi korlátok nem szabnak gátat a felfedezésnek és az elmélyült kísérletezésnek.A PIC18F4520 mikrovezérlő felépítésével, sajátosságaival történő megismerkedés után a Sure Electronics DB-DP113 PIC18F4520 Dem2PLUS hobbistáknak szánt egykártyás "mikroszámítógéppel" végzünk kísérleteket, s megtanuljuk annak főbb perifériáit kezelni: I/O port, programmegszakítási rendszer, időzítő/számláló áramkörök, LCD kijelző, hétszegmenses LED kijelző, csipogó (piezoleketromos hangkeltő), továbbá az I2C buszon elérhető külső EEPROM memória és a hőmérő. Kommunikálunk a számítógéppel a soros porton, a panelre épített USB-UART átlakítón keresztül. Analóg jeleket mérünk az ADC-vel és analóg jeleket keltünk PWM vagy külső DAC segítségével. Ha futja a lelkesedésből, akkor a Real Time Operációs Rendszerek (RTOS) világába is ellátogatunk.
A processzor első felprogramozásához szükségünk lesz egy programozó készülékre (pl. PICkit2), de a bootloader beégetése után a mikrövezérlő "önprogramozóvá" válik, tehát a továbbiakban nem lesz szükségünk programozóra.
A tananyag gondos áttanulmányozása után képes lesz...
- PIC18F assembly nyelvű programok írására, szimulálására, és a programok letölésére, illetve futtatására a PIC18F4520 mikrovezérlőn.
- C nyelvű PIC18 programok írására, szimulálására, és a programok letölésére, illetve futtatására a PIC18F4520 mikrovezérlőn.
- PIC18 mikrovezérlőn alapuló egykártyás mikrogép perifériáinak kezelésre, soros kommunikációt használó eszközök (pl. soros EEPROM, hőmérő, Digital-Analóg konverter, RS-232 ilesztő, LCD és hétszegmens kijelző) használatára.
- Az impulzus-szélesség modulációs technika használatára külső eszközök szabályozására.
- A jelfeldolgozás alapjainak demonstrálására az A/D és a D/A átalakítók alkalmazásával.
Elvárások
Feltételezem, hogy az olvasó legalább elemi jártassággal rendelkezik az elektronika és különösen a digitális elektronika terén. Szükséges, hogy ismerje a számrendszereket (bináris, hexadecimális), s legalább homályos fogalmai legyenek a mikrovezérlők (vagy mikroprocesszorok) felépítéséről, tudja, hogy mit jelent a ROM, RAM, utasításszámláló, veremtár, regiszter, bit, bájt, soros port, vagy hogy mi az a MIPS.Szerzői jogok
Az itt közzétett tananyag összeállításához forrásként felhasználtam a Mississipi Állami Egyetem oktatói, R. Reese és J. W. Bruce által írt tanfolyami jegyzetet (ECE3724 course on microprocessors) és mintaprogramokat. Köszönettel tartozom a szerzőknek, amiért jegyzetüket és a kapcsolódó segédanyagokat nyilvánosan közzétették. A jegyzethez további információ, példaprogram gyűjtemény, dokumentáció és video tananyag található a www.reesemicro.com honlapon.Meg kell jegyezni azonban, hogy a magyar adaptáció nem egyszerű fordítása a fenti jegyzetnek. A szöveget, az ábrákat és a mintaprogramokat szabadon megváltoztattam céljaimnak és szándékaimnak megfelelően.
Az itt közzétett tananyag tetszőleges célra szabadon felhasználható, azonban közzététele és a terjesztése csak a szerző írásos beleegyzésével történhet.
A tananyag bárminemű felhasználása a felhasználó saját felelősségére történik!
Kötelező olvasmányok
PIC18F4520 mikrovezérlő adatlapja és a hibajegyzék (Errata)PICmicro 18C Family Refrerence Manual
MPLAB IDE User's Guide
MPASM/MPLINK User's Guide
MPLAB C18 C Compiler Getting Started
MPLAB C18 (v3.00) C Compiler User's Guide
MPLAB C18 Libraries Documentation
Ajánlott könyvek
1. Robert B. Reese: Microprocessors: From Assembly To C with the PIC18FXX2, Delmar Learning, 2006, ISBN 13: 9781584503781, ISBN 10: 1584503785Kiegészítő anyagok: www.reesemicro.com
Letölthető előadásvázlatok: www.ece.msstate.edu/courses/ece3724/index_pic18.html
2. Han-Way Huang: PIC Microcontroller: An Introduction to Software & Hardvare Interfacing, Thomson/Delmar Learning, 2005, ISBN 10: 1-4018-3967
Letölthető mintafejezetek:
1.
fejezet: Introduction to the PIC18 microcontroller
2. fejezet: PIC18 Assembly Language Programming
3. fejezet: PIC18 Development Tools
2. fejezet: PIC18 Assembly Language Programming
3. fejezet: PIC18 Development Tools
3. Kónya László és Kopják József: PIC Mikrovezérlők alkalmazástechnikája, PIC programozás C nyelven (harmadik, bővített kiadás), ChipCAD, 2009, ISBN 13: 9789632068251, ISBN 10: 9632068254
Letölthető mintafejezetek:
