mikroC PRO for PIC | Mikroe (2025)

1045LIBRARY FUNCTIONS

168CODE EXAMPLES

808SUPPORTED MCUs

LIFETIME LICENSE

mikroC PRO for PIC | Mikroe (2)

You will love mikroC!

1-TIME PAYMENT, LIFETIME LICENSE

Pay once and never worry about it again. Once you buy the compiler you are entitled to lifetime free upgrades. Upgrading the compiler takes only a few minutes and a few clicks. We are constantly adding new features to the compiler, you can keep track of what is happening on the Software Roadmap page.

Our support team is always available – you can rely on our help while you are developing. The compiler license guarantees free product lifetime technical support.

Start here with Quick Start Guide

1045 LIBRARY FUNCTIONS

mikroC offers a unique mechanism to easily use libraries in your project, just select the libraries you need and they will be instantly available in your code. No need for dozens of #include directives. You can also install and manage third-party libraries using our package manager and library manager.

Simply select the libraries you need for your project, by checking the box. Or press the “Check All” button to include them all.

With more than 1045 library functions you’ll save time, effort and you’ll write better code.

Visit LibStock and download fully functional and working projects, and install them with a single click.

mikroC PRO for PIC | Mikroe (3)
mikroC PRO for PIC | Mikroe (4)

168 EXAMPLES

Every single library that is in our compiler is covered by a working example. More than 153 ready-made working examples, to help you understand how the library works or give you useful code snippets for your project.

808 SUPPORTED MCUs

The mikroC PRO for PIC currently supports over 808 MCUs and we are constantly adding new ones.

You can be part of the process by letting us know what microcontroller you wish to see supported next, by using our helpdesk and submitting a ticket.

mikroC PRO for PIC | Mikroe (5)
ToolchainVendorDevicePinsFlash (KB)RAM (bytes)Clock (MHz)CODEGRIPmikroProgDatasheet
ProgrammerDebuggerProgrammerDebugger

Create amazing user interfaces thanks to the integrated Visual TFT

The integrated solution allows for a streamlined workflow. Drag and drop graphic elements while the compiler generates the code automatically in the background. Modify the generated code in the compiler and create event functions. Seamlessly switch between designing and coding using keyboard shortcut F12.

Try it out for yourself and create fully functional GUIs with just a few clicks. And don’t worry about the code, the compiler will take care of that.

Visual TFT supports 17 TFT controllers and nine different touch panel controllers (both capacitive and resistive). So, we even have the hardware prepared for your next graphic project.

mikroC PRO for PIC | Mikroe (6)
mikroC PRO for PIC | Mikroe (7)

IDE

The ideal environment for you to write, compile, execute, and debug your code. All the tools you could think of, and more, are there. The Library Manager, Interrupt Assistant, Project Explorer, Quick Converter and more.

Click here to get an in-depth explanation of each part of the IDE.

mikroC PRO for PIC | Mikroe (8)

The perfect toolbox

mikroC comes equipped with fully-functional software tools that can boost your efficiency and do the job for you, so you can be more productive in your work: LCD Custom Character Tool, GLCD Bitmap Editor, Seven Segment Editor, UART Terminal, UDP Terminal, HID Terminal, ASCII Chart, Active Comments Editor, Interrupt Assistant, Advanced Statistics and much, much more.

mikroC PRO for PIC | Mikroe (9)
mikroC PRO for PIC | Mikroe (10)

Hardware debugging

Detect and correct all the code errors in seconds. mikroC has native support for hardware debugging when used with the mikroProg in-circuit programmer and debugger. It supports Step-over, Step-into, Step-out, Run, and Run To Cursor debugging operations. Also, the debugger supports standard and advanced breakpoints, which enable you to exploit the full potential of hardware debugging.

Comprehensive documentation

The help file is the best place to start if you want to get to know the compiler. The easy-to-read format and detailed explanations of every functionality and feature will make you an expert in no time.

mikroC PRO for PIC | Mikroe (11)
mikroC PRO for PIC | Mikroe (12)

Flexible licensing options

LICENSE CODE

Buy the compiler and the License Code will be sent to your inbox instantly. Once you activate the license you can use it on up to two computers.

USB DONGLE

Do you need a portable license, that can be used on multiple computers? USB Dongle license is the perfect solution.

SITE LICENSE

Own, manage, and deploy multiple software licenses. Instead of buying several licenses at a regular price, use the Site License option and get licenses for your whole team or class at a special price. Learn more.

Start developing
out of the box!

mikroLab - essential tools for the efficient developer

Code, compile, program, and debug – all in one environment. Choose the development board, and you’ll soon see that the rest of the tools are perfectly arranged around it.

mikroLab contains everything a developer needs to explore the possibilities of the microcontroller architectures we offer: a development board (with integrated programmer and debugger), the compiler license, an assortment of accessories, and as a bonus, a free license for one of our GUI design tools (either Visual TFT or Visual GLCD).

