Commit Graph
12 Commits
Author SHA1 Message Date
bors[bot]andmuellerr 54e016f0e3 Merge #24
24: Bump to v0.2.3 r=robamu a=robamu

- Added API to reset peripherals
- Improved API of timer.
- Separation of TIM reg and TIM pin interface

Co-authored-by: Robin Mueller <robin.mueller.m@gmail.com>
2021-12-05 22:05:29 +00:00
bors[bot]andmuellerr 5c00459f23 Merge #23
23: Added PWM implementation and example r=robamu a=robamu

- Type safe API for the PWM peripheral

Co-authored-by: Robin Mueller <robin.mueller.m@gmail.com>
2021-12-05 16:47:38 +00:00
bors[bot]andmuellerr baec0980b7 Merge #22
22: Added EDAC API r=robamu a=robamu



Co-authored-by: Robin Mueller <robin.mueller.m@gmail.com>
2021-12-04 21:01:41 +00:00
bors[bot]andmuellerr 44cc075ba0 Merge #21
21: First I2C implementation r=robamu a=robamu

Initial I2C HAL implementation.
Only the I2cMaster was tested so far, I2cSlave will be tested next.

Master side was tested with a temerature sensor example application
in the vorago-reb1 crate

Co-authored-by: Robin Mueller <robin.mueller.m@gmail.com>
2021-12-02 11:06:40 +00:00
bors[bot]andmuellerr 70d9f123ef Merge #20
20: Smaller updates r=robamu a=robamu

Small fixes

Co-authored-by: Robin Mueller <robin.mueller.m@gmail.com>
2021-12-02 10:57:02 +00:00
bors[bot]andmuellerr 8f4add54d9 Merge #19
19: Clock passing and SPI Updates r=robamu a=robamu

1. Using `impl Into<Hertz>` instead of Hertz now to increase usability for users
2. Update for SPI API to increase usability

Co-authored-by: Robin Mueller <robin.mueller.m@gmail.com>
2021-11-21 19:20:45 +00:00
bors[bot]andmuellerr 186e7192cb Merge #17
17: Added SPI implementation r=robamu a=robamu

- First SPI HAL implementation for blocking mode
- Added example for SPI as well which uses loopback mode
  and regular mode

Co-authored-by: Robin Mueller <robin.mueller.m@gmail.com>
2021-11-20 22:59:59 +00:00
bors[bot]andmuellerr 9e7491813e Merge #16
16: added blocking delay functions r=robamu a=robamu

- DelayUs and DelayMs trait implementations for CountDown timer peripherals
- Tested using an oscilloscope to verify correct timing behaviour
- Bugfix for wait function

Co-authored-by: Robin Mueller <robin.mueller.m@gmail.com>
2021-11-20 14:10:47 +00:00
bors[bot]andmuellerr 030b555a7f Merge #14
14: Added GPIO IRQ interface, refactoring r=robamu a=robamu

- Adds the IRQ interface to configure interrupts on output and input pins
- Moved the `FilterClkSel` struct to the `clock` module, reexporting in `gpio`
- Added function to set clock divisor registers
- Clearing output state at initialization of Output pins
- Added utility function to set up millisecond timer with `TIM0`

Co-authored-by: Robin Mueller <robin.mueller.m@gmail.com>
2021-11-13 13:53:12 +00:00
bors[bot]andmuellerr 1c31e9177d Merge #13
13: Smaller tweaks r=robamu a=robamu



Co-authored-by: Robin Mueller <robin.mueller.m@gmail.com>
2021-11-11 19:03:42 +00:00
bors[bot]andmuellerr 2fc9829961 Merge #12
12: Refactored GPIO module r=robamu a=robamu

- The GPIO module uses type-level programming now
- Implementation heavily based on the ATSAMD GPIO HAL:
  https://docs.rs/atsamd-hal/0.13.0/atsamd_hal/gpio/v2/index.html
- Changes to API, but no passing of peripheral references necessary
  anymore. All examples and tests updated accordingly

Co-authored-by: Robin Mueller <robin.mueller.m@gmail.com>
2021-11-11 16:41:05 +00:00
bors[bot]andmuellerr 0ecae210d3 Merge #10
10: Rust edition bumped & UART implementation r=robamu a=robamu

- Also adds UART example

Co-authored-by: Robin Mueller <robin.mueller.m@gmail.com>
2021-11-09 17:39:14 +00:00