NEW - PICBasic PRO Compiler 3.0
MicroEngineering Labs PICBASIC PRO (PBP) is the industry standard BASIC programming language for Microchip's PIC® microcontrollers. No other BASIC compiler for PIC® MCUs boasts the 15-year success in both commercial and non-commercial environments. Version 3 is a major evolution of this popular product, making it even more capable, stable, and reliable. All the years of development culminate here, with many new capabilities and improvements. Come see why thousands of engineers, educators and hobbyists have depended on PBP for more than a decade.
What is PBP?

PBP is a BASIC programming language for Microchip's PIC
® microcontrollers. It has evolved over the span of 15 years, making it the industry standard in its field.  It has become a professional-level development tool for embedded programmers, though it retains the easy-to-learn syntax that makes it popular among experimenters and educators worldwide.  PBP should not be confused with the slow BASIC interpreters of the past. This is a full-blown development tool that produces code in the same manner as a C compiler (without the pain of C). PBP is widely used by engineering professionals who depend on its stability and maturity to produce commercial firmware. It is also used by educational institutions because it is very easy to learn and understand.
PBP Experimenter Edition £29.95 buy item view cart
PBP Silver Edition £79.95 buy item  

PBP Gold Edition

£159.95 buy item  

Please note that we bundle MicroCode Studio PLUS with this compiler, which would normally cost an extra £29.95!

PBP software is now delivered electronically. This means you receive your compiler quickly, without having to incur delivery costs. However, we can supply a physical manual with your purchase if required.

Printed Manual and Installation CDROM

£19.95 buy item view cart
PBP
Development Environment

The PICBasic Pro compiler can operate as a command line application or from within Microsoft Windows. Mecanique supply PICBasic Pro with MicroCode Studio Plus, a powerful, visual Integrated Development Environment (IDE) which include an In Circuit Debugger (ICD), that has been specifically designed for PICBasic PRO.

The development environment also includes a MicroCode Loader. The loader software enables you to program your microcontroller over a serial connection without the need of a hardware programmer.

The MicroCode Studio Plus ICD can really help accelerate program development. It's also a lot of fun and a great tool for learning more about programming PIC microcontrollers.

Compare Editions
  Experimenter Edition Silver Edition Gold Edition
Commercial License   X X
Number of Installations Allowed 1 3 3
Supported Microcontrollers (click here for full list)      
28-Pin 16F886, 18F2550, 18F25J20, 18F25K22 X   X
Microchip Mid-Range Architecture 
(most PIC16, PIC12)
  X  
Enhanced Mid-Range Architecture
(PIC16F1xxx, PIC12f1xxx)
    X
Baseline Architecture
(devices using 12-bit instruction set)
    X
High Performance Architecture
(PIC18)
     
Maximum supported clock frequency 64MHz 20MHz 64MHz
32-bit LONG variables, signed integer math
(requires PIC18 device)
X   X
Device Packages supported 28-Pin 8-Pin through 64-Pin 6-Pin through 100-pin
MicroEngineering Labs Technical Support via telephone and direct email   X X
Technical Support via online forum X X X
1-Year Free Upgrades   X X


A full list of supported devices can be found here.
 

Technical

PBP is a mature BASIC compiler for Microchip's PIC microcontrollers. Its licensed user base of 10,000+ is composed mostly of engineers and companies. It is intended to be a professional development tool, though its painless syntax also makes it a favourite among hobbyists and institutions of learning. PBP generates Assembly language that consists of hand-tuned macros and library routines. This laborious approach in development makes for extreme efficiency in handling operations with a variety of variable types. Each math and comparison operation is generated according to the specific variable types that are used as inputs and output. High-level commands are included as library routines that are reused to minimize code space consumption, and these routines are tuned based on the device's memory characteristics and selected oscillator frequency.

The code that PBP generates is efficient and optimized.  Execution speed rivals that of any C compiler (for PIC MCUs) on the market.  You don't have to compromise product performance in order to save time in development.  You can have both. PBP does not use a software stack. This speeds execution of subroutine calls and limits PBP programming to a single, global namespace. All variables are globally accessible and care should be taken not to 'step on' critical values in subroutines and interrupt handlers. PBP uses the hardware stack for GOSUB and interrupts. The depth of the stack imposes limits on nested subroutines.

Unless specifically noted, PBP commands don't consume internal resources like timer modules. Our timed pauses are software-based and none of our loop structures touch the hardware stack. The peripheral modules are free for the developer to use when needed. Each supported device is mapped thoroughly in the PBP device files. PBP handles all RAM-bank and code-page switching, inserting code only when needed for the target device. All internal registers are known to PBP by name. This allows Direct Register Access with BASIC statements like "T1CON = 0", without the requirement of pre-defining the location of the register.

Features
  • Familiar BASIC syntax
    • IF (condition) THEN / ELSE / ELSEIF /ENDIF
    • SELECT CASE
    • FOR… NEXT
    • DO WHILE/UNTIL
  • Direct Register Access
    • All Special Function Registers are pre-mapped by PBP and accessible by name
  • Built-In Commands for operations common to embedded development
    • Accurate Delays in uS and mS resolutions
    • Analog to Digital Conversion
    • Asynchronous Serial Communications (RS-232, RS-485, etc)
    • Synchronous Serial including I2C and SPI
    • Character LCD
    • PWM
    • USB
    • Parsing and Formatting of ASCII Strings
    • Sinusoidal Frequency Generation and DTMF (requires hardware filtering)
    • Pulse-Width Measurement
    • Low-Power Mode
  • Conditional Compilation with Command-Line Constants
  • In-Line Assembly Language
  • Easy Device Configuration
    • Configuration settings listed for each supported device
    • New #CONFIG directive eliminates the need to edit header files
  • Interrupts in BASIC or Assembly Language
  • Newly revised and expanded, 300+ page reference manual.
  • MPLAB/MPLABX compatible.
  • MicroEngineering Labs technical support via telephone, email, and community forum (phone and email support not available for Experimenter Edition.)