IDE

Single solution for designing GUIs, coding the backend, compiling and debugging

With the integrated Visual TFT you can create amazing user interfaces, simply drag and drop visual elements and the compiler will generate the code for you. Save time and focus on making your graphic design the best possible.

Seamlessly switch between designing and coding using keyboard shortcut F12.

mikroC PRO for PIC | Mikroe (13)

Manage all your data quickly and easily. Make the workspace comfortable and suited to your need. Use the default layout of the IDE, or arrange the windows manually. Navigate through all the projects you are working seamlessly and save time with the intuitive IDE of the mikroC compiler.

mikroC PRO for PIC | Mikroe (14)

CODEGRIP Options

CODEGRIP implementation is the newest addition to our PIC compilers with the release version 7.5.0.

The ideal environment for you to write, compile, execute, and debug your code. Now, with full CODEGRIP support implemented in IDE.

Program or debug directly from IDE, whether using CODEGRIP or mikroProg or tweak any of the advanced options (Power target circuit, Connection Speed and verifying MCU writes).

Libstock Manager

Libstock Manager is the newest addition to our PIC compilers with the release version 7.2.0.

Visiting Libstock, searching for the Click board™ you want, downloading the packages and so forth, all those tasks are not necessary now, we brought Libstock closer to you - everything is right there inside your compiler.

You can also buy the Click board™ you want straight from the comfort of your IDE. Simply click on the “Buy HW” button once you have selected a particular click board™.

Libstock Manager is constantly updated with new Click boards™. You can keep track of things by checking the “Updates” and “New” tab inside the Libstock Manager.

mikroC PRO for PIC | Mikroe (15)
mikroC PRO for PIC | Mikroe (16)

Advanced Project Management

Edit Project gives you a full overview of the entire set of configuration bits in each chip. Select only among listed options, described in simple terms. Edit project includes predefined schemes of oscillator settings for most widely used microcontrollers. Simply load your desired scheme, and you are ready to go.

Don’t waste your time browsing for examples. Let them come to you. New Project Explorer window leads you to your projects. It displays all of compiler’s many included examples by default. But simply point the path to any other folder and fast recursion-search algorithm will extract all of projects inside and will display a tree view of your project files up to any depth.Double click opens the project and sets it as active. Easily switch between the projects as often as you want.

Library manager

Only mikroC offers the unique mechanism to easily use any available library in your project. Special OneClick technology allows you to speed up your development.

Just click on the checkboxes of the libraries you need and they will be instantly available in your code. As we always think one step ahead, we programmed Library manager to allow easy usage of third party libraries installed with Package Manager software.

Notice: Visit LibStock and download fully functional and working projects, and install them with a single click.

mikroC PRO for PIC | Mikroe (18)
mikroC PRO for PIC | Mikroe (19)

Code Assistant

Control-space is probably the most widely used shortcut among programmers. Why? Because it initiates Code Assistant - programmer’s first aid kit. No one needs to memorize function names.

Focus on your code, and let the syntax write itself correctly. Write function calls with one click of your keyboard. Code assistant in mikroC PRO for PIC also suggests correct names of constants, URLs, Active comments and variables, so you have it all covered. You don’t ever have to get another Syntax error message.

Wild Card Code Completion

Use Code Completion for all those times when you need to list identifier names that contain a certain word, or when you only know a part of the identifier name.

Simply type \* in the Code Editor, followed by the phrase, and presses Ctrl+Space - a list of identifiers containing this phrase will be shown.

mikroC PRO for PIC | Mikroe (20)
mikroC PRO for PIC | Mikroe (21)

Active Comments

We have developed Active Comments - a unique feature of mikroC PRO for PIC. Any comment can become your multimedia event hook.

Add images, files and URLs to any active comment and assign events as you like.

Right Mouse Click can open browser with URL, Mouse Over can display the image, and Double Click can open a specified file.

You can add:

  • Images
  • Files
  • URLs

Add local variable declaration option

Easily declare a local variable.

  • First, enter the desired variable's name in the Code Editor.
  • Then select this option from Edit menu (Shift+Ctrl+V). Here you can the select variable type, dimension, and add a volatile qualifier if needed.
  • After pressing the OK button, a variable declaration will be placed.
mikroC PRO for PIC | Mikroe (22)
mikroC PRO for PIC | Mikroe (23)

Interrupt Assistant

The compiler also includes the Interrupt Assistant, that can help you in configuring interrupts.

You can launch it from the drop-down menu Tools › Interrupt Assistant.

Parameter Assistant

Many functions. Even more parameters. Was it word, or byte? You don’t have to scroll through Help file.

Just hit CTRL+SHIFT+SPACE and function parameters will be listed for you.

mikroC PRO for PIC | Mikroe (24)
mikroC PRO for PIC | Mikroe (25)

Code Folding

