Product successfully added to your shopping cart
There are 0 items in your cart. There is 1 item in your cart.
Total products
Total shipping  To be determined
Continue shopping Proceed to checkout

mikroC PRO for ARM

mikroC PRO for ARM® is a full-featured C compiler for ARM® Cortex®-M0, M0+, M3, M4, and M7 microcontrollers. The feature rich environment you can experience today is the result of 15 years of dedicated work and steady progress. The ever-increasing number of hardware and software libraries, intuitive IDE, merged Visual TFT, support for FreeRTOS, detailed documentation, a full box of additional tools.

Choose your license

mikroC PRO for ARM® has two licensing options available: the License Code and the USB Dongle License. Just choose the license type in the top right part of the page.

We also offer the Site License, if you run a two-person team, a whole R&D department, or teach a class, the Site License is the best choice. It allows you to own, manage and deploy multiple single licenses.

Learn more about our licensing options.


Your Strong Ally.

mikroC PRO for ARM® is a full-featured C compiler for ARM® Cortex®-M0, M0+, M3, M4, and M7 microcontrollers.

The feature rich environment you can experience today is the result of 15 years of dedicated work and steady progress. The ever-increasing number of hardware and software libraries, intuitive IDE, merged Visual TFT, support for FreeRTOS, detailed documentation, a full box of additional tools. All of these features are there to save your time.

Library manager Libstock

You will love mikroC!


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.


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 1200 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.

Library manager Libstock
Library manager Libstock


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


The mikroC PRO for ARM® currently supports over 1141 ARM® Cortex-M0®, M0+, M3, M4, and M7 microcontrollers from leading manufactures, 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.

Texas Instruments


With the release 5.1.0 we have implemented support for FreeRTOS. All your complex projects will be organized and ordered. Accomplishing numerous different tasks with ease.

You can check out the video tutorial on starting your first project with FreeRTOS here.


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.

To enable Visual TFT, you need to acquire the Visual TFT license separately. That is why we prepared a 30% discount on the Visual TFT software if you purchase it with the compiler.

Visual TFT supports 17 TFT controllers and multiple display resolutions. So, we even have the hardware prepared for your next graphic project.

VisualTFT Software
VisualTFT Software


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.


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.

Comprehensive help file
VisualTFT Software

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 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.

Comprehensive help file
VisualTFT Software

Flexible licensing options


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.


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


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).


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.


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.


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.

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. No need for dozens of #include directives.

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.

Library manager
Code Assistant

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 ARM® also suggests correct names of constants, 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.

Interrupt Assistant Window
Active Comment Preview

Active Comments

We have developed Active Comments - a unique feature of mikroC PRO for ARM®. 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.
Local variable declaration
Interrupt Assistant Window

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.

Parameter Assistant
Code Folding

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 ARM® 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
Built-in tools
Quick Converter

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 ARM® 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), or Stellaris® debuggers. 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.

Watch Clock

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.

Functions Sorted By Size

mikroC, mikroBasic, mikroPascal for ARM

ARM compilers version 6.0.0

  • Release date: 21.11.2017.
  • Ide build 6.00
  • cmd line build 6.00

Compiler Changelog

Version 6.0.0

