AVR-mUPI  v1.2
A unified application programming interface for megaAVR devices.
Installing AVR-mUPI

How is AVR-mUPI distributed?

AVR-mUPI is distributed in a compressed tarball containing all the source files necessary to build the libraries, the documentation in html format and the examples. In addition to the source files, the precompiled libraries, documentation and examples are also included. The tarball filename has the following format:


where <version> is the release version of the product and <build_date> is the release build date.

How to install AVR-mUPI?

Before using AVR-mUPI, it is necessary to install it on your computer by executing the following generic procedure:

  1. Copy the AVR-mUPI tarball <tarball> in a temporary directory <tmp_dir>.
  2. Uncompress and extract the contents of the tarball <tarball> in the temporary directory <tmp_dir>. This step will create a new subdirectory <tarball_dir> inside the temporary directory <tmp_dir> containing all the AVR-mUPI files (see below). The name of the subdirectory <tarball_dir> will have the form AVR-mUPI_v<version>_<build_date>.
  3. Determine the directory <install_dir> where you are going to install AVR-mUPI:
    • If it already exists, delete its contents.
    • If it does not exist, create it.
  4. Copy the subdirectories inc and lib from the tarball directory <tarball_dir> into the installation directory <install_dir>.
  5. If applicable, set the correct owner, group and permissions to the directory <install_dir> and its contents.
After uncompression and extraction of the AVR-mUPI tarball, the following directory tree will be created:
    ChangeLog         <- AVR-mUPI modification log file.
    - doc             <- AVR-mUPI documentation.
      + doxygen       <- doxygen files for the generation of the documentation in html format.
      - examples      <- Examples folder.
        - example_1
          + bin
        - example_2
          + bin
        - example_3
          + bin
        - example_4
          + bin
        - example_5
          + bin
        - example_6
          + bin
        - example_7
          + bin
        - example_8
          + bin
        - example_9
          + bin
        - example_10
          + bin
        - example_11
          + bin
        - example_12
          + bin
        - example_13
          + bin
        - example_14
          + bin
        - library
          + inc
          + lib
          + src
      + html          <- Documentation in html format.
    - inc             <- AVR-mUPI Header files.
      + dev           <- Device definition files.
      - if            <- Interface definition files.
        + ac
        + adc
        + eeprom
        + mcu
        + port
        + spi
        + timer16
        + timer8
        + twi
        + usart
        + wdt
        + xint
        + xmem
    + lib             <- AVR-mUPI library files.
    LICENSE           <- AVR-mUPI license file.
    + mak             <- AVR-mUPI complementary make files.
    makefile          <- AVR-mUPI main make file.
    NEWS              <- AVR-mUPI news file.
    + src             <- AVR-mUPI source files.
The bin and lib subdirectories contain subdirectories for each supported device where the library (.a) and executable (.hex) files are located. These subdirectories are not expanded in the tree structure for the sake of clarity.

The next chapter shows how to configure your development environment to start using AVR-mUPI in your applications.

How to upgrade AVR-mUPI?

Execute the following steps to upgrade an installed version of AVR-mUPI:

  1. Remove the AVR-mUPI installation directory <install_dir>.
  2. Execute the installation procedure described in chapter How to install AVR-mUPI? in order to install the new version of AVR-mUPI.