When your code overgrows the size of your screen, it’s always better to fold those completed blocks, and work in a clearer surrounding.

This way you can always see the big picture.

Built-in tools

What’s the point of a compiler if you have to do all the hard work yourself. mikroC PRO for PIC offers you several most useful integrated tools that will help you get the job done with minimum effort.

  • Active Comment Editor
  • ASCII chart
  • Export Code To HTML Tool
  • GLCD Bitmap Editor
  • HID Terminal
  • Interrupt Assistant
  • LCD Custom Character
  • Seven Segment Editor
  • UDP Terminal
  • USART Terminal
  • USB HID Bootloader
mikroC PRO for PIC | Mikroe (26)
mikroC PRO for PIC | Mikroe (27)

Quick Converter

Your fast pocket converter of binary, float, HEX and Radix 1.15 formats into formats you need in your code.

It even displays ASCII values of your bytes.

In-Circuit Debugging

mikroC PRO for PIC has native support for hardware step-by-step In-Circuit Debugger when used with fast USB 2.0 mikroProg™ programmer (in both on-board and standalone version). Debugger is a separate DLL module which supports Step-over [F8], Step-into[F7], Step-out[Ctrl+F8], Run[F6], Run To Cursor[F4] debugging operations. Also, debugger supports standard and advanced breakpoints, which enable you to exploit the full potential of fast debugging.

mikroC PRO for PIC | Mikroe (28)
mikroC PRO for PIC | Mikroe (29)

Software Simulator

If you want to go through your code and monitor the values of your variables searching for bugs and errors, Software Simulator is the best way to do so.

Software simulator supports all debugging modes as hardware debugger, but instead of executing the code on real hardware, it simulates code flow on your PC. Using Watch Clock you can precisely measure the code execution time in microseconds or in clock cycles.

Advanced Statistics

After you build your project, you can always look under the hood with mikroC’s Advanced Statistics. It is a powerful tool that visually describes most important information about your project.

Take a look at your variables, arrays and constants and know how much memory your program consumes. See which function calls which in the functions tree window. See how big are your functions and how are they linked in memory, which is especially important if you want to write your own bootloader applications.

mikroC PRO for PIC | Mikroe (30)

mikroC, mikroBasic, mikroPascal for PIC

  • Release date: 22.10.2019
  • Ide build 7.60
  • cmd line build 7.60

Compiler Changelog

Version 7.6.0

DOWNLOAD

IDE

Added:

  • Added software breakpoint support for virtually unlimited amount of breakpoints
  • Visual TFT board (3,4,5 and 7) definitions added for EasyPIC PRO v8 - PIC18F97J94
  • Three additional programming modes via CODEGRIP
    • Vpp first entry mode
    • Vdd first entry mode
    • Low voltage

Compiler

ICD support for additional 21 MCUs added (through CODEGRIP):

 P16F15385 P16F15386 P18F55K42 P18F56K42 P18F57K42 P18F65J94 P18F66J93 P18F66J94 P18F67J94 P18F85J94 P18F86J72 P18F86J93 P18F86J94 P18F87J72 P18F87J94 P18F95J94 P18F96J94 P18F97J94 P18LF55K42 P18LF56K42 P18LF57K42 

Fixed:

  • Calling initialization of remappable modules sometime causes failed builds
  • Added constants BRGH and BRG16 in definition files necessary for UART initialization

Libraries

Added: Additional functions in CString library:

  • str_cut_chr
  • str_replace_chr
  • str_cut_left
  • str_cut_right
  • str_split
  • str_insert_chr

Added: Additional functions in Conversions library:

  • StrToByte
  • StrToShort
  • StrToInt
  • StrToWord
  • StrToLong
  • StrToLongInt
  • StrToFloat
  • HexToByte
  • HexToWord
  • HexToLong
  • HexToShort
  • HexToInt
  • HexToLongInt

Added:

  • Read pixel routine added to TFT library which is one of the most requestedimprovement from our "Most desired upgrades and enhancements for MikroE compilers" topicon our forum.

Fixed:

  • Flash/EEPROM Global Interrupt Enable (GIE) value was not preserved during read/write for some PIC families of MCU
  • UART5 remappable wrong read register - PIC18(L)F6xK40

Improved:

  • Improved speed for parallel communication procedures - 8-bit mode for SSD1963 TFT controller
  • Added Interrupt enable for SPI communication - PIC18(L)F26/27/45/47/55/56/57K42

Examples

Added:

  • Set of examples for EasyPIC PRO v8
  • Memory Manager mC, mP, mB
  • CAN example for EasyPIC v8

Expanded:

  • Added new functions in examples for Conversions and (C)String

Version 7.5.0

DOWNLOAD

IDE:

CODEGRIP support implemented in IDE (program, debug and advanced options)

  • program
  • debug
  • advanced options (Protocol, Connection, Reset Type and many others)

