libhal-google / libhal

A collection of interfaces and abstractions for embedded peripherals and devices using modern C++
Apache License 2.0
86 stars 17 forks source link

libhal

✅CI coverage GitHub stars GitHub forks GitHub issues

The foundation of the libhal ecosystem, containing the core hardware interfaces used to make the whole ecosystem work.

📚 Software APIs & Usage

To learn about the available drivers and APIs see the API Reference documentation page or look at the include/libhal directory.

🧰 Setup

Following the 🚀 Getting Started instructions.

📦 Adding libhal to your project

This section assumes you are using the libhal-starter project.

Add the following to your requirements() method to the ConanFile class:

    def requirements(self):
          self.requires("libhal/[^2.0.3]", transitive_headers=True)

The version number can be changed to whatever is appropriate for your application. If you don't know, using the latest is usually a good choice.

Normally, this is not done, as usually libhal is into the code base via implementation libraries such libhal-lpc40 and libhal-stm32f1 for peripheral drivers, or, libhal-esp8266 and libhal-mpu for device drivers.

:busts_in_silhouette: Contributing

See CONTRIBUTING.md for details.

License

Apache 2.0; see LICENSE for details.

Disclaimer

This project is not an official Google project. It is not supported by Google and Google specifically disclaims all warranties as to its quality, merchantability, or fitness for a particular purpose.