mikroC PRO for ARM version history:

  • Release date: 21.11.2017.
  • Ide build 6.00
  • cmd line build 6.00


  • New MCU (271):
    STM32F031E6     STM32F479ZG     STM32L011E3     STM32L083RB     STM32L496RG   
    STM32F038E6     STM32F479ZI     STM32L011E4     STM32L083RZ     STM32L496VE   
    STM32F051T8     STM32F722IC     STM32L011F3     STM32L083V8     STM32L496VG   
    STM32F058T8     STM32F722IE     STM32L011F4     STM32L083VB     STM32L496ZE   
    STM32F071C8     STM32F722RC     STM32L011G3     STM32L083VZ     STM32L496ZG   
    STM32F398VE     STM32F722RE     STM32L011G4     STM32L431CB     STM32L4A6AG   
    STM32F410C8     STM32F722VC     STM32L011K3     STM32L431CC     STM32L4A6QG   
    STM32F410CB     STM32F722VE     STM32L011K4     STM32L431KB     STM32L4A6RG   
    STM32F410R8     STM32F722ZC     STM32L021D4     STM32L431KC     STM32L4A6VG   
    STM32F410RB     STM32F722ZE     STM32L021F4     STM32L431RB     STM32L4A6ZG   
    STM32F410T8     STM32F723IC     STM32L021G4     STM32L431RC     TM4C123GH6ZXR 
    STM32F410TB     STM32F723IE     STM32L021K4     STM32L431VC     TM4C1290NCPDT 
    STM32F412CE     STM32F723VE     STM32L031C4     STM32L432KB     TM4C1290NCZAD 
    STM32F412CG     STM32F723ZC     STM32L031C6     STM32L432KC     TM4C1292NCPDT 
    STM32F412RE     STM32F723ZE     STM32L031E4     STM32L433CB     TM4C1292NCZAD 
    STM32F412RG     STM32F732IE     STM32L031E6     STM32L433CC     TM4C1294KCPDT 
    STM32F412VE     STM32F732RE     STM32L031F4     STM32L433RB     TM4C1294NCPDT 
    STM32F412VG     STM32F732VE     STM32L031F6     STM32L433RC     TM4C1294NCZAD 
    STM32F412ZE     STM32F732ZE     STM32L031G4     STM32L433VC     TM4C1297NCZAD 
    STM32F412ZG     STM32F733IE     STM32L031G6     STM32L442KC     TM4C1299KCZAD 
    STM32F413CG     STM32F733VE     STM32L031K4     STM32L443CC     TM4C1299NCZAD 
    STM32F413CH     STM32F733ZE     STM32L031K6     STM32L443RC     TM4C129EKCPDT 
    STM32F413MG     STM32F765BG     STM32L041C6     STM32L443VC     TM4C129LNCZAD 
    STM32F413MH     STM32F765BI     STM32L041E6     STM32L451CC     TM4C129XKCZAD 
    STM32F413RG     STM32F765IG     STM32L041F6     STM32L451CE     MK65FN2M0XXX18
    STM32F413RH     STM32F765II     STM32L041G6     STM32L451RC     MK65FX1M0XXX18
    STM32F413VG     STM32F765NG     STM32L041K6     STM32L451RE     MK66FN2M0XXX18
    STM32F413VH     STM32F765NI     STM32L071C8     STM32L451VC     MK66FX1M0XXX18
    STM32F413ZG     STM32F765VG     STM32L071CB     STM32L451VE     MK80FN256XXX15
    STM32F413ZH     STM32F765VI     STM32L071CZ     STM32L452CC     MK82FN256XXX15
    STM32F423CH     STM32F765ZG     STM32L071K8     STM32L452CE     MKV58F1M0XXX24
    STM32F423MH     STM32F765ZI     STM32L071KB     STM32L452RC     MKV58F512XXX24
    STM32F423RH     STM32F767BG     STM32L071KZ     STM32L452RE
    STM32F423VH     STM32F767BI     STM32L071RB     STM32L452VC
    STM32F423ZH     STM32F767IG     STM32L071RZ     STM32L452VE
    STM32F469AE     STM32F767II     STM32L071V8     STM32L462CE
    STM32F469AG     STM32F767NG     STM32L071VB     STM32L462RE
    STM32F469AI     STM32F767NI     STM32L071VZ     STM32L462VE
    STM32F469BE     STM32F767VG     STM32L072CB     STM32L471QE
    STM32F469BG     STM32F767VI     STM32L072CZ     STM32L471QG
    STM32F469BI     STM32F767ZG     STM32L072KB     STM32L471RE
    STM32F469IE     STM32F767ZI     STM32L072KZ     STM32L471RG
    STM32F469IG     STM32F769AI     STM32L072RB     STM32L471VE
    STM32F469II     STM32F769BG     STM32L072RZ     STM32L471VG
    STM32F469NE     STM32F769BI     STM32L072V8     STM32L471ZE
    STM32F469NG     STM32F769IG     STM32L072VB     STM32L471ZG
    STM32F469NI     STM32F769II     STM32L072VZ     STM32L475RC
    STM32F469VE     STM32F769NG     STM32L073CB     STM32L475RE
    STM32F469VG     STM32F769NI     STM32L073CZ     STM32L475RG
    STM32F469VI     STM32F777BI     STM32L073RB     STM32L475VC
    STM32F469ZE     STM32F777II     STM32L073RZ     STM32L475VE
    STM32F469ZG     STM32F777NI     STM32L073V8     STM32L475VG
    STM32F469ZI     STM32F777VI     STM32L073VB     STM32L476ME
    STM32F479AG     STM32F777ZI     STM32L073VZ     STM32L476MG
    STM32F479BG     STM32F779AI     STM32L081CZ     STM32L496AE
    STM32F479BI     STM32F779BI     STM32L081KZ     STM32L496AG
    STM32F479IG     STM32F779II     STM32L082CZ     STM32L496QE
    STM32F479NG     STM32F779NI     STM32L082KZ     STM32L496QG
    STM32F479VG     STM32L011D3     STM32L083CB     STM32L496RE
    STM32F479VI     STM32L011D4     STM32L083CZ
  • Added M7 core support for NXP (Kinetis family)


  • Linker generated 0 byte data sections
  • SSA optimization fails to find postorder of IDOM list in specific case
  • EMCL writer could break on specific pointer to function that return pointer to function case



  • Visual TFT integrated into compiler IDE
  • Design, Code, Compile, Debug, Program… All from one place
  • Simple and fast switch between design and coding
  • Write your events code more easily with direct code completion and code explorer support
  • Added automated (3-way) code merge for VTFT generated projects
  • 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/import from old projects
  • FAT32, FT800(1), FT810(1) and FT812(3) now come pre installed with the compiler (Visual TFT part requirements)


  • method of adding custom TFT controllers is now improved
  • configuration schemes for various MCUs can now be linked to board definition files (VTFT)
  • generation of DBC for SSD1963 code now customizable (board defs)


  • 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
  • IDE crashed on fast switch between editor tabs
  • AutoComplete macros %DATE%, %TIME%, %DEVICE%, %DEVICE_CLOCK%, %COMPILER% did not work
  • Edit project sometimes crashes when trying to change MCU
  • Pressing F11 multiple times causes IDE to crash
  • Delete file or project file outside of IDE, causes IDE to crash
  • STM32F103C8 missing USB registers
  • IVT vector table for STM32L1xxx Cat 4-6 not accurate to latest reference manual


  • Improved: I2C timeout implemented on all compiler MCU (forum enhancement request)
  • Improved: ADC Init Advanced implemented on all compiler MCU where available (forum enhancement request)
  • Improved: NVIC_SetIntPriority didn't work over first 16 vectors
  • Improved: All compiler libraries are now case sensitive buildable. (mikroC only)
  • Fixed: SPI write (STM M7) sometimes doesn't send complete 16bit of data.
  • Fixed: I2C library reading 1 less byte of data then it was called
  • Fixed: STM32F411xx should have more than 10 ADC channels (16)


  • All ARM related Visual TFT examples now included in setup
  • Added example sets for:
    • mikromedia Plus for TIVA
    • mikromedia Plus for STM32F7
    • mikromedia 7 for STM32F7