New Capacitive touch controllers supported in VisualTFT:

  • FT5X06
  • FT5X16
  • FT5X26
  • FT5X46

New screen events introduced for FT5XXX capacitive touch controllers (in VisualTFT):

  • Swipe Up
  • Swipe Down
  • Swipe Left
  • Swipe Right
  • Zoom In
  • Zoom Out

Compiler

ICD support for additional 57 MCUs added:

 P16F15313 P16F19155 P16LF1764 P16F15323 P16F19156 P16LF1765 P16F15324 P16F19175 P16LF1768 P16F15325 P16F19176 P16LF1769 P16F15344 P16LF15313 P16LF19155 P16F15345 P16LF15323 P16LF19156 P16F15354 P16LF15324 P16LF19175 P16F15355 P16LF15325 P16LF19176 P16F15356 P16LF15344 P18F24K42 P16F15375 P16LF15345 P18F25K42 P16F15376 P16LF15354 P18F26K42 P16F1574 P16LF15355 P18F27K42 P16F1575 P16LF15356 P18F45K42 P16F1578 P16LF15375 P18F46K42 P16F1579 P16LF15376 P18F47K42 P16F1764 P16LF1574 P18LF27K42 P16F1765 P16LF1575 P18LF45K42 P16F1768 P16LF1578 P18LF46K42 P16F1769 P16LF1579 P18LF47K42 

Libraries

  • TFT touchpanel library covering new touchpanel circuit logic on v8 development boards, alias TFT_TouchPanel_TC (transistor controlled)
  • Capacitive touch controller library (FT5X06, FT5X16, FT5X26, FT5X46)

Examples

  • Added: Set of examples covering new EasyPIC v8 development board
  • Added: Set of examples covering internal MCU modules for P18F47K42 (default MCU for EasyPIC v8 development board)

Version 7.4.0 Release Candidate

DOWNLOAD

Compiler

  • Added: _DMA__ define for MCUs supporting DMA.
  • Added: IVT_DEFAULT constant to facilitate handling of unused interrupt vectors (PIC18FXXK42 and PIC18FXXK83)
  • Fixed: Error in jump address calculation when MOVFFL instructions are implicitly used in code.
  • Fixed: Copying data arrays bigger than 255 bytes can lead to memory corruption for PIC16 ENH MCUs (mikroPascal and mikroBasic).

IDE

  • Added: IVT base address can be set from edit project (available only for MCU with Interrupt Vector Table)
  • Fixed: RAM memory usage not displaying correctly for (PIC18FXXK42 and PIC18FXXK83)

