Free shipment for orders above $200 - offer lasts until November 20 at 11:00 CET
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

mikroBasic PRO for AVR

mikroBasic PRO for AVR is a full-featured Basic compiler for AVR devices.

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, integrated Visual TFT software, detailed documentation, a full box of additional tools.

Choose your license

mikroBasic PRO for AVR 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.

mikroBasic PRO for AVR is a full-featured Basic compiler for AVR devices.

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, integrated Visual TFT software, detailed documentation, a full box of additional tools.

Library manager Libstock

You will love mikroBasic!


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.


mikroBasic 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 104 ready-made working examples, to help you understand how the library works or give you useful code snippets for your project.


The mikroBasic PRO for AVR currently supports 207 AVR 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.

VisualTFT Software

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.


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.

Comprehensive help file

The perfect toolbox

mikroBasic 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 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 mikroBasic 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. Easily switch between the projects as often as you want.

Library manager

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

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 mikroBasic PRO for AVR 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.

Interrupt Assistant Window
Active Comment Preview

Active Comments

We have developed Active Comments - a unique feature of mikroBasic PRO for AVR. 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. mikroBasic PRO for AVR 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
  • Interrupt Assistant
  • LCD Custom Character
  • Seven Segment Editor
  • UDP Terminal
  • USART Terminal
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.

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.

Watch Clock
Functions Sorted By Size

Advanced Statistics

After you build your project, you can always look under the hood with mikroBasic’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, mikroBasic, mikroPascal for AVR v7.0.1

The live update of the AVR compilers (version 7.0.1) fixes and improves the user experience in the Visual TFT mode.

  • Release date: August 29, 2017
  • IDE build: 7.1.0
  • Command line build: 7.0.0

List of features applies to all three languages (mikroC, mikroPascal, mikroBasic) unless specified otherwise.

See the Project Log for the full list of new features, improvements, and fixes.

Compiler Changelog

Version 7.0.1

cmd line build 7.0.0


  • Fixed: Close project sometimes remove one source/header path
  • Fixed: Image rotation centre differs between design and what is displayed on hardware. (Visual TFT)
  • Fixed: After controller is changed from non FT8xx to FT8xx info about switching to FT8xx keeps popping up. (Visual TFT)
  • Fixed: Touch panel controller tied to FT8xx sometimes doesn't associate right values on drop down combo boxes. (Visual TFT)
  • Fixed: EveScreenSaver Tag value is set to 1 upon creation (should be 255). (Visual TFT)
  • Fixed: Typing value of color (FT8xx project) does not get converted to correct RGB hex value. (Visual TFT)

Version 7.0.0

The new 7.00 version of the AVR compilers integrates Visual TFT, the GUI design software.

  • Release date: May 11, 2017.
  • IDE build: 7.0.0
  • cmd line build: 7.0.0


Additional 10 MCU supported:



  • Fixed: Incorrect arithmetic division of signed integers by powers of two.
  • Fixed: Incorrect initialization of globals and statics in certain cases.
  • Fixed: Incorrect parameter passing in certain cases.
  • Fixed: Coff file generation failed in a certain case.



  • Visual TFT integrated into compiler IDE
  • Design, Code, Compile, Debug, Program... All from one place
  • Simple and fast switch between design and coding
  • Added code 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 in one place
  • Easy switching from old projects
  • Added site license activation.
  • Key file license is now obsolete
  • 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 the source is present.
  • FAT32, FT800(1), FT810(1) and FT812(3) now come pre-installed with the compiler (Visual TFT part requirements)


  • Added a 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
  •  Code completion for pascal and basic now supports array of records, array of pointers on record
  • 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
  • USART Terminal exceptions in various cases
  • USART Terminal received data may be lost
  • USART Terminal sending data slowly
  • 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
  • IDE couldn't find AVR FLASH if it was installed for "All Users"


  • Added support for STMPE610 controller
  • Added external reference to all ADC libraries (forum enhancement poll request)
  • Added timeout in all TWI(I2C) libraries (forum enhancement poll request)
  • Added function pointers in TWI(I2C)I2C libraries


  •  Added bootloader example for MINI-AT
  •  Added example sets for Mikromedia for XMega and Custom FT8xx control

