21.12.2013 Views

Maskinnära programmering 6B2266

Maskinnära programmering 6B2266

Maskinnära programmering 6B2266

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CCP1M3 CCP1M2 CCP1M1 CCP1M0 CCP mode select bits<br />

M3 M2<br />

M3 M2<br />

mode-Beskrivning<br />

M1 M0<br />

M1 M0<br />

mode-Beskrivning<br />

0000 Reset av CCP-modulen 1000 Compare, 1-ställ CCP-pinne, CCPIF-flagga<br />

Capture, varje neg flank,<br />

0100<br />

CCPIF-flagga<br />

1001 Compare, 0-ställ CCP-pinne, CCPIF-flagga<br />

Capture, var pos flank, CCPIFflagga<br />

0101<br />

1010 Compare, CCPIF-flagga<br />

Capture, var 4:e pos flank,<br />

Compare, speciell händelse, CCPIF-flagga<br />

0110<br />

CCPIF-flagga<br />

1011<br />

CCP1: 0-ställ Timer1<br />

Capture, var 16:e pos flank,<br />

0111<br />

CCPIF-flagga<br />

11xx PWM-mode<br />

CCPIF-flaggan ( CCP1IF ) kan användas till att orsaka avbrott, interrupt. Observera<br />

att flaggorna måste 0-ställas av programmet, att de inte 0-ställs automatiskt när de<br />

läses!<br />

Capture mode<br />

Capture innebär att Timer1:s ögonblicksvärde 16-bitar kopieras över till de två 8-<br />

bitarsregistren CCPR1H och CCPR1L, när en förutbestämd "händelse" inträffar på<br />

CCP1 - pinnen (pinne 9). De två 8-bitarstalen kan sammansättas till en 16-<br />

bitarsvariabel:<br />

unsigned long time;<br />

time = CCPR1H*256 ;<br />

time += CCPR1L ;<br />

Vid Capture sätts CCP1IF -flaggan i PIR1 -registret. Det går att programmera så att<br />

avbrott, Interrupt, utlöses av detta.<br />

• Ställ in Timer1, internal/external, prescaler, synk/asynk, on/off.<br />

• CCP1-mode.<br />

• TRISB.3 = 1;<br />

23

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!