Version 5.1.0

  • Release date: 6.6.2017.
  • IDE build: 5.1.0
  • cmd line build: 5.1.0


  • New: FreeRTOS support implemented.
  • New: Added indfuncall directive.



  • Added integral (Filter) search for Project Manager, Project Explorer, Library Manager, Code Explorer, Procedure List with Regular Expression search support
  • Library Manager now can open library source on right click, if source is present.
  • FreeRTOS debug supported with tasks and queues view.


  • Added new view to Project Manager to support displaying complex project sub tree.
  • Export Project now exports whole folder structure.
  • Clean Project Folder cleans whole folder structure.
  • Cleaning changed from selecting specific files to selecting file types to clean.
  • Edit search paths form improved to work with relative search and header paths.
  • Project file now saves and loads relative paths.
  • Updated the Bootloader application with automatic hardware recognition feature.


  • 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.
  • IDE crashed on fast switch between editor tabs.
  • Edit project sometimes crashes when trying to change MCU.
MK22FN128VDC10    MK22FN128VLL10
MK22FN128VLH10    MK22FN128VMP10
MK22FN128CAH12    MK22FN1M0VLH12
MK22FN1M0VLK12    MK22FN1M0VLL12
MK22FN1M0VLQ12    MK22FN1M0VMC12
MK22FN1M0VMD12    MK22FN256CAH12
MK22FN256VDC12    MK22FN256VLH12
MK22FN256VLL12    MK22FN256VMP12
MK22FN512VDC12    MK22FN512VLL12
MK22FN512VLH12    MK22FN512CAP12
MK22FN512VMP12    MK22FX512VLH12
MK22FX512VLK12    MK22FX512VLL12
MK22FX512VLQ12    MK22FX512VMC12
MK22FX512VMD12    MK64FN1M0VDC12
MK64FN1M0VLL12    MK64FN1M0VLQ12
MK64FN1M0VMD12    MK64FX512VDC12
MK64FX512VLL12    MK22FX512VLH12


  • Added: Bootloader Tool now supports Kinetis MCU
  • Added: Aligned specifier parsing.
  • Improved: ARM simulator improvements.
  • Fixed: Debug start when welcome screen in focus sometimes result in IDE crash.


  • New! Added examples for Clicker2 for Kinetis

Version 4.9.0


  • Added: Support for Kinetis MCU family.
  • New: 35 Kinetis MCUs supported (via 8 superset files):

Version 4.7.4


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


  • New:Added Crypto Libraries for CEC1302


  • New:Added Crypto Examples for CEC1302

Version 4.7.0


  • New: Added site license activation.
CEC1302        STM32F446MC    STM32L476QE    STM32F303RD    STM32F746NG
STM32F042T6    STM32F446RC    STM32L476RC    STM32F303VD    STM32F746VG
STM32F048G6    STM32F446VC    STM32L476RG    STM32F303ZD    STM32F746ZG
STM32F070C6    STM32F446ZC    STM32L476VE    STM32F318C8    STM32F756IG
STM32F070F6    STM32F479AI    STM32L476ZE    STM32F411VC    STM32F756VG
STM32F091CB    STM32F479NI    STM32L486JG    STM32F427AG    STM32L051T6
STM32F091RB    STM32F745IE    STM32L486RG    STM32F429AG    STM32L052T6
STM32F091VB    STM32F745VE    STM32L486ZG    STM32F429BE    STM32L151VD-X
STM32F098CC    STM32F745ZE    STM32F030RC    STM32F439AI    STM32L162VD-X
STM32F098VC    STM32F746BE    STM32F048C6    STM32F446ME    STM32L476JG
STM32F302RE    STM32F746IE    STM32F048T6    STM32F446RE    STM32L476QG
STM32F302VE    STM32F746NE    STM32F070CB    STM32F446VE    STM32L476RE
STM32F302ZE    STM32F746VE    STM32F070RB    STM32F446ZE    STM32L476VC
STM32F303RE    STM32F746ZE    STM32F091CC    STM32F479II    STM32L476VG
STM32F303VE    STM32F756BG    STM32F091RC    STM32L052C8    STM32L476ZG
STM32F303ZE    STM32F756NG    STM32F091VC    STM32F745IG    STM32L486QG
STM32F318K8    STM32F756ZG    STM32F098RC    STM32F745VG    STM32L486VG
STM32F411VE    STM32L051T8    STM32F302RD    STM32F745ZG    STM32F030CC
STM32F427AI    STM32L052T8    STM32F302VD    STM32F746BG  
STM32F429AI    STM32L152VD-X  STM32F302ZD    STM32F746IG  
STM32F437AI    STM32L476JE    STM32L476QE    STM32F303RD  
  • New Support for STM M7 core MCUs
  • Improved: Compiler throw warning if enum is mixed with integer type that exceed its range.
  • Improved: Optimizer added const folding for cast operation.
  • Improved: Ctrl+space did not work with arrays without dimension in declaration.
  • Improved: Added const folding for cast operation.
  • Fixed: Compiler goto after if caused compilation error.
  • Fixed: Compiler ? : operator error with sbit as 1st operand.
  • Fixed: Compiler initialization with &arr[0] caused error.
  • Fixed: Compiler binary number with 64 bits.
  • Fixed: Emcl writer error for local sbit.
  • Fixed: Compiler funcall pragma and optimizer conflict state.
  • Fixed: Linker local extern used only in assembly caused error.
  • Fixed: Linker jump compression error M0 core.
  • Fixed: Linker literal assignment compression error M0 core.
  • Fixed: Linker false static function redefinition error in some cases.


  • Fixed: Ctrl+space did not work with arrays without dimension in declaration.
  • Fixed: Jump to interrupt in simulator didn't work.
  • Fixed: Watch window elements with Inf or Nan values changed unexpectedly.
  • Fixed: Watch windows throws unexpected error in certain case.
  • Fixed: Out of memory error for extremely big symbols.
  • Fixed: Out of memory error for extremely big symbols.


  • Fixed: Gpio Defs for STM32F401x mcus.
  • Fixed: Added missing registers for floating point unit in STM32F334 mcus.
  • Fixed: GPIO library for STM32L0 mcus.
  • Fixed: ADC library for STM32F401 mcus.
  • Fixed: Wrong consts and address offsets in Flash library for STM32F42x and STM32F43x.


  • New! Added examples for STM32F746VG mcu in Internal MCU Modules group.
  • New! Added examples for CEC1302.

