Utils is a compilation of useful, hardware independent, functions, data types, macros and definitions.
This is a compilation of useful functions, data types, macros and definitions. New functionalities can be added so that there is no need to reimplement them for every new project.
No screenshots available.
The following libs are present in this repository:
- basic_graphics - This is a modified version of Adafruit GFX library for Arduino into a code 100% C compatible. It has its own repository and is added as a submodule.
- control - A compilation of controller implementations. Up to this date, the only controller implemented is a PID discretized using the bilinear transform (Tustin's method), which means the controller can be designed using continuous time techniques and the controller parameters input directly to the lib.
- linear_algebra - A C library with implementations of basic operations with vectors and matrices.
- std_headers - Data types, macros and definitions that might be useful in C applications.
- sys_identification - Functions useful in modeling systems online using measurement data. Up to this date, only the least mean square (LMS) and recursive mean square algorithms are implemented.
- Other functionalities may be added in the future.
The instalation of this lib into a project of any platform is quite simple. You basicaly have four different options for how to add this repository into your project.
Just download the repository as a zip file through this link, extract the content and move it to the desired folder inside your project. Note that you will have to download the submodules manualy using the same procedure on their respective repositories.
To do that, just open the terminal inside the folder where you have your repository cloned, open the terminal and type:
git submodule add [email protected]:passoswell/utils.git
You can also specify a destination folder by using instead the following command in the terminal:
git submodule add [email protected]:passoswell/utils.git <destination folder>
Do not forget to substitute by the path of the folder where you want the submodule installed. For instance, if the folder should be called "common" instead of "utils":
git submodule add [email protected]:passoswell/utils.git common
Or if it must be stored inside a folder called "external":
git submodule add [email protected]:passoswell/utils.git external/utils
For that, open the terminal on the desired folder and use the command below:
git clone --recurse-submodules [email protected]:passoswell/utils.git
This command will download all the submodules.
To download the repository without the submodules, just use the command:
git clone [email protected]:passoswell/utils.git
This way, the submodules are not downloaded. To download a specific submodule, open the terminal inside the "utils" folder and use the following command:
git submodule update --init <submodule name>
Do not forget to substitute by the name of the desired submodule, which coincides with the name of its folder. For instance, to download the basic_graphics submodule, use:
git submodule update --init basic_graphics
This task is dependent on the tools and IDEs used and is not covered by this readme.
Example codes for most of the modules are available in the "examples" folder. For the git submodules, a "examples" folder is present in their own folder.
No features are listed.
Project is: in progress. New features will be added with time and necessity.
This project aspire to compile in one repository features that where used by the author in the past and will become handy in future projects.
The template for this readme file was created by @flynerdpl.
Created by @passoswell.