AVRFlash 2.20

Additional 12 MCU supported in AVRFlash:


Version 6.1.0


Additional 10 MCU supported:  



  • Fixed: Dead code optimization issue with initialized auto variables
  • Fixed: Initialization with implicit cast from
  • Fixed: Optimization wrong metod index caused code generator to fail


  • New: Add local variable by identifier (CTRL+SHIFT+V)
  • New: Wild Card '*' supported in code completition
  • New: Code completition handles 1 character permutation
  • New: Added Back and Forward navigation trough files and code (similar to web browser navigation)
  • New: Project Explorer
    • added stop active folder search option
    • added folder up shortcut
    • added hint on files and folders
  • New: Library Manager
    • added hint on function to show function parameters
    • added drag and drop of function into editor
  • Improved: Project Wizard
    • removed steps (tabs) when creating new project
  • Improved: Project Manager
    • updated tool buttons and hits
    • added hint on files and folders
  • Fixed: Cancel New Project Wizard still creates project on disk (new project will now be saved only on user request)
  • Fixed: Removing non-existing file from ProjectManager in some cases caused IDE to halt.


  • New: Added assert.h and stdbool.h header files.
  • Fixed: Bug with CAN standard message
  • Improved: 8-bit PWM libraries are enhanced with functions to configure each of the PWM channels individually

Version 6.0.0


  • Improved: Faster optimization and linkage.
  • Improved: Allocation of locals to registers.
  • Fixed: Call tree generator did not work for specific examples.
  • Fixed: Pointer to types that has overridden memory specifier was incorrectly dereferenced.


  • Improved: Function tree changed to work with new call tree generator.


  • New: Added support for new TFT controller ILI9341 in both 8bit nad 16bit mode.


  • New: Added EasyAVR7 examples.

Version 5.8.0


  • New: Additional 18 MCU supported
ATxmega128A1U ATxmega32C4
ATxmega128A4U ATxmega384C3
ATxmega128B1  ATxmega384D3
ATxmega128B3  ATxmega64A1U
ATxmega128C3  ATxmega64A4U
ATxmega128D4  ATxmega64B1
ATxmega16C4 ATxmega64B3
ATxmega192C3  ATxmega64C3
ATxmega256C3  ATxmega64D4
  • New: Initializer of local variables can be variable expression
  • Improved: Peephole optimizer minor changes
  • Fixed: Const Folding of ternar operator
  • Fixed: Handling of void in expressions
  • Fixed: Anonymous union definition and tag definition conflict


  • 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: Highlighting of comment that contains \ at end of line
  • 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


  • New: Low level TFT Library functions are now open source, available for user editing (located in __Lib_TFT_Defs, __Lib_TFT_16bit_Defs)
  • New: Additional TFT controllers supported:
    • HX8347G (16-bit communication)
    • ILI9340 (8-bit communication)
    • ILI9481 (8-bit communication)
  • New: Added standard headers stdint.h, stdio.h, stdlib.h and string.h
  • Improved: T6963C, SPI_T6963C and S1D13700 libraries supporting invert color

Version 5.6.0


  • New: Interrupt context saving handling (ICS keyword)
  • Improved: Faster compiling
  • Fixed: Interrupt vector table RJMPs


  • New: Welcome screen added
  • New: Interrupt assistant hint button inside code editor
  • New: #define MACROS from included files are listed in Code Explorer
  • New: #define MACROS are added to Code Assistant
  • New: Update Project Manager after cleaning project files using ClearProject
  • New: Double Click on bookmark in Bookmark editor opens file and positioniing on line where bookmark is placed
  • New: Remove all breakpoints option implemented
  • Improved: Bookmark Editor. You can now view bookmark IDs
  • Improved: Bookmark Editor. You can now see all files in project containing any bookmark
  • Improved: Dongle handling, plug/unplug dongle detection
  • Improved: Dongle handling, plug/unplug dongle detection
  • Fixed: Progress Bar window did not have border
  • Fixed: Undo command in editor doesn't return to saved state of file
  • Fixed: SaveBookmarks doesn't work
  • Fixed: LoadBookmarks doesn't work
  • Fixed: Find decalration doesn't locate #define MACROS from included files
  • Fixed: Multiple row word-by-word selection


  • Fixed: ADC_Get_Sample() cleared user defined voltage references