Version 4.5.0


  • New: 151 additional MCUs supported:
STM32F030C6   STM32F358RC   STM32L152RB-A STM32F303K8   STM32L051K8   STM32F038G6   STM32F401VD
STM32F334C6   STM32L151VE   STM32F302C8   STM32L100RC   STM32F031F4   STM32F401CD   STM32L152ZE
STM32L151R6-A STM32F078VB   STM32L053R6   STM32F058R8   STM32F358CC   STM32L152R8-A STM32F303K6
STM32F072C8   STM32L052C6   STM32F042C6   STM32F411CE   STM32L151VC-A STM32F302C6   STM32L100RB-A
STM32F429VE   STM32F031G6   STM32F401RC   STM32L162RE   STM32F078RB   STM32L053C8   STM32F058C8
STM32F030F4   STM32F378CC   STM32L152RE   STM32F303R8   STM32L051R8   STM32F042C4   STM32F411CC
STM32F334K4   STM32L152C6-A STM32F302K8   STM32L151C8-A STM32F031G4   STM32F401RB   STM32L162RC-A
STM32L151RB-A STM32F301C8   STM32L062K8   STM32F071RB   STM32F358VC   STM32L152RC-A STM32F303R6
STM32F072R8   STM32L052K6   STM32F042F6   STM32F411RE   STM32L151ZE   STM32F302K6   STM32L151C6-A
STM32L051C6   STM32F031K6   STM32F401RE   STM32L162VC-A STM32F301C6   STM32L053R8   STM32F071CB
STM32F030R8   STM32F378VC   STM32L152VB-A STM32F334C4   STM32L052C8   STM32F042F4   STM32F411RC
STM32F334K8   STM32L152CB-A STM32F302R8   STM32L151QE   STM32F031K4   STM32F401RD   STM32L162VC
STM32L151RE   STM32F301K8   STM32L063R8   STM32L162ZE   STM32F378RC   STM32L152V8-A STM32F328C8
STM32F072V8   STM32L052R6   STM32F042G6   STM32F334K6   STM32L152C8-A STM32F302R6   STM32L151CB-A
STM32L051K6   STM32F038F6   STM32F401VC   STM32L151RC-A STM32F301K6   STM32L063C8   STM32F071V8
STM32F031C6   STM32F401CC   STM32L152VE   STM32F072RB   STM32L052K8   STM32F042G4   STM32F429IE
STM32F334R8   STM32L152R6-A STM32F303C8   STM32L051C8   STM32F038C6   STM32F401VB   STM32L162VE
STM32L151VB-A STM32F301R8   STM32L100R8-A STM32F031C4   STM32F401CB   STM32L152VC-A 
STM32F078CB   STM32L053C6   STM32F042K6   STM32F334R6   STM32L152QE   STM32F303C6 
STM32L051R6   STM32F038K6   STM32F401VE   STM32L151V8-A STM32F301R6   STM32L100C6-A 
STM32F031F6   STM32F401CE   STM32L162RC   STM32F072VB   STM32L052R8   STM32F042K4 
  • Fixed: Fixed bug for const folding when project option 4 bytes integer is selected
  • Fixed: Fixed minor optimizer bugs (compare with contsants that are out of range...)
  • Fixed: Fixed code genreator bug push does not affect alligment
  • Fixed: Fixed IDE made files with a lot of blank line for anonymus union and struct


  • New! Added NVIC_SetIntPriority function for STM mcus.
  • New! Added EEPROM library for TIVA mcus.
  • Fixed: PWM library for STM32F40x/41x.
  • Fixed: Issue in autonegotiation process for ST MCU-s with Ethernet module.
  • Fixed: In I2C libraries for STM32F307/407 POS bit is now cleared after read in 2 bytes burst mode.


  • New! Added examples for EasyMx PRO v7 for TIVA.
  • New! Added examples for mikromedia for TIVA.
  • New! Added example for EEPROM module for TIVA.

