Template
Compare commits
1
Commits
cf36c515fc
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
13e4e1c893 |
@@ -0,0 +1,67 @@
|
||||
|
||||
name: Lint & Build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ main, master ]
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
name: Linting
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout Project
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Setup Rust
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
with:
|
||||
targets: thumbv8m.main-none-eabihf
|
||||
components: rustfmt, clippy
|
||||
|
||||
- name: Install cargo sort
|
||||
uses: taiki-e/install-action@v2
|
||||
with:
|
||||
tool: cargo-sort
|
||||
|
||||
- name: Install cargo machete
|
||||
uses: taiki-e/install-action@v2
|
||||
with:
|
||||
tool: cargo-machete
|
||||
|
||||
- name: Check formatting
|
||||
run: cargo fmt --check
|
||||
|
||||
- name: Check import sorting
|
||||
run: cargo sort --grouped --check --check-format
|
||||
|
||||
- name: Check for unused dependencies
|
||||
run: cargo machete
|
||||
|
||||
- name: Clippy for RP2350 ARM Cores
|
||||
run: |
|
||||
cargo clippy --target thumbv8m.main-none-eabihf -- -D warnings
|
||||
build:
|
||||
name: Build
|
||||
runs-on: ubuntu-latest
|
||||
needs: lint
|
||||
|
||||
steps:
|
||||
- name: Checkout Project
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Setup Rust
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
with:
|
||||
targets: thumbv8m.main-none-eabihf
|
||||
|
||||
- name: Build for RP2350 ARM Cores
|
||||
run: |
|
||||
cargo build --target thumbv8m.main-none-eabihf --release --locked
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
+30
-6
@@ -3,8 +3,36 @@ name = "embassy_template"
|
||||
version = "0.1.0"
|
||||
edition = "2024"
|
||||
|
||||
# This lists off all of the crates that come DEFAULT with the template
|
||||
# This is so machete doesn't catch them in projects that do not use the crates provided by the template. Since many are required once you go beyond getting started, a few others are nice to haves like heapless and static_cell.
|
||||
[package.metadata.cargo-machete]
|
||||
ignored = [
|
||||
"cortex-m",
|
||||
"cortex-m-rt",
|
||||
"critical-section",
|
||||
"defmt",
|
||||
"defmt-rtt",
|
||||
"embassy-embedded-hal",
|
||||
"embassy-executor",
|
||||
"embassy-futures",
|
||||
"embassy-rp",
|
||||
"embassy-sync",
|
||||
"embassy-sync",
|
||||
"embassy-time",
|
||||
"embassy-usb",
|
||||
"embedded-hal-async",
|
||||
"embedded-io-async",
|
||||
"heapless",
|
||||
"panic-probe",
|
||||
"static_cell",
|
||||
]
|
||||
|
||||
[dependencies]
|
||||
cortex-m = { version = "0.7.6", features = ["inline-asm"] }
|
||||
cortex-m-rt = "0.7.0"
|
||||
critical-section = "1.1"
|
||||
defmt = "1.1.1"
|
||||
defmt-rtt = "1.3.0"
|
||||
embassy-embedded-hal = { version = "0.6.0", features = ["defmt"] }
|
||||
embassy-executor = { version = "0.10.0", features = ["defmt"] }
|
||||
embassy-futures = { version = "0.1.2", features = ["defmt"] }
|
||||
@@ -12,12 +40,8 @@ embassy-rp = { version = "0.10.0", features = ["defmt", "unstable-pac", "time-dr
|
||||
embassy-sync = { version = "0.8.0", features = ["defmt"] }
|
||||
embassy-time = { version = "0.5.1", features = ["defmt", "defmt-timestamp-uptime"] }
|
||||
embassy-usb = { version = "0.6.0", features = ["defmt"] }
|
||||
cortex-m = { version = "0.7.6", features = ["inline-asm"] }
|
||||
cortex-m-rt = "0.7.0"
|
||||
critical-section = "1.1"
|
||||
panic-probe = { version = "1.0.0", features = ["print-defmt"] }
|
||||
heapless = "0.9"
|
||||
embedded-hal-async = "1.0"
|
||||
embedded-io-async = { version = "0.7.0", features = ["defmt"] }
|
||||
defmt-rtt = "1.3.0"
|
||||
heapless = "0.9"
|
||||
panic-probe = { version = "1.0.0", features = ["print-defmt"] }
|
||||
static_cell = "2.1.1"
|
||||
|
||||
+1
-1
@@ -25,7 +25,7 @@ pub static PICOTOOL_ENTRIES: [embassy_rp::binary_info::EntryAddr; 4] = [
|
||||
entry = "cortex_m_rt::entry"
|
||||
)]
|
||||
async fn main(_spawner: Spawner) {
|
||||
let p = embassy_rp::init(Default::default());
|
||||
let _p = embassy_rp::init(Default::default());
|
||||
|
||||
loop {
|
||||
info!("led on!");
|
||||
|
||||
Reference in New Issue
Block a user