Compare commits
1 commit
main
...
serge/beam
Author | SHA1 | Date | |
---|---|---|---|
|
49ba2eb018 |
8
beamer/fw/.cargo/config.toml
Normal file
8
beamer/fw/.cargo/config.toml
Normal file
|
@ -0,0 +1,8 @@
|
|||
[target.thumbv6m-none-eabi]
|
||||
runner = 'probe-rs run --chip STM32F746ZG'
|
||||
|
||||
[build]
|
||||
target = "thumbv7m-none-eabi"
|
||||
|
||||
[env]
|
||||
DEFMT_LOG = "trace"
|
1
beamer/fw/.gitignore
vendored
Normal file
1
beamer/fw/.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
target
|
861
beamer/fw/Cargo.lock
generated
Normal file
861
beamer/fw/Cargo.lock
generated
Normal file
|
@ -0,0 +1,861 @@
|
|||
# This file is automatically @generated by Cargo.
|
||||
# It is not intended for manual editing.
|
||||
version = 4
|
||||
|
||||
[[package]]
|
||||
name = "aligned"
|
||||
version = "0.4.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "377e4c0ba83e4431b10df45c1d4666f178ea9c552cac93e60c3a88bf32785923"
|
||||
dependencies = [
|
||||
"as-slice",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "as-slice"
|
||||
version = "0.2.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "516b6b4f0e40d50dcda9365d53964ec74560ad4284da2e7fc97122cd83174516"
|
||||
dependencies = [
|
||||
"stable_deref_trait",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "autocfg"
|
||||
version = "1.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26"
|
||||
|
||||
[[package]]
|
||||
name = "bare-metal"
|
||||
version = "0.2.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5deb64efa5bd81e31fcd1938615a6d98c82eafcbcd787162b6f63b91d6bac5b3"
|
||||
dependencies = [
|
||||
"rustc_version",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "beamer"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"cortex-m",
|
||||
"cortex-m-rt",
|
||||
"defmt",
|
||||
"defmt-rtt",
|
||||
"embassy-executor",
|
||||
"embassy-futures",
|
||||
"embassy-net",
|
||||
"embassy-stm32",
|
||||
"embassy-sync",
|
||||
"embassy-time",
|
||||
"embedded-io-async",
|
||||
"panic-halt",
|
||||
"panic-probe",
|
||||
"rand_core",
|
||||
"smoltcp",
|
||||
"static_cell",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "bit_field"
|
||||
version = "0.10.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "dc827186963e592360843fb5ba4b973e145841266c1357f7180c43526f2e5b61"
|
||||
|
||||
[[package]]
|
||||
name = "bitfield"
|
||||
version = "0.13.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "46afbd2983a5d5a7bd740ccb198caf5b82f45c40c09c0eed36052d91cb92e719"
|
||||
|
||||
[[package]]
|
||||
name = "bitflags"
|
||||
version = "1.3.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
|
||||
|
||||
[[package]]
|
||||
name = "bitflags"
|
||||
version = "2.6.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
|
||||
|
||||
[[package]]
|
||||
name = "block-device-driver"
|
||||
version = "0.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "44c051592f59fe68053524b4c4935249b806f72c1f544cfb7abe4f57c3be258e"
|
||||
dependencies = [
|
||||
"aligned",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "byteorder"
|
||||
version = "1.5.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
|
||||
|
||||
[[package]]
|
||||
name = "cfg-if"
|
||||
version = "1.0.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
||||
|
||||
[[package]]
|
||||
name = "cortex-m"
|
||||
version = "0.7.7"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8ec610d8f49840a5b376c69663b6369e71f4b34484b9b2eb29fb918d92516cb9"
|
||||
dependencies = [
|
||||
"bare-metal",
|
||||
"bitfield",
|
||||
"critical-section",
|
||||
"embedded-hal 0.2.7",
|
||||
"volatile-register",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "cortex-m-rt"
|
||||
version = "0.7.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ee84e813d593101b1723e13ec38b6ab6abbdbaaa4546553f5395ed274079ddb1"
|
||||
dependencies = [
|
||||
"cortex-m-rt-macros",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "cortex-m-rt-macros"
|
||||
version = "0.7.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f0f6f3e36f203cfedbc78b357fb28730aa2c6dc1ab060ee5c2405e843988d3c7"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 1.0.109",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "critical-section"
|
||||
version = "1.1.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f64009896348fc5af4222e9cf7d7d82a95a256c634ebcf61c53e4ea461422242"
|
||||
|
||||
[[package]]
|
||||
name = "darling"
|
||||
version = "0.20.10"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989"
|
||||
dependencies = [
|
||||
"darling_core",
|
||||
"darling_macro",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "darling_core"
|
||||
version = "0.20.10"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5"
|
||||
dependencies = [
|
||||
"fnv",
|
||||
"ident_case",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"strsim",
|
||||
"syn 2.0.79",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "darling_macro"
|
||||
version = "0.20.10"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806"
|
||||
dependencies = [
|
||||
"darling_core",
|
||||
"quote",
|
||||
"syn 2.0.79",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "defmt"
|
||||
version = "0.3.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a99dd22262668b887121d4672af5a64b238f026099f1a2a1b322066c9ecfe9e0"
|
||||
dependencies = [
|
||||
"bitflags 1.3.2",
|
||||
"defmt-macros",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "defmt-macros"
|
||||
version = "0.3.9"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "e3a9f309eff1f79b3ebdf252954d90ae440599c26c2c553fe87a2d17195f2dcb"
|
||||
dependencies = [
|
||||
"defmt-parser",
|
||||
"proc-macro-error",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.79",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "defmt-parser"
|
||||
version = "0.3.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ff4a5fefe330e8d7f31b16a318f9ce81000d8e35e69b93eae154d16d2278f70f"
|
||||
dependencies = [
|
||||
"thiserror",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "defmt-rtt"
|
||||
version = "0.4.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "bab697b3dbbc1750b7c8b821aa6f6e7f2480b47a99bc057a2ed7b170ebef0c51"
|
||||
dependencies = [
|
||||
"critical-section",
|
||||
"defmt",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "document-features"
|
||||
version = "0.2.10"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "cb6969eaabd2421f8a2775cfd2471a2b634372b4a25d41e3bd647b79912850a0"
|
||||
dependencies = [
|
||||
"litrs",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-embedded-hal"
|
||||
version = "0.2.0"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
dependencies = [
|
||||
"defmt",
|
||||
"embassy-futures",
|
||||
"embassy-sync",
|
||||
"embassy-time",
|
||||
"embedded-hal 0.2.7",
|
||||
"embedded-hal 1.0.0",
|
||||
"embedded-hal-async",
|
||||
"embedded-storage",
|
||||
"embedded-storage-async",
|
||||
"nb 1.1.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-executor"
|
||||
version = "0.6.0"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
dependencies = [
|
||||
"cortex-m",
|
||||
"critical-section",
|
||||
"defmt",
|
||||
"document-features",
|
||||
"embassy-executor-macros",
|
||||
"embassy-time-driver",
|
||||
"embassy-time-queue-driver",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-executor-macros"
|
||||
version = "0.5.0"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
dependencies = [
|
||||
"darling",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.79",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-futures"
|
||||
version = "0.1.1"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
|
||||
[[package]]
|
||||
name = "embassy-hal-internal"
|
||||
version = "0.2.0"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
dependencies = [
|
||||
"cortex-m",
|
||||
"critical-section",
|
||||
"defmt",
|
||||
"num-traits",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-net"
|
||||
version = "0.4.0"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
dependencies = [
|
||||
"defmt",
|
||||
"document-features",
|
||||
"embassy-net-driver",
|
||||
"embassy-sync",
|
||||
"embassy-time",
|
||||
"embedded-io-async",
|
||||
"embedded-nal-async",
|
||||
"heapless",
|
||||
"managed",
|
||||
"smoltcp",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-net-driver"
|
||||
version = "0.2.0"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
dependencies = [
|
||||
"defmt",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-stm32"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
dependencies = [
|
||||
"aligned",
|
||||
"bit_field",
|
||||
"bitflags 2.6.0",
|
||||
"block-device-driver",
|
||||
"cfg-if",
|
||||
"cortex-m",
|
||||
"cortex-m-rt",
|
||||
"critical-section",
|
||||
"defmt",
|
||||
"document-features",
|
||||
"embassy-embedded-hal",
|
||||
"embassy-futures",
|
||||
"embassy-hal-internal",
|
||||
"embassy-net-driver",
|
||||
"embassy-sync",
|
||||
"embassy-time",
|
||||
"embassy-time-driver",
|
||||
"embassy-usb-driver",
|
||||
"embassy-usb-synopsys-otg",
|
||||
"embedded-can",
|
||||
"embedded-hal 0.2.7",
|
||||
"embedded-hal 1.0.0",
|
||||
"embedded-hal-async",
|
||||
"embedded-hal-nb",
|
||||
"embedded-io",
|
||||
"embedded-io-async",
|
||||
"embedded-storage",
|
||||
"embedded-storage-async",
|
||||
"futures-util",
|
||||
"nb 1.1.0",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"rand_core",
|
||||
"sdio-host",
|
||||
"static_assertions",
|
||||
"stm32-fmc",
|
||||
"stm32-metapac",
|
||||
"vcell",
|
||||
"volatile-register",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-sync"
|
||||
version = "0.6.0"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"critical-section",
|
||||
"defmt",
|
||||
"embedded-io-async",
|
||||
"futures-util",
|
||||
"heapless",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-time"
|
||||
version = "0.3.2"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"critical-section",
|
||||
"defmt",
|
||||
"document-features",
|
||||
"embassy-time-driver",
|
||||
"embassy-time-queue-driver",
|
||||
"embedded-hal 0.2.7",
|
||||
"embedded-hal 1.0.0",
|
||||
"embedded-hal-async",
|
||||
"futures-util",
|
||||
"heapless",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-time-driver"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
dependencies = [
|
||||
"document-features",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-time-queue-driver"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
|
||||
[[package]]
|
||||
name = "embassy-usb-driver"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
dependencies = [
|
||||
"defmt",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-usb-synopsys-otg"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/embassy-rs/embassy?rev=9555259c57a07338792cfe0fdd363a59616a8062#9555259c57a07338792cfe0fdd363a59616a8062"
|
||||
dependencies = [
|
||||
"critical-section",
|
||||
"embassy-sync",
|
||||
"embassy-usb-driver",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embedded-can"
|
||||
version = "0.4.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "e9d2e857f87ac832df68fa498d18ddc679175cf3d2e4aa893988e5601baf9438"
|
||||
dependencies = [
|
||||
"nb 1.1.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embedded-hal"
|
||||
version = "0.2.7"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "35949884794ad573cf46071e41c9b60efb0cb311e3ca01f7af807af1debc66ff"
|
||||
dependencies = [
|
||||
"nb 0.1.3",
|
||||
"void",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embedded-hal"
|
||||
version = "1.0.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "361a90feb7004eca4019fb28352a9465666b24f840f5c3cddf0ff13920590b89"
|
||||
|
||||
[[package]]
|
||||
name = "embedded-hal-async"
|
||||
version = "1.0.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0c4c685bbef7fe13c3c6dd4da26841ed3980ef33e841cddfa15ce8a8fb3f1884"
|
||||
dependencies = [
|
||||
"embedded-hal 1.0.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embedded-hal-nb"
|
||||
version = "1.0.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fba4268c14288c828995299e59b12babdbe170f6c6d73731af1b4648142e8605"
|
||||
dependencies = [
|
||||
"embedded-hal 1.0.0",
|
||||
"nb 1.1.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embedded-io"
|
||||
version = "0.6.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "edd0f118536f44f5ccd48bcb8b111bdc3de888b58c74639dfb034a357d0f206d"
|
||||
dependencies = [
|
||||
"defmt",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embedded-io-async"
|
||||
version = "0.6.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3ff09972d4073aa8c299395be75161d582e7629cd663171d62af73c8d50dba3f"
|
||||
dependencies = [
|
||||
"defmt",
|
||||
"embedded-io",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embedded-nal"
|
||||
version = "0.8.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b8a943fad5ed3d3f8a00f1e80f6bba371f1e7f0df28ec38477535eb318dc19cc"
|
||||
dependencies = [
|
||||
"nb 1.1.0",
|
||||
"no-std-net",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embedded-nal-async"
|
||||
version = "0.7.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "72229137a4fc12d239b0b7f50f04b30790678da6d782a0f3f1909bf57ec4b759"
|
||||
dependencies = [
|
||||
"embedded-io-async",
|
||||
"embedded-nal",
|
||||
"no-std-net",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embedded-storage"
|
||||
version = "0.3.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a21dea9854beb860f3062d10228ce9b976da520a73474aed3171ec276bc0c032"
|
||||
|
||||
[[package]]
|
||||
name = "embedded-storage-async"
|
||||
version = "0.4.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1763775e2323b7d5f0aa6090657f5e21cfa02ede71f5dc40eead06d64dcd15cc"
|
||||
dependencies = [
|
||||
"embedded-storage",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "fnv"
|
||||
version = "1.0.7"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
|
||||
|
||||
[[package]]
|
||||
name = "futures-core"
|
||||
version = "0.3.31"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e"
|
||||
|
||||
[[package]]
|
||||
name = "futures-task"
|
||||
version = "0.3.31"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988"
|
||||
|
||||
[[package]]
|
||||
name = "futures-util"
|
||||
version = "0.3.31"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81"
|
||||
dependencies = [
|
||||
"futures-core",
|
||||
"futures-task",
|
||||
"pin-project-lite",
|
||||
"pin-utils",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "hash32"
|
||||
version = "0.3.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "47d60b12902ba28e2730cd37e95b8c9223af2808df9e902d4df49588d1470606"
|
||||
dependencies = [
|
||||
"byteorder",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "heapless"
|
||||
version = "0.8.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0bfb9eb618601c89945a70e254898da93b13be0388091d42117462b265bb3fad"
|
||||
dependencies = [
|
||||
"defmt",
|
||||
"hash32",
|
||||
"stable_deref_trait",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ident_case"
|
||||
version = "1.0.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
|
||||
|
||||
[[package]]
|
||||
name = "litrs"
|
||||
version = "0.4.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5"
|
||||
|
||||
[[package]]
|
||||
name = "managed"
|
||||
version = "0.8.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0ca88d725a0a943b096803bd34e73a4437208b6077654cc4ecb2947a5f91618d"
|
||||
|
||||
[[package]]
|
||||
name = "nb"
|
||||
version = "0.1.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "801d31da0513b6ec5214e9bf433a77966320625a37860f910be265be6e18d06f"
|
||||
dependencies = [
|
||||
"nb 1.1.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "nb"
|
||||
version = "1.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8d5439c4ad607c3c23abf66de8c8bf57ba8adcd1f129e699851a6e43935d339d"
|
||||
|
||||
[[package]]
|
||||
name = "no-std-net"
|
||||
version = "0.6.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "43794a0ace135be66a25d3ae77d41b91615fb68ae937f904090203e81f755b65"
|
||||
|
||||
[[package]]
|
||||
name = "num-traits"
|
||||
version = "0.2.19"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
|
||||
dependencies = [
|
||||
"autocfg",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "panic-halt"
|
||||
version = "0.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "de96540e0ebde571dc55c73d60ef407c653844e6f9a1e2fdbd40c07b9252d812"
|
||||
|
||||
[[package]]
|
||||
name = "panic-probe"
|
||||
version = "0.3.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "4047d9235d1423d66cc97da7d07eddb54d4f154d6c13805c6d0793956f4f25b0"
|
||||
dependencies = [
|
||||
"cortex-m",
|
||||
"defmt",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pin-project-lite"
|
||||
version = "0.2.14"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
|
||||
|
||||
[[package]]
|
||||
name = "pin-utils"
|
||||
version = "0.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
|
||||
|
||||
[[package]]
|
||||
name = "portable-atomic"
|
||||
version = "1.9.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2"
|
||||
|
||||
[[package]]
|
||||
name = "proc-macro-error"
|
||||
version = "1.0.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
|
||||
dependencies = [
|
||||
"proc-macro-error-attr",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 1.0.109",
|
||||
"version_check",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "proc-macro-error-attr"
|
||||
version = "1.0.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"version_check",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "proc-macro2"
|
||||
version = "1.0.87"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b3e4daa0dcf6feba26f985457cdf104d4b4256fc5a09547140f3631bb076b19a"
|
||||
dependencies = [
|
||||
"unicode-ident",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "quote"
|
||||
version = "1.0.37"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rand_core"
|
||||
version = "0.6.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
|
||||
|
||||
[[package]]
|
||||
name = "rustc_version"
|
||||
version = "0.2.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
|
||||
dependencies = [
|
||||
"semver",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "sdio-host"
|
||||
version = "0.5.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f93c025f9cfe4c388c328ece47d11a54a823da3b5ad0370b22d95ad47137f85a"
|
||||
|
||||
[[package]]
|
||||
name = "semver"
|
||||
version = "0.9.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
|
||||
dependencies = [
|
||||
"semver-parser",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "semver-parser"
|
||||
version = "0.7.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
|
||||
|
||||
[[package]]
|
||||
name = "smoltcp"
|
||||
version = "0.11.0"
|
||||
source = "git+https://github.com/smoltcp-rs/smoltcp?rev=dd43c8f189178b0ab3bda798ed8578b5b0a6f094#dd43c8f189178b0ab3bda798ed8578b5b0a6f094"
|
||||
dependencies = [
|
||||
"bitflags 1.3.2",
|
||||
"byteorder",
|
||||
"cfg-if",
|
||||
"defmt",
|
||||
"heapless",
|
||||
"managed",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "stable_deref_trait"
|
||||
version = "1.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
|
||||
|
||||
[[package]]
|
||||
name = "static_assertions"
|
||||
version = "1.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
|
||||
|
||||
[[package]]
|
||||
name = "static_cell"
|
||||
version = "2.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d89b0684884a883431282db1e4343f34afc2ff6996fe1f4a1664519b66e14c1e"
|
||||
dependencies = [
|
||||
"portable-atomic",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "stm32-fmc"
|
||||
version = "0.3.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c7f0639399e2307c2446c54d91d4f1596343a1e1d5cab605b9cce11d0ab3858c"
|
||||
dependencies = [
|
||||
"embedded-hal 0.2.7",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "stm32-metapac"
|
||||
version = "15.0.0"
|
||||
source = "git+https://github.com/embassy-rs/stm32-data-generated?tag=stm32-data-9b7414490b10ffbd5beb1b0dcf14adb018cbe37f#dc782d51865ba6a0a8dd79a4d6972864b33b6f00"
|
||||
dependencies = [
|
||||
"cortex-m",
|
||||
"cortex-m-rt",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "strsim"
|
||||
version = "0.11.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
|
||||
|
||||
[[package]]
|
||||
name = "syn"
|
||||
version = "1.0.109"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"unicode-ident",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "syn"
|
||||
version = "2.0.79"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"unicode-ident",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "thiserror"
|
||||
version = "1.0.64"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84"
|
||||
dependencies = [
|
||||
"thiserror-impl",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "thiserror-impl"
|
||||
version = "1.0.64"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.79",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "unicode-ident"
|
||||
version = "1.0.13"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe"
|
||||
|
||||
[[package]]
|
||||
name = "vcell"
|
||||
version = "0.1.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "77439c1b53d2303b20d9459b1ade71a83c716e3f9c34f3228c00e6f185d6c002"
|
||||
|
||||
[[package]]
|
||||
name = "version_check"
|
||||
version = "0.9.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
||||
|
||||
[[package]]
|
||||
name = "void"
|
||||
version = "1.0.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
|
||||
|
||||
[[package]]
|
||||
name = "volatile-register"
|
||||
version = "0.2.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "de437e2a6208b014ab52972a27e59b33fa2920d3e00fe05026167a1c509d19cc"
|
||||
dependencies = [
|
||||
"vcell",
|
||||
]
|
36
beamer/fw/Cargo.toml
Normal file
36
beamer/fw/Cargo.toml
Normal file
|
@ -0,0 +1,36 @@
|
|||
[package]
|
||||
name = "beamer"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
cortex-m = { version = "0.7.7", features = ["critical-section-single-core"] }
|
||||
cortex-m-rt = "0.7.3"
|
||||
defmt = "0.3.8"
|
||||
defmt-rtt = "0.4.1"
|
||||
embassy-executor = { version = "0.6.0", features = ["task-arena-size-32768", "arch-cortex-m", "executor-thread", "defmt", "integrated-timers"] }
|
||||
embassy-net = { version = "0.4.0", features = ["defmt", "tcp", "udp", "dhcpv4", "medium-ethernet"] }
|
||||
embassy-stm32 = { version = "0.1.0", features = ["defmt", "stm32f746zg", "memory-x", "unstable-pac", "time-driver-any", "exti"] }
|
||||
embassy-sync = { version = "0.6.0", features = ["defmt"] }
|
||||
embassy-time = { version = "0.3.2", features = ["defmt", "defmt-timestamp-uptime", "tick-hz-32_768"] }
|
||||
embassy-futures = { version = "0.1.1" }
|
||||
embedded-io-async = "0.6.1"
|
||||
panic-halt = "0.2.0"
|
||||
panic-probe = { version = "0.3.2", features = ["print-defmt"] }
|
||||
rand_core = "0.6.4"
|
||||
smoltcp = { git="https://github.com/smoltcp-rs/smoltcp", rev="dd43c8f189178b0ab3bda798ed8578b5b0a6f094", default-features = false, features = [
|
||||
"socket",
|
||||
"async",
|
||||
"proto-ipv4",
|
||||
] }
|
||||
static_cell = "2.1.0"
|
||||
|
||||
[patch.crates-io]
|
||||
embassy-executor = { git = "https://github.com/embassy-rs/embassy", rev = "9555259c57a07338792cfe0fdd363a59616a8062" }
|
||||
embassy-net = { git = "https://github.com/embassy-rs/embassy", rev = "9555259c57a07338792cfe0fdd363a59616a8062" }
|
||||
embassy-stm32 = { git = "https://github.com/embassy-rs/embassy", rev = "9555259c57a07338792cfe0fdd363a59616a8062" }
|
||||
embassy-sync = { git = "https://github.com/embassy-rs/embassy", rev = "9555259c57a07338792cfe0fdd363a59616a8062" }
|
||||
embassy-time = { git = "https://github.com/embassy-rs/embassy", rev = "9555259c57a07338792cfe0fdd363a59616a8062" }
|
||||
embassy-futures = { git = "https://github.com/embassy-rs/embassy", rev = "9555259c57a07338792cfe0fdd363a59616a8062" }
|
8
beamer/fw/shell.nix
Normal file
8
beamer/fw/shell.nix
Normal file
|
@ -0,0 +1,8 @@
|
|||
with import <nixpkgs> {};
|
||||
|
||||
pkgs.mkShell {
|
||||
buildInputs = [
|
||||
rustup
|
||||
probe-rs
|
||||
];
|
||||
}
|
145
beamer/fw/src/main.rs
Normal file
145
beamer/fw/src/main.rs
Normal file
|
@ -0,0 +1,145 @@
|
|||
#![no_std]
|
||||
#![no_main]
|
||||
|
||||
use defmt::*;
|
||||
use embassy_executor::Spawner;
|
||||
use embassy_futures::select::Either;
|
||||
use embassy_net::StackResources;
|
||||
use embassy_stm32::eth::generic_smi::GenericSMI;
|
||||
use embassy_stm32::eth::{Ethernet, PacketQueue};
|
||||
use embassy_stm32::gpio::Pull;
|
||||
use embassy_stm32::peripherals::ETH;
|
||||
use embassy_stm32::time::Hertz;
|
||||
use embassy_stm32::{bind_interrupts, eth, Config};
|
||||
use embassy_time::Timer;
|
||||
use static_cell::StaticCell;
|
||||
use {defmt_rtt as _, panic_probe as _};
|
||||
|
||||
bind_interrupts!(struct Irqs {
|
||||
ETH => eth::InterruptHandler;
|
||||
});
|
||||
|
||||
type Device = Ethernet<'static, ETH, GenericSMI>;
|
||||
|
||||
#[embassy_executor::task]
|
||||
async fn net_task(mut runner: embassy_net::Runner<'static, Device>) -> ! {
|
||||
runner.run().await
|
||||
}
|
||||
|
||||
#[embassy_executor::task]
|
||||
async fn sync_task(
|
||||
mut hsync: embassy_stm32::exti::ExtiInput<'static>,
|
||||
mut vsync: embassy_stm32::exti::ExtiInput<'static>,
|
||||
) -> ! {
|
||||
loop {
|
||||
let hlo = hsync.wait_for_falling_edge();
|
||||
let vlo = vsync.wait_for_falling_edge();
|
||||
let res = embassy_futures::select::select(hlo, vlo).await;
|
||||
if let Either::First(_) = res {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[embassy_executor::main]
|
||||
async fn main(spawner: Spawner) -> ! {
|
||||
let mut config = Config::default();
|
||||
{
|
||||
use embassy_stm32::rcc::*;
|
||||
config.rcc.hse = Some(Hse {
|
||||
freq: Hertz(8_000_000),
|
||||
mode: HseMode::Bypass,
|
||||
});
|
||||
config.rcc.pll_src = PllSource::HSE;
|
||||
config.rcc.pll = Some(Pll {
|
||||
prediv: PllPreDiv::DIV4,
|
||||
mul: PllMul::MUL216,
|
||||
divp: Some(PllPDiv::DIV2), // 8mhz / 4 * 216 / 2 = 216Mhz
|
||||
divq: None,
|
||||
divr: None,
|
||||
});
|
||||
config.rcc.ahb_pre = AHBPrescaler::DIV1;
|
||||
config.rcc.apb1_pre = APBPrescaler::DIV4;
|
||||
config.rcc.apb2_pre = APBPrescaler::DIV2;
|
||||
config.rcc.sys = Sysclk::PLL1_P;
|
||||
}
|
||||
let p = embassy_stm32::init(config);
|
||||
|
||||
info!("Hello World!");
|
||||
|
||||
let hsync = embassy_stm32::exti::ExtiInput::new(p.PC13, p.EXTI13, Pull::Up);
|
||||
let vsync = embassy_stm32::exti::ExtiInput::new(p.PC14, p.EXTI14, Pull::Up);
|
||||
unwrap!(spawner.spawn(sync_task(hsync, vsync)));
|
||||
|
||||
// Generate random seed.
|
||||
let seed = 0xdeadbeefcafebabe;
|
||||
|
||||
let mac_addr = [0x00, 0x00, 0xDE, 0xAD, 0xBE, 0xEF];
|
||||
|
||||
static PACKETS: StaticCell<PacketQueue<4, 4>> = StaticCell::new();
|
||||
let device = Ethernet::new(
|
||||
PACKETS.init(PacketQueue::<4, 4>::new()),
|
||||
p.ETH,
|
||||
Irqs,
|
||||
p.PA1,
|
||||
p.PA2,
|
||||
p.PC1,
|
||||
p.PA7,
|
||||
p.PC4,
|
||||
p.PC5,
|
||||
p.PG13,
|
||||
p.PB13,
|
||||
p.PG11,
|
||||
GenericSMI::new(0),
|
||||
mac_addr,
|
||||
);
|
||||
|
||||
let config = embassy_net::Config::dhcpv4(Default::default());
|
||||
|
||||
// Init network stack
|
||||
static RESOURCES: StaticCell<StackResources<3>> = StaticCell::new();
|
||||
let (stack, runner) = embassy_net::new(device, config, RESOURCES.init(StackResources::new()), seed);
|
||||
|
||||
// Launch network task
|
||||
unwrap!(spawner.spawn(net_task(runner)));
|
||||
|
||||
// Ensure DHCP configuration is up before trying connect
|
||||
stack.wait_config_up().await;
|
||||
|
||||
info!("Network task initialized");
|
||||
|
||||
// Then we can use it!
|
||||
let mut rx_buffer = [0; 4096];
|
||||
let mut rx_meta = [embassy_net::udp::PacketMetadata::EMPTY; 16];
|
||||
let mut tx_buffer = [0; 4096];
|
||||
let mut tx_meta = [embassy_net::udp::PacketMetadata::EMPTY; 16];
|
||||
|
||||
let mut socket = embassy_net::udp::UdpSocket::new(stack, &mut rx_meta, &mut rx_buffer, &mut tx_meta, &mut tx_buffer);
|
||||
|
||||
let local = stack.config_v4().unwrap().address.address();
|
||||
let r = socket.bind(embassy_net::IpEndpoint{
|
||||
addr: embassy_net::IpAddress::Ipv4(local),
|
||||
port: 2137,
|
||||
});
|
||||
if let Err(e) = r {
|
||||
info!("could not bind socket: {:?}", e);
|
||||
loop {
|
||||
Timer::after_secs(1).await;
|
||||
}
|
||||
}
|
||||
|
||||
loop {
|
||||
let meta = smoltcp::phy::PacketMeta::default();
|
||||
let to = embassy_net::udp::UdpMetadata {
|
||||
endpoint: embassy_net::IpEndpoint { addr: embassy_net::IpAddress::v4(255,255,255,255), port: 2137 },
|
||||
local_address: None,
|
||||
meta,
|
||||
};
|
||||
let r = socket.send_to(&[0xdeu8, 0xadu8, 0xbeu8, 0xefu8], to).await;
|
||||
if let Err(e) = r {
|
||||
info!("send error: {:?}", e);
|
||||
Timer::after_secs(5).await;
|
||||
} else {
|
||||
Timer::after_millis(100).await;
|
||||
}
|
||||
}
|
||||
}
|
5
beamer/hw/beamer/.gitignore
vendored
Normal file
5
beamer/hw/beamer/.gitignore
vendored
Normal file
|
@ -0,0 +1,5 @@
|
|||
pool/*.db
|
||||
pool/*.db-*
|
||||
*.imp_meta
|
||||
*.autosave
|
||||
*.bak
|
22
beamer/hw/beamer/beamer.hprj
Normal file
22
beamer/hw/beamer/beamer.hprj
Normal file
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
"blocks": [
|
||||
{
|
||||
"block_filename": "top_block.json",
|
||||
"is_top": true,
|
||||
"schematic_filename": "top_schematic.json"
|
||||
}
|
||||
],
|
||||
"blocks_filename": "blocks.json",
|
||||
"board_filename": "board.json",
|
||||
"name": "",
|
||||
"pictures_filename": "pictures",
|
||||
"planes_filename": "planes.json",
|
||||
"pool_cache_directory": "cache",
|
||||
"pool_directory": "pool",
|
||||
"pool_uuid": "6d752bc3-29b3-45df-8cf2-1e3aacefbcc6",
|
||||
"title": "",
|
||||
"type": "project",
|
||||
"uuid": "fac5014e-f664-4b67-94e8-1ad78c17f8c6",
|
||||
"version": 3,
|
||||
"vias_directory": ""
|
||||
}
|
11
beamer/hw/beamer/blocks.json
Normal file
11
beamer/hw/beamer/blocks.json
Normal file
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"blocks": {
|
||||
"ffaa36ae-2bba-458b-b105-a31c1bdb3210": {
|
||||
"block_filename": "top_block.json",
|
||||
"schematic_filename": "top_schematic.json",
|
||||
"symbol_filename": ""
|
||||
}
|
||||
},
|
||||
"top_block": "ffaa36ae-2bba-458b-b105-a31c1bdb3210",
|
||||
"type": "blocks"
|
||||
}
|
12723
beamer/hw/beamer/board.json
Normal file
12723
beamer/hw/beamer/board.json
Normal file
File diff suppressed because it is too large
Load diff
5884
beamer/hw/beamer/fab1/beamer.gbl
Normal file
5884
beamer/hw/beamer/fab1/beamer.gbl
Normal file
File diff suppressed because it is too large
Load diff
8
beamer/hw/beamer/fab1/beamer.gbo
Normal file
8
beamer/hw/beamer/fab1/beamer.gbo
Normal file
|
@ -0,0 +1,8 @@
|
|||
%FSLAX46Y46*%
|
||||
%MOMM*%
|
||||
G01*
|
||||
%LPD*%
|
||||
G01*
|
||||
%LPD*%
|
||||
G75*
|
||||
M02*
|
8
beamer/hw/beamer/fab1/beamer.gbp
Normal file
8
beamer/hw/beamer/fab1/beamer.gbp
Normal file
|
@ -0,0 +1,8 @@
|
|||
%FSLAX46Y46*%
|
||||
%MOMM*%
|
||||
G01*
|
||||
%LPD*%
|
||||
G01*
|
||||
%LPD*%
|
||||
G75*
|
||||
M02*
|
628
beamer/hw/beamer/fab1/beamer.gbs
Normal file
628
beamer/hw/beamer/fab1/beamer.gbs
Normal file
|
@ -0,0 +1,628 @@
|
|||
%FSLAX46Y46*%
|
||||
%MOMM*%
|
||||
%AMPS17*
|
||||
1,1,1.700000,0.000000,0.000000*
|
||||
%
|
||||
%ADD17PS17*%
|
||||
%AMPS11*
|
||||
1,1,1.600000,0.000000,0.000000*
|
||||
%
|
||||
%ADD11PS11*%
|
||||
%AMPS19*
|
||||
1,1,1.600000,0.000000,0.000000*
|
||||
%
|
||||
%ADD19PS19*%
|
||||
%AMPS10*
|
||||
1,1,1.600000,0.000000,0.000000*
|
||||
%
|
||||
%ADD10PS10*%
|
||||
%AMPS15*
|
||||
1,1,1.400000,0.000000,0.000000*
|
||||
%
|
||||
%ADD15PS15*%
|
||||
%AMPS13*
|
||||
1,1,1.400000,0.000000,0.000000*
|
||||
%
|
||||
%ADD13PS13*%
|
||||
%AMPS12*
|
||||
1,1,1.900000,0.000000,0.000000*
|
||||
%
|
||||
%ADD12PS12*%
|
||||
%AMPS20*
|
||||
1,1,1.900000,0.000000,0.000000*
|
||||
%
|
||||
%ADD20PS20*%
|
||||
%AMPS21*
|
||||
1,1,0.400000,0.000000,0.000000*
|
||||
%
|
||||
%ADD21PS21*%
|
||||
%AMPS16*
|
||||
21,1,1.400000,1.400000,0.000000,0.000000,0.000000*
|
||||
%
|
||||
%ADD16PS16*%
|
||||
%AMPS14*
|
||||
21,1,1.400000,1.400000,0.000000,0.000000,270.000000*
|
||||
%
|
||||
%ADD14PS14*%
|
||||
%AMPS18*
|
||||
21,1,1.700000,1.700000,0.000000,0.000000,180.000000*
|
||||
%
|
||||
%ADD18PS18*%
|
||||
G01*
|
||||
%LPD*%
|
||||
G01*
|
||||
%LPD*%
|
||||
G75*
|
||||
D10*
|
||||
X8500000Y-27000000D03*
|
||||
D10*
|
||||
X13500000Y-27000000D03*
|
||||
D10*
|
||||
X11000000Y-27000000D03*
|
||||
D11*
|
||||
X-15000000Y-9500000D03*
|
||||
D11*
|
||||
X-17000000Y9000000D03*
|
||||
D12*
|
||||
X-21590000Y-34290000D03*
|
||||
D12*
|
||||
X-21590000Y-29210000D03*
|
||||
D12*
|
||||
X-21590000Y-24130000D03*
|
||||
D12*
|
||||
X-21590000Y-1270000D03*
|
||||
D12*
|
||||
X-24130000Y-31750000D03*
|
||||
D12*
|
||||
X-24130000Y-6350000D03*
|
||||
D12*
|
||||
X-24130000Y-24130000D03*
|
||||
D12*
|
||||
X-21590000Y-19050000D03*
|
||||
D12*
|
||||
X-21590000Y-8890000D03*
|
||||
D12*
|
||||
X-21590000Y-21590000D03*
|
||||
D12*
|
||||
X-21590000Y-11430000D03*
|
||||
D12*
|
||||
X-21590000Y-31750000D03*
|
||||
D12*
|
||||
X-24130000Y-19050000D03*
|
||||
D12*
|
||||
X-24130000Y1270000D03*
|
||||
D12*
|
||||
X-21590000Y1270000D03*
|
||||
D12*
|
||||
X-24130000Y-3810000D03*
|
||||
D12*
|
||||
X-21590000Y-13970000D03*
|
||||
D12*
|
||||
X-24130000Y-8890000D03*
|
||||
D12*
|
||||
X-24130000Y-21590000D03*
|
||||
D12*
|
||||
X-21590000Y-26670000D03*
|
||||
D12*
|
||||
X-24130000Y-13970000D03*
|
||||
D12*
|
||||
X-24130000Y-29210000D03*
|
||||
D12*
|
||||
X-21590000Y-6350000D03*
|
||||
D12*
|
||||
X-24130000Y-11430000D03*
|
||||
D12*
|
||||
X-24130000Y-26670000D03*
|
||||
D12*
|
||||
X-21590000Y-16510000D03*
|
||||
D12*
|
||||
X-24130000Y-16510000D03*
|
||||
D12*
|
||||
X-24130000Y-34290000D03*
|
||||
D12*
|
||||
X-24130000Y-1270000D03*
|
||||
D12*
|
||||
X-21590000Y-3810000D03*
|
||||
D13*
|
||||
X-23500000Y31500000D03*
|
||||
D14*
|
||||
X-23500000Y35500000D03*
|
||||
D13*
|
||||
X-23500000Y33500000D03*
|
||||
D11*
|
||||
X2000000Y-22000000D03*
|
||||
D11*
|
||||
X10500000Y15500000D03*
|
||||
D12*
|
||||
X17500000Y9270000D03*
|
||||
D12*
|
||||
X17500000Y6730000D03*
|
||||
D11*
|
||||
X2000000Y-12500000D03*
|
||||
D15*
|
||||
X-3500000Y-37500000D03*
|
||||
D16*
|
||||
X-7500000Y-37500000D03*
|
||||
D15*
|
||||
X-5500000Y-37500000D03*
|
||||
D17*
|
||||
X-2222218Y8927790D03*
|
||||
D17*
|
||||
X-4762218Y8927790D03*
|
||||
D18*
|
||||
X317782Y8927790D03*
|
||||
D19*
|
||||
X-11000000Y-14000000D03*
|
||||
D19*
|
||||
X-11000000Y-19000000D03*
|
||||
D19*
|
||||
X-11000000Y-16500000D03*
|
||||
D11*
|
||||
X-5000000Y15500000D03*
|
||||
D19*
|
||||
X-11000000Y-25000000D03*
|
||||
D19*
|
||||
X-11000000Y-30000000D03*
|
||||
D19*
|
||||
X-11000000Y-27500000D03*
|
||||
D11*
|
||||
X6000000Y4500000D03*
|
||||
D15*
|
||||
X13000000Y-37500000D03*
|
||||
D16*
|
||||
X9000000Y-37500000D03*
|
||||
D15*
|
||||
X11000000Y-37500000D03*
|
||||
D12*
|
||||
X-21590000Y21590000D03*
|
||||
D12*
|
||||
X-24130000Y16510000D03*
|
||||
D12*
|
||||
X-21590000Y13970000D03*
|
||||
D12*
|
||||
X-21590000Y11430000D03*
|
||||
D12*
|
||||
X-24130000Y24130000D03*
|
||||
D12*
|
||||
X-21590000Y24130000D03*
|
||||
D12*
|
||||
X-24130000Y19050000D03*
|
||||
D12*
|
||||
X-21590000Y8890000D03*
|
||||
D12*
|
||||
X-24130000Y13970000D03*
|
||||
D12*
|
||||
X-24130000Y8890000D03*
|
||||
D12*
|
||||
X-21590000Y16510000D03*
|
||||
D12*
|
||||
X-24130000Y11430000D03*
|
||||
D12*
|
||||
X-21590000Y6350000D03*
|
||||
D12*
|
||||
X-24130000Y6350000D03*
|
||||
D12*
|
||||
X-24130000Y21590000D03*
|
||||
D12*
|
||||
X-21590000Y19050000D03*
|
||||
D11*
|
||||
X-15000000Y-34500000D03*
|
||||
D11*
|
||||
X-16500000Y23500000D03*
|
||||
D11*
|
||||
X-5500000Y-31500000D03*
|
||||
D12*
|
||||
X24130000Y30734000D03*
|
||||
D12*
|
||||
X21590000Y25654000D03*
|
||||
D12*
|
||||
X24130000Y12954000D03*
|
||||
D12*
|
||||
X24130000Y23114000D03*
|
||||
D12*
|
||||
X24130000Y10414000D03*
|
||||
D12*
|
||||
X24130000Y20574000D03*
|
||||
D12*
|
||||
X21590000Y12954000D03*
|
||||
D12*
|
||||
X21590000Y33274000D03*
|
||||
D12*
|
||||
X24130000Y33274000D03*
|
||||
D12*
|
||||
X21590000Y28194000D03*
|
||||
D12*
|
||||
X24130000Y18034000D03*
|
||||
D12*
|
||||
X21590000Y23114000D03*
|
||||
D12*
|
||||
X21590000Y10414000D03*
|
||||
D12*
|
||||
X21590000Y18034000D03*
|
||||
D12*
|
||||
X24130000Y25654000D03*
|
||||
D12*
|
||||
X21590000Y20574000D03*
|
||||
D12*
|
||||
X24130000Y15494000D03*
|
||||
D12*
|
||||
X21590000Y15494000D03*
|
||||
D12*
|
||||
X21590000Y30734000D03*
|
||||
D12*
|
||||
X24130000Y28194000D03*
|
||||
D11*
|
||||
X-2500000Y-31500000D03*
|
||||
D20*
|
||||
X-17500000Y-1270000D03*
|
||||
D20*
|
||||
X-17500000Y1270000D03*
|
||||
D12*
|
||||
X24130000Y-34290000D03*
|
||||
D12*
|
||||
X24130000Y-29210000D03*
|
||||
D12*
|
||||
X24130000Y-24130000D03*
|
||||
D12*
|
||||
X24130000Y-19050000D03*
|
||||
D12*
|
||||
X24130000Y3810000D03*
|
||||
D12*
|
||||
X21590000Y-26670000D03*
|
||||
D12*
|
||||
X21590000Y-1270000D03*
|
||||
D12*
|
||||
X21590000Y-19050000D03*
|
||||
D12*
|
||||
X24130000Y-13970000D03*
|
||||
D12*
|
||||
X21590000Y-34290000D03*
|
||||
D12*
|
||||
X24130000Y-3810000D03*
|
||||
D12*
|
||||
X24130000Y-16510000D03*
|
||||
D12*
|
||||
X24130000Y-6350000D03*
|
||||
D12*
|
||||
X24130000Y-26670000D03*
|
||||
D12*
|
||||
X21590000Y-13970000D03*
|
||||
D12*
|
||||
X21590000Y6350000D03*
|
||||
D12*
|
||||
X24130000Y6350000D03*
|
||||
D12*
|
||||
X24130000Y-31750000D03*
|
||||
D12*
|
||||
X21590000Y1270000D03*
|
||||
D12*
|
||||
X24130000Y-8890000D03*
|
||||
D12*
|
||||
X21590000Y-3810000D03*
|
||||
D12*
|
||||
X21590000Y-16510000D03*
|
||||
D12*
|
||||
X24130000Y-21590000D03*
|
||||
D12*
|
||||
X21590000Y-8890000D03*
|
||||
D12*
|
||||
X21590000Y-24130000D03*
|
||||
D12*
|
||||
X24130000Y-1270000D03*
|
||||
D12*
|
||||
X21590000Y-6350000D03*
|
||||
D12*
|
||||
X21590000Y-21590000D03*
|
||||
D12*
|
||||
X24130000Y-11430000D03*
|
||||
D12*
|
||||
X21590000Y-11430000D03*
|
||||
D12*
|
||||
X21590000Y-31750000D03*
|
||||
D12*
|
||||
X21590000Y-29210000D03*
|
||||
D12*
|
||||
X21590000Y3810000D03*
|
||||
D12*
|
||||
X24130000Y1270000D03*
|
||||
D21*
|
||||
X10500000Y23000000D03*
|
||||
D21*
|
||||
X13000000Y33000000D03*
|
||||
D21*
|
||||
X18000000Y-7500000D03*
|
||||
D21*
|
||||
X19000000Y-25000000D03*
|
||||
D21*
|
||||
X19000000Y-20000000D03*
|
||||
D21*
|
||||
X5000000Y11500000D03*
|
||||
D21*
|
||||
X18500000Y-31500000D03*
|
||||
D21*
|
||||
X-13000000Y35000000D03*
|
||||
D21*
|
||||
X13500000Y11500000D03*
|
||||
D21*
|
||||
X-14500000Y-3000000D03*
|
||||
D21*
|
||||
X9500000Y-31500000D03*
|
||||
D21*
|
||||
X19000000Y0D03*
|
||||
D21*
|
||||
X18500000Y-5000000D03*
|
||||
D21*
|
||||
X-14500000Y33500000D03*
|
||||
D21*
|
||||
X-3000000Y-13000000D03*
|
||||
D21*
|
||||
X0Y-4500000D03*
|
||||
D21*
|
||||
X9000000Y9000000D03*
|
||||
D21*
|
||||
X19000000Y9500000D03*
|
||||
D21*
|
||||
X5000000Y7000000D03*
|
||||
D21*
|
||||
X-3000000Y-16000000D03*
|
||||
D21*
|
||||
X-3500000Y17000000D03*
|
||||
D21*
|
||||
X-7950000Y-22500000D03*
|
||||
D21*
|
||||
X-10000000Y21500000D03*
|
||||
D21*
|
||||
X15500000Y500000D03*
|
||||
D21*
|
||||
X-2000000Y-3500000D03*
|
||||
D21*
|
||||
X-5000000Y23000000D03*
|
||||
D21*
|
||||
X2000000Y21500000D03*
|
||||
D21*
|
||||
X12500000Y-21500000D03*
|
||||
D21*
|
||||
X14000000Y-31500000D03*
|
||||
D21*
|
||||
X-8500000Y-21000000D03*
|
||||
D21*
|
||||
X19000000Y-15000000D03*
|
||||
D21*
|
||||
X-6000000Y-3500000D03*
|
||||
D21*
|
||||
X-2000000Y34000000D03*
|
||||
D21*
|
||||
X-11000000Y1000000D03*
|
||||
D21*
|
||||
X-12000000Y-8000000D03*
|
||||
D21*
|
||||
X-16000000Y-31500000D03*
|
||||
D21*
|
||||
X19000000Y36000000D03*
|
||||
D21*
|
||||
X15000000Y-8500000D03*
|
||||
D21*
|
||||
X10000000Y-13500000D03*
|
||||
D21*
|
||||
X-15000000Y22000000D03*
|
||||
D21*
|
||||
X9000000Y-6500000D03*
|
||||
D21*
|
||||
X-5000000Y27500000D03*
|
||||
D21*
|
||||
X-14000000Y500000D03*
|
||||
D21*
|
||||
X4500000Y-25000000D03*
|
||||
D21*
|
||||
X-1000000Y34000000D03*
|
||||
D21*
|
||||
X17500000Y-3000000D03*
|
||||
D21*
|
||||
X3000000Y12500000D03*
|
||||
D21*
|
||||
X14000000Y27000000D03*
|
||||
D21*
|
||||
X-9000000Y12500000D03*
|
||||
D21*
|
||||
X11000000Y-7500000D03*
|
||||
D21*
|
||||
X-2500000Y-21000000D03*
|
||||
D21*
|
||||
X13500000Y5500000D03*
|
||||
D21*
|
||||
X-500000Y-21000000D03*
|
||||
D21*
|
||||
X19000000Y26000000D03*
|
||||
D21*
|
||||
X-9000000Y35000000D03*
|
||||
D21*
|
||||
X-15500000Y20500000D03*
|
||||
D21*
|
||||
X19000000Y22000000D03*
|
||||
D21*
|
||||
X-1500000Y34500000D03*
|
||||
D21*
|
||||
X16000000Y-4500000D03*
|
||||
D21*
|
||||
X19000000Y14000000D03*
|
||||
D21*
|
||||
X10000000Y-23000000D03*
|
||||
D21*
|
||||
X12500000Y15500000D03*
|
||||
D21*
|
||||
X-3000000Y12500000D03*
|
||||
D21*
|
||||
X19000000Y-11000000D03*
|
||||
D21*
|
||||
X-13000000Y19500000D03*
|
||||
D21*
|
||||
X-4500000Y19000000D03*
|
||||
D21*
|
||||
X12000000Y-31500000D03*
|
||||
D21*
|
||||
X500000Y14000000D03*
|
||||
D21*
|
||||
X17000000Y-7500000D03*
|
||||
D21*
|
||||
X-7500000Y-20000000D03*
|
||||
D21*
|
||||
X2500000Y-6500000D03*
|
||||
D21*
|
||||
X-500000Y-25000000D03*
|
||||
D21*
|
||||
X10500000Y27000000D03*
|
||||
D21*
|
||||
X4500000Y-4000000D03*
|
||||
D21*
|
||||
X12500000Y5000000D03*
|
||||
D21*
|
||||
X19000000Y39000000D03*
|
||||
D21*
|
||||
X19000000Y29500000D03*
|
||||
D21*
|
||||
X1000000Y39000000D03*
|
||||
D21*
|
||||
X-15500000Y16500000D03*
|
||||
D21*
|
||||
X4000000Y2500000D03*
|
||||
D21*
|
||||
X-1500000Y23000000D03*
|
||||
D21*
|
||||
X-16000000Y-6000000D03*
|
||||
D21*
|
||||
X-2500000Y-6500000D03*
|
||||
D21*
|
||||
X-8500000Y-13000000D03*
|
||||
D21*
|
||||
X7000000Y-8500000D03*
|
||||
D21*
|
||||
X19000000Y33500000D03*
|
||||
D21*
|
||||
X19000000Y-1500000D03*
|
||||
D21*
|
||||
X-9500000Y2500000D03*
|
||||
D21*
|
||||
X14500000Y-6000000D03*
|
||||
D21*
|
||||
X1500000Y37500000D03*
|
||||
D21*
|
||||
X500000Y-16000000D03*
|
||||
D21*
|
||||
X4500000Y16500000D03*
|
||||
D21*
|
||||
X11000000Y-6000000D03*
|
||||
D21*
|
||||
X-13500000Y21500000D03*
|
||||
D21*
|
||||
X-7500000Y-13500000D03*
|
||||
D21*
|
||||
X14500000Y-12500000D03*
|
||||
D21*
|
||||
X-3000000Y2500000D03*
|
||||
D21*
|
||||
X-7000000Y33500000D03*
|
||||
D21*
|
||||
X8000000Y39000000D03*
|
||||
D21*
|
||||
X3000000Y-15500000D03*
|
||||
D21*
|
||||
X19000000Y-7500000D03*
|
||||
D21*
|
||||
X14000000Y-8500000D03*
|
||||
D21*
|
||||
X6000000Y-23500000D03*
|
||||
D21*
|
||||
X2000000Y37000000D03*
|
||||
D21*
|
||||
X-14500000Y0D03*
|
||||
D21*
|
||||
X-9500000Y-20500000D03*
|
||||
D21*
|
||||
X10000000Y-500000D03*
|
||||
D21*
|
||||
X-8500000Y-18500000D03*
|
||||
D21*
|
||||
X14000000Y23000000D03*
|
||||
D21*
|
||||
X14000000Y-5000000D03*
|
||||
D21*
|
||||
X1000000Y-31500000D03*
|
||||
D21*
|
||||
X-16000000Y-11500000D03*
|
||||
D21*
|
||||
X3000000Y19500000D03*
|
||||
D21*
|
||||
X-2000000Y0D03*
|
||||
D21*
|
||||
X-16000000Y-27000000D03*
|
||||
D21*
|
||||
X-16000000Y-16500000D03*
|
||||
D21*
|
||||
X-9000000Y-32000000D03*
|
||||
D21*
|
||||
X7500000Y28000000D03*
|
||||
D21*
|
||||
X-1500000Y27500000D03*
|
||||
D21*
|
||||
X10000000Y-21500000D03*
|
||||
D21*
|
||||
X15500000Y32000000D03*
|
||||
D21*
|
||||
X19000000Y5000000D03*
|
||||
D21*
|
||||
X-5500000Y-21000000D03*
|
||||
D21*
|
||||
X8500000Y33000000D03*
|
||||
D21*
|
||||
X-11500000Y16000000D03*
|
||||
|