# Practical Guide to Bare Metal C++

## Practical Guide to Bare Metal C++

- [Introduction](https://alex-robenko.gitbook.io/bare_metal_cpp/master.md)
- [Audience](https://alex-robenko.gitbook.io/bare_metal_cpp/audience.md)
- [C++ Popularity](https://alex-robenko.gitbook.io/bare_metal_cpp/popularity.md)
- [Benefits of C++](https://alex-robenko.gitbook.io/bare_metal_cpp/benefits.md)
- [Contents of This Book](https://alex-robenko.gitbook.io/bare_metal_cpp/contents.md)
- [Contribution](https://alex-robenko.gitbook.io/bare_metal_cpp/contribution.md)
- [Know Your Compiler Output](https://alex-robenko.gitbook.io/bare_metal_cpp/compiler_output.md)
- [Test Applications](https://alex-robenko.gitbook.io/bare_metal_cpp/compiler_output/test_apps.md)
- [Get Simple Application Compiled](https://alex-robenko.gitbook.io/bare_metal_cpp/compiler_output/get_compiled.md)
- [Dynamic Memory Allocation](https://alex-robenko.gitbook.io/bare_metal_cpp/compiler_output/dyn_mem.md)
- [Exceptions](https://alex-robenko.gitbook.io/bare_metal_cpp/compiler_output/exceptions.md)
- [RTTI](https://alex-robenko.gitbook.io/bare_metal_cpp/compiler_output/rtti.md)
- [Removing Standard Library and C++ Runtime](https://alex-robenko.gitbook.io/bare_metal_cpp/compiler_output/nostdlib.md)
- [Static Objects](https://alex-robenko.gitbook.io/bare_metal_cpp/compiler_output/static.md)
- [Abstract Classes](https://alex-robenko.gitbook.io/bare_metal_cpp/compiler_output/abstract_classes.md)
- [Templates](https://alex-robenko.gitbook.io/bare_metal_cpp/compiler_output/templates.md)
- [Tag Dispatching](https://alex-robenko.gitbook.io/bare_metal_cpp/compiler_output/tag_dispatch.md)
- [Basic Needs](https://alex-robenko.gitbook.io/bare_metal_cpp/basic_needs.md)
- [Assertion](https://alex-robenko.gitbook.io/bare_metal_cpp/basic_needs/assertion.md)
- [Callback](https://alex-robenko.gitbook.io/bare_metal_cpp/basic_needs/callback.md)
- [Data Serialisation](https://alex-robenko.gitbook.io/bare_metal_cpp/basic_needs/serialisation.md)
- [Static (Fixed Size) Queue](https://alex-robenko.gitbook.io/bare_metal_cpp/basic_needs/queue.md)
- [Basic Concepts](https://alex-robenko.gitbook.io/bare_metal_cpp/basic_concepts.md)
- [Event Loop](https://alex-robenko.gitbook.io/bare_metal_cpp/basic_concepts/event_loop.md)
- [Device-Driver-Component](https://alex-robenko.gitbook.io/bare_metal_cpp/basic_concepts/device_driver_component.md)
- [Peripherals](https://alex-robenko.gitbook.io/bare_metal_cpp/peripherals.md)
- [Timer](https://alex-robenko.gitbook.io/bare_metal_cpp/peripherals/timer.md)
- [UART](https://alex-robenko.gitbook.io/bare_metal_cpp/peripherals/uart.md)
- [GPIO](https://alex-robenko.gitbook.io/bare_metal_cpp/peripherals/gpio.md)
- [I2C](https://alex-robenko.gitbook.io/bare_metal_cpp/peripherals/i2c.md)
- [SPI](https://alex-robenko.gitbook.io/bare_metal_cpp/peripherals/spi.md)
- [Other](https://alex-robenko.gitbook.io/bare_metal_cpp/peripherals/other.md)
