Giter VIP home page Giter VIP logo

librambutan's Introduction

         _ _ _                         _           _              
        | (_) |__  _ __ __ _ _ __ ___ | |__  _   _| |_ __ _ _ __  
        | | | '_ \| '__/ _` | '_ ` _ \| '_ \| | | | __/ _` | '_ \ 
        | | | |_) | | | (_| | | | | | | |_) | |_| | || (_| | | | |
        |_|_|_.__/|_|  \__,_|_| |_| |_|_.__/ \__,_|\__\__,_|_| |_|


The latest version of this repository can be found here:

    https://github.com/rambutan32/librambutan

IMPORTANT: read HACKING _before_ submitting patches.

General information
------------------------------------------------------------------------------

librambutan is a fork of Leaflab's libmaple firmware libraries. As of 2015
Leaflabs is not actively maintaining libmaple and the original Maple series
hardware is End Of Life. For the foreseeable future the name 'libmaple' will
continue to be used in documentation and filenames for backwards compatability.
You can get the latest information about the Rambutan project at:

    https://forums.rambutan.cc

The original libmaple can be found at:

    https://github.com/leaflabs/libmaple

librambutan is a library for programming ST's STM32 line of Cortex M3
microcontrollers.  It has a pure C layer, libmaple proper, which does
most of the work, and a C++ layer, Wirish, which provides high-level
convenience functions and a Wiring/Arduino-compatible interface.

libmaple is designed for portability, and currently runs on a variety
of STM32F1 performance and value line MCUs, with experimental support
for STM32F2 MCUs.

Using librambutan
------------------------------------------------------------------------------

A HOWTO on setting up this library for use from the command line in a Unix
environment is available here:

    http://docs.rambutan.cc/projects/librambutan/en/master/unix-toolchain.html

At a minimum you will need the gcc-arm-none-eabi toolchain on your path,
including the newlib libc and the libstdc++ libraries.

Documentation, Etc.
------------------------------------------------------------------------------

Hosted HTML documentation for several versions of librambutan are available at:

    http://docs.rambutan.cc/projects/librambutan/en/master/

libmaple is well documented via Doxygen comments.  The HTML documentation
referenced above (which also includes the Doxygen output) is automatically
generated from the source files in the docs directory. See the READMEs there
for details.

Repository Layout
------------------------------------------------------------------------------

/build/

    Compiler output

/contrib/

    Community-contributed resources.

/examples/

    Example code and test programs. Copy these to /main.cpp to compile them.

/libmaple/

    This is the meat of the library.  C only, no C++.  The
    Arduino-like compatibility layer (in C++) is in /wirish/.

/libraries/

    Special-purpose libraries that don't merit inclusion in the
    /libmaple/ and /wirish/ directories, which are intended for
    general use.  Arduino-compatible libraries go here.

/LICENSE

    Licensing and copyright information. librambutan is (mostly) under an MIT
    license.

/main.cpp.example

    main.cpp is required for a successful build but is non-existent by
    default; use this file as a template for building your program. By
    default, just blinks an LED.

/Makefile

    libmaple build instructions for GNU Make. (This is supplemented by
    build-targets.mk, the rules.mk files throughout the tree, and the
    files in support/make/).

/notes/

    Unstructured text notes that may be useful.

/README

    This file ;).

/support/

    Support files and scripts for various purposes.

    gdb/              GDB scripts.
    ld/               Linker scripts.
    make/             Additional files used by the top-level Makefile.
    scripts/          Miscellany.
    doxygen/          Doxygen configuration.
    stm32loader.py    Upload script for the STM32's built-in USART bootloader.

/wirish/

    Extra wrappers and functionality around the lower level code in
    /libmaple/. These files implement an Arduino "Wiring"-like
    library.

librambutan's People

Contributors

andyscott avatar anton19286 avatar bnewbold avatar bruceperens avatar crenn avatar ctz avatar dipspb avatar gauteh avatar gregwar avatar iperry avatar jesstherobot avatar jonatanolofsson avatar lostinspacebar avatar mlu avatar nis avatar nzmichaelh avatar pix avatar poslathian avatar rryan avatar soycamo avatar speakman avatar sphing avatar torfbolt avatar wesen avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.