Creating New Library

mikroC PRO for PIC32 allows you to create your own libraries. In order to create a library in mikroC PRO for PIC32 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:
    DriveName:\Program Files\Mikroelektronika\mikroC PRO for PIC32\Uses\
  3. Write a code for your library and save it.
  4. Add __Lib_Example file in some project, see Project Manager. Recompile the project.
    If you wish to use this library for all MCUs, then you should go to Tools › Options › Output settings, and check Build all files as library box.
    This will build libraries in a common form which will work with all MCUs. If this box is not checked, then library will be built for selected MCU.
    Bear in mind that compiler will report an error if a library built for specific MCU is used for another one.
  5. Compiled file __Lib_Example.emcl should appear in ...\mikroC PRO for PIC32\Uses\ folder.
  6. Open the definition file for the MCU that you want to use. This file is placed in the compiler's Defs folder:
    DriveName:\Program Files\Mikroelektronika\mikroC PRO for PIC32\Defs\
    and it is named MCU_NAME.mlk, for example P32MX460F512L.mlk
  7. Add the the following segment of code to <LIBRARIES> node of the definition file (definition file is in XML format):
  8. Add Library to mlk file for each MCU that you want to use with your library.
  9. Click Refresh button in Library Manager
  10. Example_Library should appear in the Library manager window.

Multiple Library Versions

Library Alias represents unique name that is linked to corresponding Library .emcl file. For example UART library for P32MX460F512L is different from UART library for P32MX675F512L MCU. Therefore, two different UART Library versions were made, see mlk files for these two MCUs. Note that these two libraries have the same Library Alias (UART) in both mlk files. This approach enables you to have identical representation of UART library for both MCUs in Library Manager.

Want more examples and libraries? 
Find them on LibStock - A place for the code