mikroPascal PRO for PIC 2009 Main Banner

mikroPascal PRO for PIC

mikroPascal PRO for PIC is a full-featured PASCAL compiler for PIC microcontrollers from Microchip. It is designed for developing, building and debugging PIC-based embedded applications. This development environment has a wide range of features such as: Stand-Alone Pascal compiler, Easy-To-Use IDE, very compact and efficient code, many hardware and software libraries, comprehensive documentation, software simulator, hardware debugger support, COFF file generation, etc, Many practical examples allow you a quick start in programming PIC®microcontrollers.

  • Free updates of new compiler versions.
  • Free lifetime product technical support.
  • Over 350 PIC microcontrollers supported.
  • Wide-range of hardware and software libraries.
  • Numerous ready-to-use practical examples.
  • User-friendly IDE with additional tools.
  • Easy-to-understand documentation.
  • Comprehensive, stand-alone Pascal compiler.

Download

Installation

Download Now Download mikroPascal PRO for PIC [20.05MB]
(current build v3.80)

Documentation

Release Changes Overview in v3.80

  • Additional chips supported: PIC12F617, PIC18F13K22, PIC18LF13K22, PIC18F14K22, PIC18LF14K22, PIC18F45K22 and PIC18LF45K22
  • GIF images supported in Project Manager and Active Comments
  • Support for Package Manager
  • Active Comments Editor
  • Highlighting routine under cursor in Code Explorer
  • Export Project feature, useful for backing up the project and all relevant files with one mouse click
  • mikroICD support for K series of PICs
  • Library manager loads MCLs faster
  • More user options for optimization control
  • Tools moved to panels. Now they are dockable and receive the Color Style from IDE
  • Additional options included, users' wishes fulfilled, minor bugs fixed
  • Code Assistant (CTRL+SPACE) loads faster
  • Faster simulation of Delay_ms and Delay_us functions
  • Code Explorer works faster for codes over 5000 lines
  • Toggle breakpoints while ICD is running takes no effect
  • New Project Wizard adds the main file at the end of the file list
  • Active Comments in Examples for Development Systems and Extra Boards
  • Select All does not take effect
  • HID Terminal, missing implementation/implements keyword [mP, mB]
  • HID Terminal, "Bus powered" option takes no effect
  • Open Project Group can build a project before it is completely open
  • Introduced iv keyword for linking function as interrupt handler
  • Rebuild all sources in project (switch -RA)
  • More user options for optimization control 
  • Enhanced warning system
  • Faster generation of COFF file
  • Function goto table for functions above 64kBytes is not generated when function pointers are not used. Very useful for hi-end bootloaders.
  • Touch Panel Library
  • Aditional functions in ADC Library: ADC_Init and ADC_Get_Sample
  • UART Library for PIC16F690, UART_read() does not read RCREG
  • Ethernet Library - subnet broadcast flag added. userTCP and useUDP routine prototype is changed. Refer to help and distributed ethernet examples for details.
  • USB Library

See the complete version history of mikroPascal PRO for PIC

Compiler Overview

mikroPascal PRO for PIC offers a user-friendly interface designed to get you going fast with your PIC microcontrollers. Modern and user oriented compiler's IDE will show you that microcontroller projects can be developed in an easy and fast way. The compiler comes with many libraries that are completely documented and supplied with practical examples. There is also a set of tools used for collecting project information such as statistics as well as various tools for application testing.

Library Routines with Examples

mikroPascal PRO for PIC includes a set of libraries and examples intended to facilitate application development. All that allows a quick start in programming microcontrollers. Browse through the supplied examples and learn how to utilize PIC MCUs with minimum code and effort.

Hardware PIC-specific Libraries

  • ADC Library
  • CAN Library
  • CANSPI Library
  • Compact Flash Library
  • EEPROM Library
  • Ethernet PIC18FxxJ60 Library
  • Flash Memory Library
  • Graphic Lcd Library
  • I²C Library
  • Keypad Library
  • Lcd Library
  • Manchester Code Library
  • Multi Media Card library
  • OneWire Library
  • Peripheral Pin Select
  • Port Expander Library
  • PS/2 Library
  • PWM Library
  • RS-485 Library
  • Software I²C Library
  • Software SPI Library
  • Software UART Library
  • Sound Library
  • SPI Library
  • SPI Remappable Library
  • SPI Ethernet Library
  • SPI Graphic Lcd Library
  • SPI Lcd Library
  • SPI Lcd8 Library
  • SPI T6963C Graphic Lcd Library
  • T6963C Graphic Lcd Library
  • UART Library
  • UART Remappable Library
  • USB Library
  • Touch Panel Library

