Fórum témák
» Több friss téma |
Cikkek » PIC 18F4550 USB útmutató III PIC 18F4550 USB útmutató III
Szerző: Gory, idő: Szept 16, 2007, Olvasva: 36286, Oldal olvasási idő: kb. 1 perc
FIRMWARE:
A CDC firmware feltelepítése után, a bootloader-nél is bemutatott módon nyissuk meg a CDC mappában található projectet. Láthatjuk, hogy egy csomó forrásfájlt (.c) és még egy csomó header fájlt (.h) tartalmaz a project. Szerencsénkre nekünk csak 4 fájllal kell foglalkozni összesen, mert a többi az a mi ténykedésünktől független USB-vel kapcsolatos tevékenységekért felelős. Számunkra a main.c az user.c az io_cfg.h és egy pillanatra az usbcfg.h fájl lesz csak fontos. Itt gyorsan megjegyzem, hogy aki nem a gyárilag feltelepített helyről (C:MCHPFSUSB mappa) használja, annak a projekt beállításait módosítania kell. Konkrétan a Project/Bulid options/Project/Directories fülön a legördülő menüben mindent állítsunk be értelemszerűen! Output directory, linker script helye és hasonlók. Ha ezt nem csináljuk, akkor az történik majd, mint velem, hogy átírhatjuk a kódot akárhogyan, lefordítás és felprogramozás után akkor se változik semmi, ugyanis másik mappába fordít mint gondolja az ember.
Mit is tartalmaznak ezek a fájlok?
A main.c fájl a fő programunk gyakorlatilag. Ezt egyszerűbb esetben nem nagyon kell nekünk módosítani majd. Aki tanult C-t, az tudja, hogy a main() függvényben fut a fő programszál. Ez a híres main() függvény itt található a main.c-ben. Nem egy bonyolult valami, vessünk rá egy pillantást! Az assemblyből is ismerős módon elsőnek valami inicializálás történik a InitializeSystem() függvénnyel. Ezután pedig a végtelen ciklus következik egy while(1) személyében. Ebben a végtelen ciklusban fut a programunk normális módon. Az első sor az USB-vel kapcsolatos ügyeket intézi, a ProcessIO pedig majd a mi kódunkat futtatja, amit a fő programciklusba szánunk. Az inicializálást végző rutin kissé lejjebb található, de nekünk nem kell ezzel most foglalkozni. Annyit érdemes megnézni, hogy az utolsó sorban található egy UserInit() függvényhívás. Ez hívja meg a mi saját inicializálásunkat tartalmazó kódrészletet. Ezzel el is érkeztünk a második fontos fájlhoz. Mielőtt azt kiveséznénk, az io_cfg.h header file-t kell átszerkesztenünk egy kicsit, ha nem a gyári demó panellel dolgozunk. A cikk még nem ért véget, lapozz! Értékeléshez bejelentkezés szükséges! |
Bejelentkezés
Hirdetés |