https://github.com/gauteh/ambiq-rs
Rust HAL for the Ambiq Apollo MCU and boards
https://github.com/gauteh/ambiq-rs
ambiq apollo3 embedded-hal rust sparkfun
Last synced: about 1 year ago
JSON representation
Rust HAL for the Ambiq Apollo MCU and boards
- Host: GitHub
- URL: https://github.com/gauteh/ambiq-rs
- Owner: gauteh
- Created: 2021-09-29T07:57:27.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-10-18T14:25:04.000Z (almost 2 years ago)
- Last Synced: 2024-10-19T14:04:39.916Z (almost 2 years ago)
- Topics: ambiq, apollo3, embedded-hal, rust, sparkfun
- Language: Rust
- Homepage:
- Size: 924 KB
- Stars: 10
- Watchers: 5
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Ambiq-rs: HAL for Ambiq Apollo
This project consists of two main crates:
1.) [**ambiq-hal-sys**](ambiq-hal-sys/) is bindings to the Ambiq Suite SDK as modified by Sparkfun.
2.) [**ambiq-hal**](ambiq-hal/) is a `embedded-hal` based Hardware Abstraction Layer (HAL) for
the Ambiq Apollo.
Eventually the board support crates will make it easier to determine which pins
(as labelled on the board) match the pads and peripherals on the Apollo MCU.
## Getting started
Take a look at the example in [quickstart](quickstart/) for how to get started.
Remeber to select the correct board.
## Boards
The board crates are not very useful yet.
* [Sparkfun Redboard Artemis](https://www.sparkfun.com/products/15444) - [boards/redboard](boards/redboard) | [boards/redboard-halc](boards/redboard-halc)
* [Sparkfun Redboard Artemis Nano](https://www.sparkfun.com/products/15443) - [boards/redboard-nano](boards/redboard-nano)
## MCUs
* [Ambiq Apollo3](https://ambiq.com/apollo3-blue/) - [ambiq-hal/](ambiq-hal/)
## Interrupts and `pre_init`
The Sparkfun bootloader does not update the pointer to the interrupt vectors
(this should be done by the C runtime). We therefore set the correct address in
`cortex_m_rt::pre_init`, this means that you can't use `pre_init` for your code.