Miscellaneous Libraries

  • Button Library
  • Conversions Library
  • C Type Library
  • String Library
  • Time Library
  • Trigon Library
  • Trigonometry Library
  • Built-in Routines

My First Program in mikroPascal PRO for PIC

The following code sample includes a simple loop for performing A/D conversion on MCU PORTA and sending results to LEDs connected to PORTD and PORTC. Examine these lines carefully in order to see how our humble example deals with a highly complicated task of A/D conversion. mikroPascal PRO for PIC spares you from consulting the manual for specific MCU, code adjustments for different PIC models, and address arithmetic. Just let the compiler take care of it.

program ADC_on_LEDs;
var temp_res : word;

begin
ANSEL := 0x04; // Configure AN2 pin as analog
ANSELH := 0; // Configure other AN pins as digital I/O
C1ON_bit := 0; // Disable comparators
C2ON_bit := 0;

TRISA := 0xFF; // PORTA is input
TRISC := 0; // PORTC is output
TRISD := 0; // PORTD is output

while (TRUE) do
begin
temp_res := Adc_Read(2); // Get 10-bit results of AD conversion
PORTD := temp_res; // Send lower 8 bits to PORTD
PORTC := word(temp_res shr 8); // Send 2 most significant bits to RC1, RC0
end;
end.

Technical Specification

Supported Microcontrollers

The compiler supports a wide range of microcontrollers including over 360 PIC microcontrollers. Newly released PIC microcontrollers will be supported by a new version of compiler software that is updated regularly. The new compiler updates are available free of charge. Here is a list of all microcontrollers supported by the mikroPascal PRO for PIC compiler:

PIC12 Microcontroller Family
P12C671 P12C672 P12CE673 P12CE674 P12F609 P12F615 P12F617 P12F629 P12F635
P12F675 P12F683 P12HV609 P12HV615




PIC16 Microcontroller Family
P16C432 P16C433 P16C620 P16C620A P16C621 P16C621A P16C622 P16C622A P16C62A
P16C62B P16C63 P16C63A P16C642 P16C64A P16C65A P16C65B P16C66 P16C662
P16C67 P16C71 P16C710 P16C711 P16C712 P16C715 P16C716 P16C717 P16C72
P16C72A P16C73A P16C73B P16C745 P16C74A P16C74B P16C76 P16C765 P16C77
P16C770 P16C771 P16C773 P16C774 P16C781 P16C782 P16C923 P16C924 P16C925
P16C926 P16CE623 P16CE624 P16CE625 P16CR62 P16CR620A P16CR63 P16CR64 P16CR65
P16CR72 P16CR83 P16CR84 P16CR926 P16F610 P16F616 P16F627 P16F627A P16F628
P16F628A P16F630 P16F631 P16F636 P16F639 P16F648A P16F676 P16F677 P16F684
P16F685 P16F687 P16F688 P16F689 P16F690 P16F716 P16F72 P16F722 P16F723
P16F724 P16F726 P16F727 P16F73 P16F737 P16F74 P16F747 P16F76 P16F767
P16F77 P16F777 P16F785 P16F818 P16F819 P16F83 P16F84 P16F84A P16F87
P16F870 P16F871 P16F872 P16F873 P16F873A P16F874 P16F874A P16F876 P16F876A
P16F877 P16F877A P16F88 P16F882 P16F883 P16F884 P16F886 P16F887 P16F913
P16F914 P16F916 P16F917 P16F946 P16HV610 P16HV616 P16HV785 P16LF722 P16LF723
P16LF724 P16LF726 P16LF727





