Wow, now there is a new version of PBP. I was just getting confortable with PBP 2.60. What are the improvements and changes of PBP3 Gold version?
Robert
Wow, now there is a new version of PBP. I was just getting confortable with PBP 2.60. What are the improvements and changes of PBP3 Gold version?
Robert
"No one is completely worthless. They can always serve as a bad example."
Anonymous
Wow indeed, $64 for the upgrade from 2.6, including new version of MCSP - ordered! I have no doubt it's worth it.
Here are a couple of items from the feature list that drew my attention:Only thing I don't like (but do understand) are the dreaded online activation keys... They do allow installation on three machines though which is nice.
- Parsing and Formatting of ASCII Strings
- Conditional Compilation with Command-Line Constants
- Configuration settings listed for each supported device
- New #CONFIG directive eliminates the need to edit header files
I really hope the new version (5.0) of MCSP contains loader files for the newer PICs or better yet (if possible) a generator like they say is available for the MCSP ICD.
/Henrik.
Only for the new
#CONFIG
#ENDCONFIG
option it worth it. BTW 50$ is nothing too keep the development alive.
It's about timeIn addition, the PM assembler is no longer supportedThere's NO advantage to use PM over MPASM anyways.
Again MELABS get my vote, sure they done it well as usual. I use it since 99 (or so), and from the whole set of other compiler I bought/tried for this specific range of PIC, it's the best. Period.
Steve
It's not a bug, it's a random feature.
There's no problem, only learning opportunities.
I agree with Steve about the conditional configs, for that alone it is worth it to me. But they also got rid of the 64 character path limit- that's icing on the cake!!!
-Bert
The glass is not half full or half empty, Its twice as big as needed for the job!
http://foamcasualty.com/ - Warbird R/C scratch building with foam!
What exactly is a conditional config/compilation?
You can write code that will easily compile for different PIC processors and not have to maintain and update separate program files for each processor... since different PIC's often name their registers differently, even though they do the same thing.What exactly is a conditional config/compilation?
Here are a couple(3) of examples... This code allows me to use either the 16F690 or the 16F1828.
The first is an example of conditional config... meaning seting the configuration registers
Code:#IF __PROCESSOR__ = "16F1828" #CONFIG __CONFIG _CONFIG1, _FOSC_INTOSC & _WDTE_ON & _PWRTE_OFF & _MCLRE_OFF & _CP_ON & _CPD_OFF & _BOREN_OFF & _CLKOUTEN_OFF & _IESO_OFF & _FCMEN_OFF __CONFIG _CONFIG2, _WRT_OFF & _PLLEN_OFF & _STVREN_OFF & _BORV_25 & _LVP_OFF #endconfig #else #IF __PROCESSOR__ = "16F690" #CONFIG __CONFIG _INTRC_OSC_NOCLKOUT & _WDT_ON & _PWRTE_OFF & _MCLRE_OFF & _CP_ON & _CPD_OFF & _BOD_OFF & _IESO_OFF & _FCMEN_OFF #endconfig #ELSE #ERROR "Program does not support " + __PROCESSOR__ #ENDIF #endif #msg "compiling for target " + __PROCESSOR__
an example of setting up registers...
An example of clearing the interrupt flag register for two different PICs...Code:#IF __PROCESSOR__ = "16F1828" AnselA = 0 'and turn off analog AnselB = 0 AnselC = 0 IOCAF = 0 'clear interrupt flag register WDTCON=010100 'SET WDT PRESCALER #ELSE Ansel = 0 'and turn off analog AnselH = 0 INTCON.0 = 0 'clear interrupt flag register #ENDIF
At compile time, only the code that fits your selected processor is actually included in the final compiled code.Code:#IF __PROCESSOR__ = "16F1828" IOCAF = 0 #ELSE INTCON.0 = 0 'clear interrupt flag register #ENDIF
Last edited by Heckler; - 8th October 2011 at 02:42.
Dwight
These PIC's are like intricate puzzles just waiting for one to discover their secrets and MASTER their capabilities.
Bookmarks