MikroElektronika Learn

Compilers Roadmap Update

PIC Compilers Roadmap

16 Mar , 2016  

mikroC, mikroBasic, mikroPascal for PIC v7.1.0

The new version of our most popular compilers integrates Visual TFT, the GUI design software.

  • Release date: March 16, 2017
  • IDE build: 7.1.0
  • cmd line build: 7.0.0

List of features applies to all three languages unless specified otherwise.

Make sure you have the latest version of the PIC compilers while you wait for the new one. You can download it from this page. You can also download the demo version. License owners are entitled to a lifetime of free upgrades.

Project Log

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    P16LF18313
P16F1509    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.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    P16LF18313
P16F1779    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 and fixes

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

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.

Compiler

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

Compiler

 
  • New: Additional 8 MCU supported:
PIC16F1574	PIC16F1575	PIC16F1578	PIC16F1579
PIC16F1764	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.

Compiler

  • New: Additional 61 MCU supported:
PIC12F1571	PIC16F1718	PIC16LF1713	PIC18LF45K50
PIC12F1572	PIC16F1719	PIC16LF1716	PIC12F1612
PIC16F1784	PIC16LF1717	PIC12LF1501	PIC16F1786
PIC16LF1718	PIC12LF1571	PIC16F1787	PIC16LF1719
PIC12LF1572	PIC16F1788	PIC16LF1784	PIC12LF1612
PIC16F1789	PIC16LF1786	PIC16F1454	PIC16F1829LIN
PIC16LF1787	PIC16F1512	PIC16F753	PIC16LF1788
PIC16F1513	PIC16HV753	PIC16LF1789	PIC16F1613
PIC16LF1454	PIC18F65J94	PIC16F1703	PIC16LF1512
PIC18F66J94	PIC16F1704	PIC16LF1513	PIC18F67J94
PIC16F1705	PIC16LF1613	PIC18F85J94	PIC16F1707
PIC16LF1703	PIC18F86J94	PIC16F1708	PIC16LF1704
PIC18F87J94	PIC16F1709	PIC16LF1705	PIC18F95J94
PIC16F1713	PIC16LF1707	PIC18F96J94	PIC16F1716
PIC16LF1708	PIC18F97J94	PIC16F1717	PIC16LF1709
PIC18LF24K50
  • 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

Compiler

 
  • 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

IDE

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

Libraries

  • Fixed: Changed PWM functions names for PIC16 enchanced chips (145x and 150x)

Compiler

  • New: Additional 19 MCU supported:
PIC12F1501	PIC16F1455
PIC16F1459	PIC16F1508
PIC16F1509	PIC16LF1455
PIC16LF1459	PIC16LF1503
PIC16LF1507	PIC16LF1508
PIC16LF1509	PIC16LF1782
PIC16LF1783	PIC16LF1847
PIC18F24K50	PIC18F25K50
PIC18F45K50	PIC18F66J99
PIC18LF25K50
  • 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.

By