PIC18 Microcontroller Family
P18C242 P18C252 P18C442 P18C452 P18C601 P18C658 P18C801 P18C858 P18F1220
P18F1230 P18F1320 P18F1330 P18F13K22 P18F13K50 P18F14K22 P18F14K50 P18F2220 P18F2221
P18F2320 P18F2321 P18F2331 P18F23K20 P18F2410 P18F242 P18F2420 P18F2423 P18F2431
P18F2439 P18F2450 P18F2455 P18F2458 P18F248 P18F2480 P18F24J10 P18F24J11 P18F24J50
P18F24K20 P18F2510 P18F2515 P18F252 P18F2520 P18F2523 P18F2525 P18F2539 P18F2550
P18F2553 P18F258 P18F2580 P18F2585 P18F25J10 P18F25J11 P18F25J50 P18F25K20 P18F2610
P18F2620 P18F2680 P18F2682 P18F2685 P18F26J11 P18F26J50 P18F26K20 P18F4220 P18F4221
P18F4320 P18F4321 P18F4331 P18F43K20 P18F4410 P18F442 P18F4420 P18F4423 P18F4431
P18F4439 P18F4450 P18F4455 P18F4458 P18F448 P18F4480 P18F44J10 P18F44J11 P18F44J50
P18F44K20 P18F4510 P18F4515 P18F452 P18F4520 P18F4523 P18F4525 P18F4539 P18F4550
P18F4553 P18F458 P18F4580 P18F4585 P18F45J10 P18F45J11 P18F45J50 P18F45K20 P18F45K22
P18F4610 P18F4620 P18F4680 P18F4682 P18F4685 P18F46J11 P18F46J50 P18F46K20 P18F6310
P18F6390 P18F6393 P18F63J11 P18F63J90 P18F6410 P18F6490 P18F6493 P18F64J11 P18F64J90
P18F6520 P18F6525 P18F6527 P18F6585 P18F65J10 P18F65J11 P18F65J15 P18F65J50 P18F65J90
P18F6620 P18F6621 P18F6622 P18F6627 P18F6628 P18F6680 P18F66J10 P18F66J11 P18F66J15
P18F66J16 P18F66J50 P18F66J55 P18F66J60 P18F66J65 P18F66J90 P18F66J93 P18F6720 P18F6722
P18F6723 P18F67J10 P18F67J11 P18F67J50 P18F67J60 P18F67J90 P18F67J93 P18F8310 P18F8390
P18F8393 P18F83J11 P18F83J90 P18F8410 P18F8490 P18F8493 P18F84J11 P18F84J90 P18F8520
P18F8525 P18F8527 P18F8585 P18F85J10 P18F85J11 P18F85J15 P18F85J50 P18F85J90 P18F8620
P18F8621 P18F8622 P18F8627 P18F8628 P18F8680 P18F86J10 P18F86J11 P18F86J15 P18F86J16
P18F86J50 P18F86J55 P18F86J60 P18F86J65 P18F86J90 P18F86J93 P18F8720 P18F8722 P18F8723
P18F87J10 P18F87J11 P18F87J50 P18F87J60 P18F87J90 P18F87J93 P18F96J60 P18F96J65 P18F97J60
P18LF13K22 P18LF13K50 P18LF14K22 P18LF14K50 P18LF24J10 P18LF24J11 P18LF24J50 P18LF25J10 P18LF25J11
P18LF25J50 P18LF26J11 P18LF26J50 P18LF44J10 P18LF44J11 P18LF44J50 P18LF45J10 P18LF45J11 P18LF45J50
P18LF46J11 P18LF46J50






Technical Details

  • Host Platforms:
    Windows® 98/2000/NT/XP/2003/Vista/7
  • Language Support:
    Assembly, Pascal (standard Pascal syntax; labels; procedures and functions; units; standard data types; global and local variables; procedure/function parameters)
  • Output Formats:
    Intel Hex, Assembly, Binary, COFF
  • Supported Microcontrollers:
    PIC12, PIC16 and PIC18 microcontroller families from Microchip
  • System Requirements:
    200 MHz Intel® Pentium® or AMD K-6® class processor or higher, Microsoft Windows® 98/2000/NT/XP/7
    64 MB RAM
    CD-ROM drive for installation

IDE - Integrated Development Environment

The compiler's IDE is designed to maximize programmers' productivity by providing a set of software components in the form of a single program in which all development can be done. These software components eliminate the need for installation of additional software.

IDE Features

Code Editor
Code Editor

Code Editor is a text editor used for editing source code. It features Code Assistant, Parameter Assistant, Auto Correct, Code Templates, Syntax Highlighting, etc. It is designed to satisfy the needs of both novices and experienced programmers. Due to this editor, you can easily develop your applications.

Project Manager
Project Manager

The compiler's IDE consists of an intuitive Project Manager which aims to provide a simple, but very usable development environment for all programmers' needs. The Project Manager enables you to manage multiple projects and organize your source codes easily.

Code Explorer
Code Explorer

Code Explorer enables you to list variables, functions and other program items for any file of your project. All you need is to click on an element and the main window will be positioned to its definition line. This feature is very useful for finding elements in long files as it lists all project elements in one place.

Library Manager
Library Manager

Library Manager helps you manage different types of libraries being used in the project. You can add a desired library to the project by checking the box next to the library name.

Routine List
Routine List

Routine List displays a list of routines and enables them to be filtered by name. This feature allows programmers to search and find routines easily by double clicking desired routine. This tool also saves your time by simplifying routine search especially in long source codes.

Project Settings
Project Settings

Project Settings allows you to set up your project quickly. You just have to enter data that is relevant to your project such as PIC microcontroller selection, MCU Clock frequency and Build/Debugger Type. You can set output for final release of your application or for In-Circuit Debugging where you can test and debug your application.

Bookmarks
Bookmarks