Version 5.4.0


  • Improved: Maintenance release, several bugs fixed
  • Fixed: Case sensitivity bug in 5.20

Version 5.2.0


  • New! Additional chips supported:


  • New: Added progress bar when unistalling user packages
  • New: Added option to reload project file which has been externaly changed
  • New: Breakpoints are now saved to file.
  • New: Breakpoints are loaded when opening file.


  • New! TFT Library supporting following controllers
    • ILI9340 (16-bit commmunication)
    • ILI9342 (16-bit commmunication)
    • ILI9481 (16-bit commmunication)
    • ILI9481 (16-bit commmunication)
    • SSD1963 (16-bit commmunication)
    • R61526 (8-bit commmunication)
    • ST7715R (8-bit commmunication)
    • HX8347G (8-bit commmunication)
    • SSD1963 (8-bit commmunication)
  • New! PWM Library for XMEGA
  • New! Timer Library for XMEGA
  • Improved: MMC FAT16 library
    • directory operations added (creation, removal, content listing, rename)
    • new file operations added (seek, tell, rename)
  • Fixed: FloatToString for large negative numbers returned string without sign
  • Fixed: strstr function in some cases returned incorrect result

Version 5.4.0


  • New: Heap option added to compiler
  • Improved: Faster loading of mcl files
  • Improved: Faster Linker
  • Improved: Asm code can be written in the same line with a label
  • Improved: system function "__CCD2W" is linked only if it is used
  • Fixed: Pointer to Typed const code far struct has been intepreted as pointer to RAM
  • Fixed: LST file lists only used global variables
  • Fixed: Different number of parameters in function definition and in extern declaration cause linker crash in some cases


  • New! Project Explorer
  • We have introduced Project Explorer, a great new window for easier access to the examples and your projects. It uses fast recursion algorithms for fast searching of your project files within folder tree. You'll get used to it quickly, and you'll love working with it.
  • New! Code assistant
  • Specially upgraded to include struct field members, and should work for any structure depth (does not ignore scope any more). If there are several objects with same name but different scope, only ones visible in current scope are shown. We did the same with Find Declaration and Run-time value hints.
  • New! Option to select heap feature
  • New! Project Explorer
    • Set anchor for directory edit
    • Restore last used folder on startup
  • New! Shortcut CTRL + ALT + S (show Statistics)
  • Improved: Search project files in Windows Explorer style
  • Improved: Add a project to project group by single mouse click
  • Improved: Search Paths Editor
    • Copy/Cut/Paste/Select All options for search paths editor
    • Assigned shotcut CTRL + SHIFT + S
  • Improved: Statistics is no longer a "modal" window, but rather "stay on top"
  • Improved: AVR Bootloader Tool
  • Fixed: In some cases IDE freezes if MCU is changed in Project Settings
  • Fixed: IDE sends wrong command line to programmer if EEPROM file is included in project
  • Fixed: Visible Statistics are updated after build
  • Fixed: 32 bit icons fail to load on some graphic cards


  • New! Memory Manager library
  • New! CAN Library
  • New! Added routines for work with images and fonts stored on external resourse (MMC/SD card, external flash, etc.). Routines added for TFT, GLCD, T6963C and S1D13700 libraries.
  • New! Added functions for writing text stored in flash for TFT, GLCD, T6963C and S1D13700 libraries.
  • Improved! MMC library, added functions for multi read block mode.
  • Improved! UART Library, added generic routines which uses the active UART module.
  • Improved! SPI Library, added generic routines which uses the active SPI module.
  • Fixed: pow(x,y) function returned 0 for (0,0) and for x,y < 0
  • Fixed: OneWire library issue with xmega MCU's
  • Fixed: T6963C library issue with xmega MCU's
  • Fixed: Expander_Init_Advanced, CS pin directon wasn't set properly
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