Compare commits

..

10 Commits

Author SHA1 Message Date
62dc018b29 Update uart submodule 2020-04-13 17:17:59 +02:00
b449b5538a Update uart submodule 2020-04-13 16:44:10 +02:00
fe917b8a74 Update uart submodule 2020-04-13 13:06:49 +02:00
f3e7bff402 Update submodules 2020-04-13 00:05:25 +02:00
303bb408a0 Updated uart submodule 2020-04-07 03:55:07 +02:00
efdecb11d1 Updated submodules 2020-04-05 03:41:40 +02:00
8afab00d65 Finished all goals 2020-02-21 21:55:04 +01:00
c12d4aa46d Finished adc implementation 2020-02-21 21:54:36 +01:00
50ec81ece6 Removed timer and PWM library as the implementation is unnecessarily complicated for little convenience gain 2020-02-21 18:01:38 +01:00
5f083e6fe9 Clarified wording 2020-02-21 18:00:38 +01:00
3 changed files with 7 additions and 21 deletions

View File

@@ -22,7 +22,7 @@ The ADC module provides an easy way to configure the mode of operation and will
### UART ### 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. 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. 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 ## Goals
- IO - IO
@@ -50,9 +42,9 @@ The PWM mode of the hardware timer can also be used. Additionally, if PWM is nee
- [x] Interface for mapping io-pins onto virtual io-ports, where the pins do not have to be located on the same hardware port - [x] Interface for mapping io-pins onto virtual io-ports, where the pins do not have to be located on the same hardware port
- [x] Provide an example showcasing the usage and possibilities - [x] Provide an example showcasing the usage and possibilities
- ADC - ADC
- [ ] Support all hardware provided configuration options - [x] Support common usage with easy extendability
- [ ] Compile-time check for correct hardware configuration - [x] Compile-time check for correct hardware configuration
- [ ] Provide an example showcasing the usage and possibilities - [x] Provide an example showcasing the usage and possibilities
- UART - UART
- [x] Separation of interface and backend-driver - [x] Separation of interface and backend-driver
- [x] Support common usage with easy extendability - [x] Support common usage with easy extendability
@@ -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] Support common usage with easy extendability
- [x] Compile-time check for correct hardware configuration - [x] Compile-time check for correct hardware configuration
- [x] Provide an example showcasing the usage and possibilities - [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 - General
- [ ] Support for most common AVR chips (ATmega8, ATmega328, ATtiny85, ...) - [x] Support for most common AVR chips (ATmega8, ATmega328, ATtiny85, ...)

2
adc

Submodule adc updated: 4f79d1d1d8...edd1c53401

2
uart

Submodule uart updated: 991a67bd86...e760cf541c