include/piccolo_all.h fájlreferencia
#include "piccolo_config.h"
Ugrás a fájl forráskódjához.
|
Makródefiníciók |
#define | ChangeBits(reg, val, mask) reg ^= ((reg^val) & mask) |
| Bitcsoport átírása atomi művelettel.
|
#define | RESET_VECTOR 0x1000 |
#define | HIGH_INTERRUPT_VECTOR 0x1008 |
#define | LOW_INTERRUPT_VECTOR 0x1018 |
Függvények |
void | hi_isr (void) |
| Magas prioritású programmegszakítás kiszolgálása.
|
void | lo_isr (void) |
| Alacsony prioritású programmegszakítás kiszolgálása.
|
void | _startup (void) |
void | _reset (void) |
void | Remapped_High_ISR (void) |
void | Remapped_Low_ISR (void) |
Részletes leírás
Ez a header állomány gondoskodik a RESET és az interupt vektorok áthelyezéséről, s a PIC18F14K50 és a PIC18F4550 kísérleti áramkörök közötti triviális eltérések feloldásáról. A
piccolo_config.h tartalmától, vagy a fordítónak közvetlenül átadott makrodefinícióktól függően további állományok becsatolására is sor kerülhet, illetve feltételes fordítás segítségével alternatív kódrészletek kerülnek bele a lefordított projektbe.
Figyelem! ez a header állomány csak a főprogramba csatolható be!
A legfontosabb konfigurációs paraméterek:
- __18F14K50: Azt jelzi, hogy a Configure/Select Device menüben PIC18F14K50 mikrovezérlőt választottuk. Ezt a szimbólumot a fordító automatikusan definiálja.
- __18F4550: Azt jelzi, hogy a Configure/Select Device menüben PIC18F4550 mikrovezérlőt választottuk. Ezt a szimbólumot a fordító automatikusan definiálja.
- USE_USB: Akkor definiáljuk, ha használni kívánjuk az USB kapcsolatot (piccolo_config.h állományban vagy az MPLAB IDE Project/Build Options/Project menüjében definiálhatjuk)
- USE_INTERRUPT: Akkor definiáljuk, ha használni kívánjuk a programmegszakítást (vagy a piccolo_config.h állományban, vagy az MPLAB IDE Project/Build Options/Project menüben definiálhatjuk). Figyelem! Programmegszakítás esetén gondoskodnunk kell a magas és az alacsony prioritású interruptok kiszolgálását ellátó hi_isr() és lo_isr() eljárásokról! Ha az USE_USB és az USE_INTERRUPT szimbólumok definiálva vannak, akkor automatikusan az USB_INTERRUPT szimbólum is definiálásra kerül, ellenkező esetben pedig az USB_POLLING kerül definiálásra. A hello-int.c mintaprogramban látható, hogy az USB interruptos kiszolgálása hogyan végezhető.
- Blinking_at_start: azt engedélyezhetjük vele, hogy LED1 és LED2 kijelezze az USB kapcsolat állapotát. A lehetséges értékek: 0 = tiltás, 1 = engedélyezés.
- HID_BOOTLOADER: Akkor definiáljuk, ha HID bootloadert használunk (piccolo_config.h állományban vagy az MPLAB IDE Project/Build Options/Project menüpontjában definiálhatjuk). Ezzel szinkronban a linker programnak is át kell adni a HID_BOOTLOADER szimbolumot (parancssori /uHID_BOOTLOADER opció megadása a Project/Build Options/Project menüben, MPLINK beállításai lapján).
- MCHPUSB_BOOTLOADER: Akkor definiáljuk, ha az MCHPUSB bootloadert használunk (piccolo_config.h állományban vagy a Project/Build Options/Project menüben definiálhatjuk). Ezzel szinkronban a Linker programnak is át kell adni a MCHPUSB_BOOTLOADER szimbolumot (parancssori /u opció megadása a Project/Build Options/Project menüben, MPLINK beállításai lapján).
- Lásd még:
- piccolo_config.h projekt szintű konfigurációs beállítások
piccolo_usb.h az USB kapcsolat alkalmazásszintű kezeléséhez szükséges függvények és változók
piccolo-14k50.h a PIC18F14K50 mintaáramkör hardverspecifikus makródefiníciói
piccolo-4550.h a PIC18F4550 mintaáramkör hardverspecifikus makródefiníciói
Definíció a(z) piccolo_all.h fájlban.
Makródefiníciók dokumentációja
#define ChangeBits |
( |
reg, |
|
|
val, |
|
|
mask |
|
) |
reg ^= ((reg^val) & mask) |
Bitcsoport átírása atomi művelettel.
Inline függvény, amely egy regiszter valamelyik bitcsoportját atomi művelettel módosítja.
- Paraméterek:
-
| reg | a módosítandó regiszter neve |
| val | a beírandó érték (helyiértéken helyesen!) |
| mask | a módosítandó bitcsoportot kijelölő maszk |
Definíció a(z) piccolo_all.h fájl 89. sorában.
Függvények dokumentációja
Az áthelyzett RESET vektor. A bootloader használattól függő abszolút címre kerül.
Definíció a(z) piccolo_all.h fájl 119. sorában.
void Remapped_High_ISR |
( |
void |
|
) |
|
Az áthelyzett magas prioritású interrupt vektor. A bootloader használattól függő abszolút címre kerül.
Definíció a(z) piccolo_all.h fájl 129. sorában.
void Remapped_Low_ISR |
( |
void |
|
) |
|
Az áthelyzett alacsony prioritású interrupt vektor. A bootloader használattól függő abszolút címre kerül.
Definíció a(z) piccolo_all.h fájl 138. sorában.