Examples

  • Fixed: Some USB descriptors in examples didn't have correct MikroE USB Vendor ID
  • Version 7.3.0 Beta

    Version 7.3.0 Beta of mikroC, mikroBasic and mikroPascal for PIC has been released.

    DOWNLOAD

    Compiler

    • Fixed: Incorrect implementation of PIC18FXXK83 and PIC18FXXK83 resulting in multiple libraries not working correctly.
    • Added:
    • Support for Vectored Interrupts on PIC18FXXK42 and PIC18FXXK83 family of MCUs.
    • Improved:
    • Optimized usage of MOVFFL in favour of MOVFF resulting in smaller footprint.
    • Improved:
    • Edit project and Interrupt Assistant improved to accommodate Vectored Interrupts on PIC18FXXK42 and PIC18FXXK83 family of MCUs.

    Version 7.2.0

    DOWNLOAD

    Compiler

    Additional 189 MCU supported:

    P16F15313 P16LF1778 P18LF2423 P18LF4585P16F15323 P16LF1779 P18LF2431 P18LF45K40 P16F15324 P16LF18323 P18LF2450 P18LF45K42 P16F15325 P16LF18324 P18LF2455 P18LF4610 P16F15344 P16LF18325 P18LF2458 P18LF4620 P16F15345 P16LF18326 P18LF2480 P18LF4680 P16F15356 P16LF18344 P18LF24K40 P18LF4682 P16F15375 P16LF18345 P18LF24K42 P18LF4685 P16F15376 P16LF18346 P18LF2510 P18LF46K40 P16F15385 P16LF18854 P18LF2515 P18LF46K42 P16F15386 P16LF18855 P18LF2520 P18LF47K40 P16F19155 P16LF18856 P18LF2523 P18LF47K42 P16F19156 P16LF18857 P18LF2525 P18LF55K42 P16F19175 P16LF18875 P18LF2553 P18LF56K42 P16F19176 P16LF18876 P18LF2580 P18LF57K42 P16F19185 P16LF18877 P18LF2585 P18LF6310 P16F19186 P16LF19155 P18LF25K40 P18LF6390 P16F19195 P16LF19156 P18LF25K42 P18LF6393 P16F19196 P16LF19175 P18LF2610 P18LF6410 P16F19197 P16LF19176 P18LF2620 P18LF6490 P16LF15313 P16LF19185 P18LF2680 P18LF6493 P16LF15323 P16LF19186 P18LF2682 P18LF6520 P16LF15324 P16LF19195 P18LF2685 P18LF6527 P16LF15325 P16LF19196 P18LF26K40 P18LF65K40 P16LF15344 P16LF19197 P18LF26K42 P18LF6622 P16LF15345 P18F24K42 P18LF27K40 P18LF6627 P16LF15354 P18F25K42 P18LF27K42 P18LF6628 P16LF15355 P18F25K83 P18LF4220 P18LF66K40 P16LF15356 P18F26K42 P18LF4221 P18LF6722 P16LF15375 P18F26K83 P18LF4320 P18LF6723 P16LF15376 P18F27K42 P18LF4321 P18LF67K40 P16LF15385 P18F45K42 P18LF4331 P18LF8310 P16LF15386 P18F46K42 P18LF4410 P18LF8390 P16LF1574 P18F47K42 P18LF4420 P18LF8393 P16LF1575 P18F55K42 P18LF4423 P18LF8410 P16LF1578 P18F56K42 P18LF4431 P18LF8490 P16LF1579 P18F57K42 P18LF4450 P18LF8493 P16LF1614 P18LF1220 P18LF4455 P18LF8520 P16LF1615 P18LF1230 P18LF4458 P18LF8527 P16LF1618 P18LF1320 P18LF4480 P18LF8622 P16LF1619 P18LF1330 P18LF4510 P18LF8627 P16LF1764 P18LF2220 P18LF4515 P18LF8628 P16LF1765 P18LF2221 P18LF4520 P18LF8720 P16LF1768 P18LF2320 P18LF4523 P18LF8722 P16LF1769 P18LF2321 P18LF4525 P18LF8723 P16LF1773 P18LF2331 P18LF4550P16LF1776 P18LF2410 P18LF4553P16LF1777 P18LF2420 P18LF4580
    • Added const value in definition files that represents offset between PORTx and TRISx registers (some GPIO related libraries didn't work for all MCUs)
    • SYNC bit missing from definition files for P16(L)F177x

    IDE

    New:

    • Libstock Manager added.
    • Browse and Install LIbstock packages directly from compiler.

    Improved:

    • MmcFat16 Library now works with cards formated on Windows 10
    • TFT and TFT16_bit libraries added for Enhanced PIC16 MCUs that meet memory requirements
    • Port Expander library furnished with additional functions:
      • Expander_SetBits
      • Expander_ToggleBits
      • Expander_ClrBits
      • Expander_SetBit_PortA
      • Expander_ClrBit_PortA
      • Expander_ToggleBit_PortA
      • Expander_SetBit_PortB
      • Expander_ClrBit_PortB
      • Expander_ToggleBit_PortB
      • Expander_Set_OutputDirPortA
      • Expander_Set_InputDirPortA
      • Expander_Set_OutputDirPortB
      • Expander_Set_InputDirPortB

    Fixed:

    • Flash Write fixed for PIC18FxxK40 MCUs
    • Some PWMx_Stop procedures were stopping the timers also causing other PWM modules/channels to stop also

    Version 7.1.0

    Version 7.1.0. of mikroC, mikroBasic and mikroPascal for PIC has been released today, together with the update to mikroProg Suite. The new version was released to add ICD support for 35 new MCUs. List available below.

    Compiler

    ICD support for additional 35 MCUs:

    P16F1508 P16F18344 P16LF18313P16F1509 P16F18345 P18F24K40 P16F1773 P16F18346 P18F25K40 P16F1776 P16F18854 P18F26K40 P16F1777 P16F18855 P18F27K40 P16F1778 P16F18856 P18F45K40 P16F1779 P16F18857 P18F46K40 P16F18313 P16F18875 P18F47K40 P16F18323 P16F18876 P18F65K40 P16F18324 P16F18877 P18F66K40 P16F18325 P16LF1508 P18F67K40 P16F18326 P16LF1509

    Version 7.0.0

    Version 7.1.0. of mikroC, mikroBasic and mikroPascal for PIC has been released on March 16, together with the update to mikroProg Suite. The new version was released to add ICD support for 35 new MCUs. List available below.

    Compiler

    Additional 40 MCUs supported:

    P10F320 P16F18854 P10F322 P16F18855 P10LF320 P16F18856 P10LF322 P16F18857 P16F15354 P16F18875 P16F15355 P16F18876 P16F1773 P16F18877 P16F1776 P16LF1566 P16F1777 P16LF1567 P16F1778 P16LF18313P16F1779 P18F24K40 P16F18313 P18F25K40 P16F18323 P18F26K40 P16F18324 P18F27K40 P16F18325 P18F45K40 P16F18326 P18F46K40 P16F18344 P18F47K40 P16F18345 P18F65K40 P16F18346 P18F66K40 P18F67K40 P16LF2550

    Fixes:

    • Config register bit description "Block 3 not code protected" two times. Fixed for multiple MCU
    • OPA3CON register and bits missing from P16(L)F178x
    • TxTMR and TMRx register naming unification for P16(L)F161x
    • Bad RAM scopes sometimes included more (+1) then it should

    IDE

    New features:

    • Visual TFT integrated into compiler IDE
    • Design, Code, Compile, Debug, Program... All from one place
    • Simple and fast switch between design and coding
    • Automated synchronization of edited event file with design, awareness and background compiler on generated code
    • Automated synchronization of generated files with edited code, merge
    • One project, One application with combined predefined visual and compiler settings on one place
    • Easy switching from old projects
    • Added site license activation

    Improvements:

    • Export Project now export whole folder structure.
    • Clean Project Folder cleans whole folder structure.
    • Cleaning changed from selecting specific files to selecting file types to clean.
    • I2C timeout implemented in all I2C libraries as requested on forum poll.

    Fixes:

    • Ctrl+space did not work with arrays without dimension in declaration
    • Watch window elements with Inf or Nan values changed unexpectedly
    • Watch windows throws unexpected error in certain case
    • USART Terminal exceptions in various cases
    • USART Terminal received data may be lost
    • USART Terminal sending data slow

    Libraries

    Improvements:

    • Added library for STMPE610
    • Added FLASH libraries for P16(L)F1902(3)
      • Added new functions to Conversion library
        • ByteToStrWithZeros
        • ShortToStrWithZeros
        • FloatToStr_FixLen
      • Added Flash libraries for P12F617, P16F720, P16F721
    • Added function pointers in I2C libraries
    • Timeout implemented in all I2C libraries
    • New functions for Port Expander library
    • I2C timeout implemented in all I2C libraries as requested on forum poll.
      • ADC_Init_Advanced implemented in all ADC libraries as requested on forum poll.
      • PWM Stop (where multiple PWM modules use same timer) doesn't stop the timer module.

    Fixes:

    • UART_Remappable_Init sometimes not setting the correct baud rate
      • PWM Remappable library added for P18F46J53
      • P16F1789 missing library support for PWM3
      • ADC library missing for P18F66J50
      • I2C library missing for P16F1847

    Version 6.6.3

    IDE

    • New: Added site license activation.
    • Improved: Export Project now export whole folder structure.
    • Improved: Clean Project Folder cleans whole folder structure. Cleaning changed from selecting specific files to selecting file types to clean.

    Version 6.6.1

    Compiler

    • Fixed: Fixed case sensitive system libraris caused compiler to fail

    Version 6.6.0

    Compiler

    • New: Additional 8 MCU supported:
    PIC16F1574 PIC16F1575 PIC16F1578 PIC16F1579PIC16F1764 PIC16F1765 PIC16F1768 PIC16F1769
    • Fixed: divide simplified toi shift bug (P16ENH family only)
    • Fixed: long vs. int addition bug (P16ENH family only)

    IDE

    • Project Explorer
      • added stop active folder search option
      • added folder up shortcut
    • Library Manager
      • added hint on function
      • added drag and drop of function into editor
    • New: Added Back and Forward navigation (similar to web browser navigation)
    • Project Manager
      • File handling (rename file directly from Project Manager, auto add of new file to project)
    • New: Add local variable by identifier (CTRL+SHIFT+V)
    • New: Wild Card '*' supported in code completition
    • New: Wild Card '*' supported in Rouotine List
    • New: Code completition handles 1 character permutation
    • New: Synchronized editing

    Libraries

    • Fixed: Proper channel cleaning prior to usage of ADC_Get_Sample() functions in ADC libraries for PIC16 and PIC18.
    • Fixed: Timer selection for PWM2 in PWM Remappable lib.

    Version 6.4.0

    Compiler

    • New: Additional 61 MCU supported:
    PIC12F1571 PIC16F1718 PIC16LF1713 PIC18LF45K50PIC12F1572 PIC16F1719 PIC16LF1716 PIC12F1612PIC16F1784 PIC16LF1717 PIC12LF1501 PIC16F1786PIC16LF1718 PIC12LF1571 PIC16F1787 PIC16LF1719PIC12LF1572 PIC16F1788 PIC16LF1784 PIC12LF1612PIC16F1789 PIC16LF1786 PIC16F1454 PIC16F1829LINPIC16LF1787 PIC16F1512 PIC16F753 PIC16LF1788PIC16F1513 PIC16HV753 PIC16LF1789 PIC16F1613PIC16LF1454 PIC18F65J94 PIC16F1703 PIC16LF1512PIC18F66J94 PIC16F1704 PIC16LF1513 PIC18F67J94PIC16F1705 PIC16LF1613 PIC18F85J94 PIC16F1707PIC16LF1703 PIC18F86J94 PIC16F1708 PIC16LF1704PIC18F87J94 PIC16F1709 PIC16LF1705 PIC18F95J94PIC16F1713 PIC16LF1707 PIC18F96J94 PIC16F1716PIC16LF1708 PIC18F97J94 PIC16F1717 PIC16LF1709PIC18LF24K50
    • Improved Improved linkage.
    • Improved Allocation of locals to registers.
    • Fixed: Problem with absolute and ldm specifier P16ENH.
    • Fixed: Linkage of bit type locals variables.
    • Fixed: Problem for interrupt routine P16 in higher page.
    • Fixed: Shifting of signed operands algebric simplification error.

    IDE

    • Improved win7 and Win8 .chw files ignored when opening package help files from library manager.
    • Improved Project Manager nodes expanded only when project is set to be active.
    • Improved URL for live update is retrieved from UpdateVersion.ini file.
    • Fixed: Running compiler IDE without administrator rights on Windows 8 caused live update not to work.
    • Fixed: New lines at beginning of .dct files caused AV program issues.

    Libraries

    • New: Added standard headers assert.h and stdbool.h.
    • New: USB library for PIC16F145x mcu.
    • New: Added PWM library for PIC16F1503 and PIC16F1507
    • Fixed: Pin initialization in PWM3 for PIC18FxxK22
    • Fixed: PIC16F1503 now use correct flash library

    Version 5.8.0

    Compiler

    • New: Additional 19 MCU supported:
    PIC12F1501 PIC16F1455PIC16F1459 PIC16F1508PIC16F1509 PIC16LF1455PIC16LF1459 PIC16LF1503PIC16LF1507 PIC16LF1508PIC16LF1509 PIC16LF1782PIC16LF1783 PIC16LF1847PIC18F24K50 PIC18F25K50PIC18F45K50 PIC18F66J99PIC18LF25K50
    • New! Initializer of local variables can be variable expression
    • Fixed: Const Folding of ternar operator
    • Fixed: Handling of void in expressions
    • Fixed: Anonymous union definition and tag definition conflict
    • Fixed: Handling of poniters to functions stored in FLASH (PIC16 only)

    IDE

    • New! Live update support
    • New! Added shortcut button for Package examples.
    • New! Pointer handling in watch window shows data it points to.
    • New! Function pointers show the name of the function currently pointing at.
    • New! Value hint in debug mode for pointers shows data it points to.
    • New! Code assistant (CTRL+SPACE) for pointer to structures.
    • Fixed: Issue with setting MCU frequency.
    • Fixed: Creating project with empty name.
    • Fixed: Creating project which name which starts with a digit.
    • Fixed: "File Save As", "Project Save As" and "Save Project Group" give wrong file filters.
    • Fixed: Active comment starts with a digit caused IDE to crash.
    • Fixed: It is not possible to save a project group when projects were added from Project Explorer.
    • Fixed: Statistics window did not always stayed on top.
    • Fixed: In debug mode changing focus between editor and watch list was not momental (Insert, Delete key...).
    • Fixed: Closing file while compile is in progress caused IDE to crash.
    • Fixed: Search paths was not refreshed on starting IDE if "Search Path" window was opened when IDE was closed.
    • Fixed: Removed space characters in front of line code When a bookmarked line is displayed in bookmark window.

    Libraries

    • New! Low level TFT Library functions are now open source,
      available for user editing (located in __Lib_TFT_Defs).
    • New! Additional TFT controllers supported:
      • HX8347G (16-bit communication)
      • ILI9340 (8-bit communication)
      • ILI9481 (8-bit communication)
    • New! Flash library for P12F1840, P12LF1840 and P16F721.
    • New! ADC libraries for P18F24K50, P25K50 and P18F45K50.
    • New! Flash library for P12F1501.
    • New! PWM libraries for P12F1501, P16F1455, P16F1459, P16F1508, P16F1509.
    • Improved T6963C, SPI_T6963C and S1D13700 libraries supporting invert color.
    • Improved Added new function for setting state of CANTX pin in CAN Library.
    • Fixed: USB library, now is possible to use more than 3 string descriptors.
    • Fixed: PIC18F6273 now support 2 MSSP modules.
    • Fixed: PPS library for PIC18F27J53 now return correct value.

    mikroC PRO for PIC | Mikroe (31)

    License Code

    Choose this licensing option if you want to activate your compiler license in seconds. You can use it on up to two computers.We will send you the Registration code as soon as you purchase the compiler, which you will use to request the Activation code. That is the whole process - your compiler license is activated. It’s the quick and straightforward licensing option for this fast-paced world.

    Learn more.

    USB Dongle License

    Plug the USB Dongle into your computer and activate the license. Use your compiler license anywhere. If you are looking for a portable license that can be used on different computers the USB Dongle license is what you need.The USB Dongle contains a single license, it registers the compiler while it's connected. So, carry it anywhere with you. You will not be tied to one computer or one office.

    Learn more.

    HOW TO ACTIVATE YOUR COMPILER

    mikroC PRO for PIC | Mikroe (32)

    The regular licensing model for MikroElektronika software works best for individual users. If you run a two-person team, a whole R&D department, or teach a class, the Site License is a better solution. It allows you to own, manage and deploy multiple single licenses, with some major benefits:

    Affordable: Instead of buying multiple licenses at regular price, we will quote a special discounted price. Schools and universities will get the best deals.

    Flexible: With the Site license, individual licenses are not tied to individual computers/users. In other words, you don’t have to buy a compiler license for each person who will use it. The number of licenses you own only defines how many compiler copies can be in active use at the same time. You control who has access.

    Here's How It Works

    1. Once you purchase a given number of compilers, we will send you the installation for the Site License Manager (available for Windows and Linux). It’s an application that runs a server from your computer.
    2. Enter the Site License activation key in the License Manager application
    3. To give members of your team/class access, simply share IP address and/or PORT number of the Site License server (visible from within the application)
    4. To activate their compiler, members of your class/team connect to the server by entering the IP address and PORT number you gave them.
    5. Once an individual user finishes his work session, the user slot becomes available again
    mikroC PRO for PIC | Mikroe (2025)

    FAQs

    What is demo limit in MikroC pro for pic? ›

    Q. What does the demo limit message mean? This message warns you that you have tried to compile a program with an output (HEX file) larger than 2K of program words. Such limitation is the only disadvantage of the limited version of compiler, compared to the registered version.

    What is MikroC for pic? ›

    MikroC Pro is an Embedded-C compiler that allows you to convert a code written in C language to machine language. MikroC Pro for Pic is used for pic microcontroller programming in c.

    How to add library in MikroC? ›

    In order to create a library in mikroC PRO for PIC follow the steps bellow:
    1. Create a new source file, see Managing Source Files.
    2. Save the file in one of the subfolders of the compiler's Uses folder: ...
    3. Write a code for your library and save it.
    4. Add __Lib_Example file in some project, see Project Manager.

    How big is the memory in PIC program? ›

    PIC microcontroller data RAM and EEPROM

    The PIC I8 has a maximum of 4096 bytes (4K) of data RAM space. The data RAM size for the PIC 18 varies from 256 bytes to 4096 bytes. The data RAM space has two components: General-Purpose RAM (GPR) and • Special Function Registers (SFRs).

    What is the size of program counter in PIC microcontroller? ›

    Program counter (PC) is a 13-bit register that contains the address of the instruction being executed.

    Where is the library manager in MikroC? ›

    symbol on the toolbar, or via vMicro > Visual Micro Explorer from the menu. The library manager lets you install and deinstall libraries from Arduino and other manufacturers.

    How do I set up a CC library? ›

    To create a new Creative Cloud library in your desktop app, or to add assets to an existing library, go to Window > Libraries or Window > CC Libraries to open the Libraries panel. In the Libraries menu you can create and name a new library, find an existing library, or simply add assets to the default My Library.

    How do I import a CC library? ›

    You can import an existing library that is saved on your device to your Creative Cloud account.
    1. Open the Libraries panel inside any Creative Cloud app.
    2. Click the More options menu in the upper-right corner of the Libraries panel.
    3. Select Import Library.
    4. Click Select Library, and select the. ...
    5. Click Import.
    Apr 12, 2022

    How to add a new library in C? ›

    To use a library in your C program, you need to include the library file in the linker command when building the program. The syntax for linking a library file in GCC (the GNU Compiler Collection) is -l followed by the name of the library without the "lib" prefix and the ". a" extension.

    How to add new library to Arduino? ›

    In the Arduino IDE, navigate to Sketch > Include Library > Add . ZIP Library. At the top of the drop down list, select the option to "Add . ZIP Library''.

    How to include library in C sharp? ›

    Right-click on the solution in Solution Explorer and select Add > New Project. On the Add a new project page, enter library in the search box. Choose C# or Visual Basic from the Language list, and then choose All platforms from the Platform list. Choose the Class Library template, and then choose Next.

    Top Articles
    Latest Posts
    Recommended Articles
    Article information

    Author: Catherine Tremblay

    Last Updated:

    Views: 5794

    Rating: 4.7 / 5 (67 voted)

    Reviews: 82% of readers found this page helpful

    Author information

    Name: Catherine Tremblay

    Birthday: 1999-09-23

    Address: Suite 461 73643 Sherril Loaf, Dickinsonland, AZ 47941-2379

    Phone: +2678139151039

    Job: International Administration Supervisor

    Hobby: Dowsing, Snowboarding, Rowing, Beekeeping, Calligraphy, Shooting, Air sports

    Introduction: My name is Catherine Tremblay, I am a precious, perfect, tasty, enthusiastic, inexpensive, vast, kind person who loves writing and wants to share my knowledge and understanding with you.