Cannot disagree with you Richard... But either I am too old or C is too twisted that I have hard time doing useful things with it... Sadly.
Ioannis
Cannot disagree with you Richard... But either I am too old or C is too twisted that I have hard time doing useful things with it... Sadly.
Ioannis
I agree with Richard in that I also have learned to work with C in MPLABX, but I was able to use PBP command structures to use newer functions that don't have PBP commands. I didn't need to resort to ASM.
As for clearing an Interrupt Flag and incrementing a variable, it would look something like this in ASM:
The above does not take into account Context Saving, nor does it take into account your RPM variable is probably at least 16 bits. However, the skeletal structure is about all you need for an ASM Interrupt Service Handler.Code:BANKSEL PIR1 ;or whatever holds the TIMERx IF BCF PIR1,1 ;or whatever bit holds the TIMERxIF. Note use of a comma versus period BANKSEL RPM ;or whatever your variable is called INCF RPM ;increment your variable by 1 RETFIE
Thanks for the framework for implementing an ISR in PBP.
I concur with the comments regarding moving to C and using Microchip's IDE. I have started down that path on numerous occasions, but overcoming the inertia of being able to use PBP to easily do what I wanted was too great of a barrier for me. While it can be laborious to use PBP to implement some of the newer PIC peripherals, it can be done. For me, PBP's problem is that the language does not effectively deal with interrupts. As a friend of mine says "You do not fix a problem. You eliminate it." Given that it appears that PBP has reached its maturity, it is time for me to eliminate my problem an learn C. Painful.
Bookmarks