Version 4.2.0


  • New: 7 additional MCUs supported:
  • Fixed: Some variations of LDM and STM instructions wasn't supported in assembler.
  • Fixed: Code generator, comparing long extern constants yields "Argument ot of range".
  • Fixed: Comparing 64bit long variables used incorrect compare condition.


  • New! GPIO consts are now moved to 'Defs' file.
  • New! Added standard headers assert.h, stdbool.h and time.h.
  • New! Added library support for Touch Panel controller TSC2006 (SPI controlled).
  • Fixed: Incorrect return in certain branch in system function LongDoubleToFloat.
  • Fixed: Bit-band problem with STM32F3xx mcus.
  • Fixed: SPI const in SPI library for TI M3 and TI M4 mcus.
  • Fixed: Resolved bug in SPI_Ethernet_readPHY function of SPI_Ethernet library.


  • New! Added examples for mikromedia 5 for Tiva.
  • Fixed: Added longer delay for conversion time in OneWire example.

Version 4.0.0


  • New: ARM Cortex M0 support.
  • New: 24 additional MCUs supported:
STM32F050C4    STM32F051K6
STM32F050C6    STM32F051K8
STM32F050F4    STM32F051R4
STM32F050F6    STM32F051R6
STM32F050G4    STM32F051R8
STM32F050G6    STM32F302CB
STM32F050K4    STM32F302CC
STM32F050K6    STM32F303CC
STM32F051C4    STM32F313CC
STM32F051C6    STM32L151CC
STM32F051C8    STM32L151UC
STM32F051K4    STM32L152CC
  • Fixed: Code generator, incorrect access to float variables on stack for M4 devices.


  • New! Added library for DAC module in STM32 famillies.
  • Improved STM32 GPIO_Config function, added options for configuring alternative pins.
  • Improved Added new functions in PortExpander library.
  • Improved Added support for ESC key in PS2 library.
  • Improved Added new functions in Conversions library.
  • Fixed: ADC library for STM32 30x.
  • Fixed: Several bugs in STM32 CAN libraries.


  • New! Added example for DAC module.
  • Fixed: Resolved bug with HID Bootloader example and USB 3.0.

Version 3.3.5


  • New: 50 additional Tiva M4 C Series MCUs supported
TM4C1230C3PM    TM4C1231H6PM    TM4C1233E6PZ    TM4C1237E6PZ    TM4C123BH6PZ
TM4C1230D5PM    TM4C1231H6PZ    TM4C1233H6PGE   TM4C1237H6PGE   TM4C123BH6ZRB
TM4C1230E6PM    TM4C1232C3PM    TM4C1233H6PM    TM4C1237H6PM    TM4C123FE6PM
TM4C1230H6PM    TM4C1232D5PM    TM4C1233H6PZ    TM4C1237H6PZ    TM4C123FH6PM
TM4C1231C3PM    TM4C1232E6PM    TM4C1236D5PM    TM4C123AE6PM    TM4C123GE6PM
TM4C1231D5PM    TM4C1232H6PM    TM4C1236E6PM    TM4C123AH6PM    TM4C123GE6PZ
TM4C1231D5PZ    TM4C1233C3PM    TM4C1236H6PM    TM4C123BE6PM    TM4C123GH6PGE
TM4C1231E6PM    TM4C1233D5PM    TM4C1237D5PM    TM4C123BE6PZ    TM4C123GH6PM
TM4C1231E6PZ    TM4C1233D5PZ    TM4C1237D5PZ    TM4C123BH6PGE   TM4C123GH6PZ
TM4C1231H6PGE   TM4C1233E6PM    TM4C1237E6PM    TM4C123BH6PM    TM4C123GH6ZRB
  • Fixed: Built-in Delays for STM32F3xxxx MCUs.


  • New! FFT Library.
  • New! FIR Library.
  • New! IIR Library.
  • New! Vectors Library.
  • New! Matrices Library.
  • New! Q15 and Q31 Libraries for Cortex M4 MCUs.
  • Improved Added I2C_Set_Active function to I2C library (and generic functions which works with activated module)
  • Fixed: GPIO Library for STM32F4xx MCUs.
  • Fixed: System Library for STM32F3xx MCUs, HSI calibration.
  • Fixed: Initial oscillator start-up to accomodate frequency change after software reset (bootloader issue).


  • New! Digital Signal Processing (FFT_Convolution, FIR_Demo, IIR_Demo, Vectors, Matrix).
Site license banner

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.

Site License

Site license banner

Site Licenses for MikroElektronika Compilers

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

Site License Inquiry

Clicking on Submit will open a Support Ticket which will be assigned to the person who can best deal with the issue in question. You will immediately receive an automated response message and will be able to monitor communication thread through our Support Center.

You Might Also Need

Products in the same category