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: 36233, Oldal olvasási idő: kb. 1 perc
Lapozás: OK   3 / 10

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!
Következő: »»   3 / 10
Értékeléshez bejelentkezés szükséges!
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem