Skip to content
Snippets Groups Projects
Commit 1481b134 authored by zkasmi's avatar zkasmi
Browse files

Small changes.

parent ceab2f54
No related branches found
No related tags found
No related merge requests found
# Creating an application {#creating-an-application}
# Creating an application {#creating-an-application}
\author Zakaria Kasmi
......@@ -6,7 +6,7 @@
An application can be created for full-fledged or resource-limited devices.
# Creating an application for full-fledged devices {#creating-an-application-full-fledge}
# Creating an application for full-fledged devices {#creating-an-application-full-fledge}
We recommend to use the [Eclipse IDE] (https://www.eclipse.org/) for C/C++ Developers for creating
own application. The simplest way to write your own application, is to put your *.c and *.h files under the
......@@ -17,14 +17,14 @@ button to browse to the header-directory and the select the ''Apply'' and ''OK''
oriented to the main.c and the examples under the src-directory.
# Creating an application for resource-limited devices {#creating-an-application-res-lim}
# Creating an application for resource-limited devices {#creating-an-application-res-lim}
To create your own application for a resource limited device you need to create a directory
containing one or multiple C file(s) with your source code and a Makefile. An example Makefile is
available in the `src` folder of the [RcdMathLib repository]
(https://git.imp.fu-berlin.de/zkasmi/my_lib_full_fledged_devices/tree/master/RcdMathLib_app).
# The main function {#the-main-function}
# The main function {#the-main-function}
RIOT starts two threads the idle and main threads after the board is initialized.
The idle thread has the lowest priority while the main thread has a priority that
......@@ -53,9 +53,9 @@ int main(void)
The above C code shows an application testing the basic operations sub-modules.
This application run operations of the vector and matrix sub-modules.
# The application's Makefile {#the-applications-makefile}
# The application's Makefile {#the-applications-makefile}
## The minimal Makefile {#the-minimal-makefile}
## The minimal Makefile {#the-minimal-makefile}
At minimum the Makefile of an application (see @ref getting-started) needs to
define the following macros:
......@@ -89,7 +89,7 @@ include $(RCDMATHLIB)/Makefile.include
include $(RIOTBASE)/Makefile.include
~~~~~~~~~~~~~~~~~~~~~~~~~~~
## Including modules {#including-modules}
## Including modules {#including-modules}
The modules of the RcdMathLib as well as of the RcdMathLib can be included.
In order to use additional modules, such as a particular driver or a system library, the modules'
......
# Creating modules {#creating-modules}
# Creating modules {#creating-modules}
\author Zakaria Kasmi
......@@ -17,7 +17,7 @@ Each main module includes sub-modules, for more details see
@note The following chapters concerning only resource-limited devices.
# The general structure {#the-general-structure}
# The general structure {#the-general-structure}
Modules are directories containing source and header files as well as a Makefile.
Furthermore, their API can be defined in one or more header files, residing in the include path of
......@@ -47,7 +47,7 @@ specific information to variables like INCLUDES. Modules can be used by adding t
`USEMODULE` macro of the application's Makefile.
# Module dependencies
# Module dependencies {#module-dependencies}
The module may depend on other modules to minimize code duplication. These
dependencies are defined in `Makefile.dep` with the following syntax:
......
......@@ -5,7 +5,8 @@
[TOC]
# Downloading RcdMathLib code {#downloading-RcdMathLib-code}
# Downloading RcdMathLib code {#downloading-RcdMathLib-code}
You can obtain the latest RcdMathLib code from
our [Github](https://github.com/RIOT-OS/) repository either by
......@@ -20,10 +21,10 @@ command:
git clone git://github.com/RIOT-OS/RIOT.git
~~~~~~~~
# Compiling RcdMathLib {#compiling-RcdMathLib}
# Compiling RcdMathLib {#compiling-RcdMathLib}
## Setting up a toolchain for full-fledged devices {#setting-up-a-toolchain-full-fledge}
## Setting up a toolchain for full-fledged devices {#setting-up-a-toolchain-full-fledge}
RcdMathLib can be run on full-fledged devices such as a Personal Computer
(PC) or a server. It can also be executed on the embedded system Raspberry Pi
......@@ -45,7 +46,7 @@ Environment Variables, e.g.
"C:\gcc\bin"
</BLOCKQUOTE>
## Setting up a toolchain for resource-limited devices {#setting-up-a-toolchain-res-lim}
## Setting up a toolchain for resource-limited devices {#setting-up-a-toolchain-res-lim}
Depending on the hardware you want to use, you need to first install a
corresponding toolchain. We recommend the use of the [RIOT-OS] (https://riot-os.org/), since
......@@ -60,7 +61,7 @@ as well as the development of multi-tasking applications in a computer system. T
* [Atmel ATmega](https://github.com/RIOT-OS/RIOT/wiki/Family%3A-ATmega)
* [native](https://github.com/RIOT-OS/RIOT/wiki/Family:-native)
## The build system for full-fledged devices {#the-build-system-full-fledge}
## The build system for full-fledged devices {#the-build-system-full-fledge}
RcdMathLib can be built using the [Eclipse IDE] (https://www.eclipse.org/) for C/C++ Developers.
The simplest way to compile and link an application with the RcdMathLib is: Firstly, to download [RcdMathLib_eclipse_version.zip](https://git.imp.fu-berlin.de/zkasmi/test_my_lib/blob/master/RcdMathLib_eclipse_version.zip) file or to clone it:
......@@ -109,7 +110,7 @@ Set up the [Eclipse IDE] (https://www.eclipse.org/) as follows:
-# Setting the include-paths of the modules in the Eclipse IDE: Properties/Paths and Symbols/GNU C
The build system for resource-limited devices {#the-build-system-res-lim}
The build system for resource-limited devices {#the-build-system-res-lim}
---------------------------------------------
RcdMathLib and RIOT use [GNU make](https://www.gnu.org/software/make/) as build system. The
simplest way to compile and link an application with RcdMathLib, is to set up a
......@@ -172,7 +173,7 @@ Please visit the [Wiki](https://github.com/RIOT-OS/RIOT/wiki/The-Make-Build-Syst
about the build system of the RIOT.
## Building and executing an example for resource-limited devices {#building-and-executing-an-example-res-lim}
## Building and executing an example for resource-limited devices {#building-and-executing-an-example-res-lim}
RcdMathLib provides a number of examples in the `examples/` directory. Every example
has a README that documents its usage and its purpose. Furthermore the examples are described in the
......
......@@ -4,7 +4,7 @@
[TOC]
# RcdMathLib in a nutshell {#RcdMathLib-in-a-nutshell}
# RcdMathLib in a nutshell {#RcdMathLib-in-a-nutshell}
RcdMathLib is an open-source library for numerical linear and non-linear
algebra designed to match the requirements of resource-limited or embedded
......@@ -14,7 +14,7 @@ solving problems of regression smoothing and curve fitting. It also allows for
calculating as well as optimizing a position on a mobile device.
# Download and use RcdMathLib {#download-use-RcdMathLib}
# Download and use RcdMathLib {#download-use-RcdMathLib}
The simplest way to use the RcdMathLib for resource-limited devices is to
......@@ -22,7 +22,7 @@ download the Elipse project (TODO). The following Eclipse project enables
also the RcdMathLib for full-fledged platforms (TODO).
# The quickest start {#the-quickest-start}
# The quickest start {#the-quickest-start}
You can run RcdMathLib on most resource-limited such as the STM32 Discovery board as
well as on a PC.
......@@ -37,7 +37,7 @@ make all
The example above shows how to use the basic operations of the RcdMathLib such as the vector or
the matrix operations.
# Structure {#structure}
# Structure {#structure}
This section walks you through RcdMathLib's structure to easily find your way around in RcdMathLib's code base.
......@@ -134,7 +134,7 @@ output after running `make doc`.
# Further information {#further-information}
# Further information {#further-information}
- @ref getting-started
- @ref creating-an-application
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment