Compare commits

...

2 Commits

View File

@ -22,7 +22,7 @@ The ADC module provides an easy way to configure the mode of operation and will
### UART
The UART module provides a general interface for serial communication which is decoupled from the actual backend driver. The backend driver might be UART0 (or UART1 if available), or it might be a software UART driver on chips (pins) that don't have hardware UART support.
The UART module provides a general interface for serial communication which is decoupled from the actual backend driver. The backend driver might be UART0 (or UART1 if available), or it might be a user provided software UART driver on chips (pins) that don't have hardware UART support.
The backend might also be interrupt driven and use some configurable receive/transmit buffer, or be blocking and not need any buffers. The buffers should only be allocated in interrupt driven mode and also be compile-time allocated.
@ -34,14 +34,6 @@ The SPI module, similar to UART, is decoupled from the backend. This allows a so
The I2C module is basically identical to SPI, just with a different protocol.
### Timers
The timers module allows the configuration of the hardware timers. Compile-time checks make sure that the requested time is actually achievable with the underlying hardware timer. The prescaler will be automatically calculated at compile-time based on the clock frequency, the hardware timer used and the time requested. The prescaler can also be specified directly.
#### PWM
The PWM mode of the hardware timer can also be used. Additionally, if PWM is needed on a pin that does not have hardware PWM support, a hardware timer can be used to implement software PWM.
## Goals
- IO
@ -71,11 +63,5 @@ The PWM mode of the hardware timer can also be used. Additionally, if PWM is nee
- [x] Support common usage with easy extendability
- [x] Compile-time check for correct hardware configuration
- [x] Provide an example showcasing the usage and possibilities
- Timers
- [ ] Support all hardware provided configuration options
- PWM
- [ ] Compile-time check for correct hardware configuration
- [ ] Software PWM on pins that don't have hardware PWM support
- [ ] Provide an example showcasing the usage and possibilities
- General
- [ ] Support for most common AVR chips (ATmega8, ATmega328, ATtiny85, ...)