Datasheet's with combined PICs drive me nuts, but in most cases I've seen so far it's usually just 2 PICs; this is the first time I've run across one which has 6 and only some have ECCP modules (I think the 16F690 has it, which may be why a search through the datasheet comes up with 'CCP1CON'.
I trimmed the code to test and left out the definition of BLINKYFREQ - even with it back in, though, it still doesn't compile (same reason).
For the 8 pins together, its because of this cool code from Darrel:
In this example, it's offset by 1 since PORTB.0 is the INT pin which is being used to detect a button push.Code:;----[Main Program Loop]---------------------------------------- Main: ' Check if flash mode has changed IF FlashMode <> Old_FlashMode Then Old_FlashMode = FlashMode GOSUB SetNavLtsFlashRates EndIF x = (x + 1) // LEDcount PORTB.1(x) = !!(LoopLED(x) < OnTime(x)) LoopLED(x) = (LoopLED(x) + 1) // (OnTime(x) + OffTime(x)) #IFDEF USE_RANDOM_SEQUENCE IF x < 5 THEN RandPeriod(x) = RandPeriod(x) - 1 IF RandPeriod(x) = 0 THEN READ RandPeriods+(x<<1), WORD RandPeriod(x) RANDOM RND OnTime(x) = (MAX_ON - MIN_ON)* RND.HighByte / 255 + MIN_ON OffTime(x)= (MAX_OFF - MIN_OFF)* RND.LowByte / 255 + MIN_OFF ENDIF ENDIF #ENDIF IF x != (LEDcount - 1) THEN Main Waiting: IF !CCPIF THEN Waiting CCPIF = 0 GOTO Main




Bookmarks