Skip to content

StrahinjaJacimovic/mikrosdk_v2

 
 

Repository files navigation

mikroSDK 2.0

SDK Version


About

mikroSDK 2.0 is an embedded software development framework designed to simplify
and accelerate application development on Mikroe hardware platform,
specifically for Click Boards™ and other extension board drivers, on a wide range
of microcontroller vendors and architectures. It includes peripheral libraries
and drivers, middleware, board support, and application layer libraries like
Graphic Library, Visual TFT, Logger, Console and many more to come (eg. HID, FAT32 etc.).
It also comes with examples and user documentation. mikroSDK 2.0 applications can
be reused on any mikroSDK 2.0 compatible platform.

mikroSDK 2.0 platform can be extended by Components which are Click Boards™ and
other extension board drivers.

Board support comes with definitions for pin connections between microcontroller,
MCU card and board sockets (eg. mikroBUS™) and special function pinouts,
so you can easily map your driver or application to the board.

The peripheral driver library simplifies and unifies usage of microcontrollers,
so reading a microcontroller's user manual, in most cases, is not necessary.
It also allows writing portable and re-usable applications.

Design Goals

  • Standard C.
    • Large code base can be easely reused with other platforms (Linux, Arduino).
  • Fast development.
    • Simplify developing applications with portability, fast prototyping in mind,
      minimal impact on performance.
  • Ease of use.
    • Simplifies the usage of microcontrollers, providing an abstraction to the
      hardware and high-value middleware.
  • Layered and modular software architecture.

Architecture diagram

This is the basic architecture diagram.

mikroSDK 2.0 diagram

Peripheral Libraries (HAL)

Provides common peripheral functionality, abstracting the hardware peripheral
register access. The interface hides the register access details and various
MCU peripheral instantiation differences so that the application can be
abstracted from the low-level hardware details.

Peripheral Drivers (DRV)

The Driver specification is a software API which describes peripheral driver
interfaces for middle-ware stacks and user applications. It adds higher level
functionality, implementing common protocols, handling multiple clients for
peripheries and their re-initialization.

Components

Wide range of reusable driver libraries for Click Boards™ and
extension boards. The component should use peripheral drivers (DRV) to
communicate with MCU peripherals and board support to port driver to/br> specific pin mappings.

Board support

Board support consists of pin mappings for sockets and other special function
pins. It maps specific board pins to MCU target pins. It can also contain other
useful information necessary for drivers to work properly on the board.

API

High level libraries for commonly used services, so developers do not need to
reinvent the wheel, shortening development cycles. It comes with new improved
Graphic library, Visual TFT library for GUI applications, Logger,
Console framework, Input library, and many more to come.

Key Features

  • Application framework for abstraction and code re-usability.
  • Layered architecture.
  • Simplified microcontroller common usage.
  • Easy development of Click drivers.

Release notes ( roadmap )

The release notes detail the current release.
You can also find information about previous versions. Just follow the link provided.

User manual

mikroSDK 2.0 user manual can be found HERE.

Whitepaper

mikroSDK 2.0 whitepaper documentation can be found HERE.

Reference manual

mikroSDK 2.0 reference manual can be found HERE.

License

The software is provided under Mikroe Software License Agreement.
Contributions to this project are accepted under the same license.

Alternatively, this file may be used for
non-commercial projects under the terms of the GNU Lesser
General Public License version 3 as published by the Free Software
Foundation. Click HERE to see the license.


Bugs Requests


About

mikroSDK v2.0.0 official release

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 100.0%