Bookmarks is a feature that allows you to add a bookmark to a code line in the project. Instead of navigating manually between files and through the code, you can use this feature to jump directly to the desired location. You can create as many bookmarks as you want throughout your projects and quickly navigate between them.

Macros
Macros

Macros allow you to save your actions and reuse them later in your projects. This option enables you to create very complex macros which can save hours and hours of your work. Macros allow you to record the sequence of keystrokes and locators used to perform a task and reuse them later when required.

Messages
Messages

Messages window displays status messages for various features in the integrated development environment (IDE). It shows how the program compilation is performed as well as various responses to the project compilation and linking. It allows you to easily track down compilation errors in your project source code.

Software Simulator and mikroICD (In-Circuit Debbuger)

The compiler includes an excellent source-level debugger to help you troubleshoot and repair your application faster. You can debug your project with a software simulator that simulates microcontroller's operation in compiler's IDE or you can test and debug your applications using a hardware tool such as mikroICD (In-Circuit Debbuger) that executes programs in real-time at hardware level.

Watch Window
Watch Window

Watch Values window may be used to inspect and edit any expression, including global variables, static variables, local variables, function arguments and registers. It allows you to inspect the program and discover bugs immediately while the program is running, thus saving a lot of development time.

It is also possible to modify program items in order to test various Run-Time situations.

Breakpoints
Breakpoints

Breakpoints are temporary markers you can place in your program code to instruct the debugger where to stop the program. With breakpoints you can easily reach the part of code that is critical for debugging and testing. As soon as you set a breakpoint, your project is ready for debugging.

Stopwatch
Stopwatch

Stopwatch is a debugger feature that is used to display a current count of cycles/time since the last debugger action occured. Stopwatch measures the execution time (number of cycles) from the moment the debugger has started and can be reset at any time.

This tool is ideal for calculating the time required for executing any part of the code. In other words, you can easily track how long it takes for each part of the code to be executed, which further helps you perform the rest of application efficiently.

Statistics

The compiler's IDE features Statistics window which shows a complete statistics for your project such as RAM Memory Usage, Used RAM Locations, SFR Locations, ROM Memory Usage, ROM Memory Constants, Functions Sorted By Name, Functions Sorted By Size, Functions Sorted By Addresses, Functions Sorted By Name Chart, Functions Sorted By Size Chart, Functions Sorted By Addresses Chart, Function Tree and Memory Summary.

Statistics Screenshots

Implemented Tools

mikroPascal for PRO for PIC includes many useful implemented tools that help you develop your applications more quickly and comfortably. Those tools are designed on the basis of users' needs and practical experience in developing embedded applications.

ASCII Chart
ASCII Chart

ASCII Chart is a handy tool, particularly useful when working with LCD display.

USART Terminal
USART Terminal

USART Terminal is used for RS232 communication - baud rate control, RTS and DTR commands.

EEPROM Editor Tool
EEPROM Editor Tool

EEPROM Editor Tool allows you to easily manage EEPROM of PIC microcontrollers.

UDP Communication Terminal
UDP Communication Terminal

UDP Communication Terminal is used for Ethernet UDP communication to send UDP packets to a specified IP address, specified port, etc.

GLCD Bitmap Generator Tool
GLCD Bitmap Generator Tool

Graphic LCD Bitmap Generator Tool is used for converting bitmap to mikroPascal compatible code.

7 Segment Display Decoder
7 Segment Display Decoder

7 Segment Display Decoder is a convenient visual panel which returns decimal/hex value for 7seg Display.

LCD Custom Character
LCD Custom Character

mikroPascal PRO for PIC includes LCD Custom Character. Output is mikroPascal PRO for PIC compatible code.

USB HID Terminal
USB HID Terminal

USB HID Terminal is a tool for USB communication. It enables you to manage and view the USB connection with the microcontroller.

Bootloader Tool
GLCD Bitmap Generator Tool

mikroBootloader is a bootloader tool which allows a small bootloader program to receive and write new firmware into memory.

Screenshots

 

Ordering Information

Ordering of our products is done via 2Checkout payment gateway. If you have any problems with CC processing or you want to pay directly to our bank account please inform us:

2Checkout.com is an authorized reseller of goods and services provided by mikroElektronika

All credit card and personal details are kept secure, and our customer list is not disclosed to any third party, so you never have to worry about your credit card safety. Most shipments are sent within 48 hours of your order. Online purchasing experience of mikroElektronika products is fast, simple and secure. 2Checkout.com is an authorized reseller of goods and services provided by mikroElektronika.

  • Buy Now $199.00 USD mikroPascal PRO for PIC

Discount 25 %

Buy mikroPascal with one of our PIC development boards at 25% discount on compiler price! All of our previous customers are entitled to the discount!

  • Buy Now $149.00 USD mikroPASCAL PRO compiler for PIC with discount