From 6dc4a2b90147c708978303ee57c5ffe500208a9f Mon Sep 17 00:00:00 2001 From: Milton Eduardo Sosa Date: Fri, 21 Jun 2024 14:38:00 +0200 Subject: [PATCH 1/5] Add ADC example for STM32F411 --- examples/stm32f411_adc/.cargo/config.toml | 14 + examples/stm32f411_adc/Cargo.lock | 684 ++++++++++++++++++++++ examples/stm32f411_adc/Cargo.toml | 29 + examples/stm32f411_adc/README.md | 19 + examples/stm32f411_adc/build.rs | 31 + examples/stm32f411_adc/memory.x | 6 + examples/stm32f411_adc/screenshot.png | Bin 0 -> 88447 bytes examples/stm32f411_adc/src/main.rs | 159 +++++ 8 files changed, 942 insertions(+) create mode 100644 examples/stm32f411_adc/.cargo/config.toml create mode 100644 examples/stm32f411_adc/Cargo.lock create mode 100644 examples/stm32f411_adc/Cargo.toml create mode 100644 examples/stm32f411_adc/README.md create mode 100644 examples/stm32f411_adc/build.rs create mode 100644 examples/stm32f411_adc/memory.x create mode 100644 examples/stm32f411_adc/screenshot.png create mode 100644 examples/stm32f411_adc/src/main.rs diff --git a/examples/stm32f411_adc/.cargo/config.toml b/examples/stm32f411_adc/.cargo/config.toml new file mode 100644 index 000000000000..806f2ee95b86 --- /dev/null +++ b/examples/stm32f411_adc/.cargo/config.toml @@ -0,0 +1,14 @@ +[target.thumbv7em-none-eabihf] + +runner = "probe-rs run --chip STM32F411CEUx" + +rustflags = [ + "-C", "link-arg=-Tlink.x", + "-C", "link-arg=-Tdefmt.x", +] + +[build] +target = "thumbv7em-none-eabihf" + +[env] +DEFMT_LOG = "debug" \ No newline at end of file diff --git a/examples/stm32f411_adc/Cargo.lock b/examples/stm32f411_adc/Cargo.lock new file mode 100644 index 000000000000..afcfa077d372 --- /dev/null +++ b/examples/stm32f411_adc/Cargo.lock @@ -0,0 +1,684 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "atomic-polyfill" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8cf2bce30dfe09ef0bfaef228b9d414faaf7e563035494d7fe092dba54b300f4" +dependencies = [ + "critical-section", +] + +[[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 = "bare-metal" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8fe8f5a8a398345e52358e18ff07cc17a568fbca5c6f73873d3a62056309603" + +[[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 = "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 0.2.5", + "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.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7059fff8937831a9ae6f0fe4d658ffabf58f2ca96aa9dec1c889f936f705f216" + +[[package]] +name = "defmt" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a99dd22262668b887121d4672af5a64b238f026099f1a2a1b322066c9ecfe9e0" +dependencies = [ + "bitflags", + "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.67", +] + +[[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 = "deranged" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +dependencies = [ + "powerfmt", +] + +[[package]] +name = "document-features" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef5282ad69563b5fc40319526ba27e0e7363d552a896f0297d54f767717f9b95" +dependencies = [ + "litrs", +] + +[[package]] +name = "embedded-dma" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "994f7e5b5cb23521c22304927195f236813053eb9c065dd2226a32ba64695446" +dependencies = [ + "stable_deref_trait", +] + +[[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-bus" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57b4e6ede84339ebdb418cd986e6320a34b017cdf99b5cc3efceec6450b06886" +dependencies = [ + "critical-section", + "embedded-hal 1.0.0", + "embedded-hal-async", +] + +[[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-storage" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a21dea9854beb860f3062d10228ce9b976da520a73474aed3171ec276bc0c032" + +[[package]] +name = "enumflags2" +version = "0.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d232db7f5956f3f14313dc2f87985c58bd2c695ce124c8cdd984e08e15ac133d" +dependencies = [ + "enumflags2_derive", +] + +[[package]] +name = "enumflags2_derive" +version = "0.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de0d48a183585823424a4ce1aa132d174a6a81bd540895822eb4c8373a8e49e8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "fugit" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17186ad64927d5ac8f02c1e77ccefa08ccd9eaa314d5a4772278aa204a22f7e7" +dependencies = [ + "gcd", +] + +[[package]] +name = "fugit-timer" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9607bfc4c388f9d629704f56ede4a007546cad417b3bcd6fc7c87dc7edce04a" +dependencies = [ + "fugit", + "nb 1.1.0", +] + +[[package]] +name = "futures-core" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" + +[[package]] +name = "futures-task" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" + +[[package]] +name = "futures-util" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +dependencies = [ + "futures-core", + "futures-task", + "pin-project-lite", + "pin-utils", +] + +[[package]] +name = "gcd" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d758ba1b47b00caf47f24925c0074ecb20d6dfcffe7f6d53395c0465674841a" + +[[package]] +name = "hash32" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47d60b12902ba28e2730cd37e95b8c9223af2808df9e902d4df49588d1470606" +dependencies = [ + "byteorder", +] + +[[package]] +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" + +[[package]] +name = "heapless" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bfb9eb618601c89945a70e254898da93b13be0388091d42117462b265bb3fad" +dependencies = [ + "hash32", + "stable_deref_trait", +] + +[[package]] +name = "indexmap" +version = "2.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" +dependencies = [ + "equivalent", + "hashbrown", +] + +[[package]] +name = "litrs" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" + +[[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 = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + +[[package]] +name = "panic-halt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de96540e0ebde571dc55c73d60ef407c653844e6f9a1e2fdbd40c07b9252d812" + +[[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.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0" + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[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.86" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" +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 = "rtic" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c443db16326376bdd64377da268f6616d5f804aba8ce799bac7d1f7f244e9d51" +dependencies = [ + "atomic-polyfill", + "bare-metal 1.0.0", + "cortex-m", + "critical-section", + "rtic-core", + "rtic-macros", + "rtic-monotonics", +] + +[[package]] +name = "rtic-common" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0786b50b81ef9d2a944a000f60405bb28bf30cd45da2d182f3fe636b2321f35c" +dependencies = [ + "critical-section", +] + +[[package]] +name = "rtic-core" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9369355b04d06a3780ec0f51ea2d225624db777acbc60abd8ca4832da5c1a42" + +[[package]] +name = "rtic-macros" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54053598ea24b1b74937724e366558412a1777eb2680b91ef646db540982789a" +dependencies = [ + "indexmap", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "rtic-monotonics" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "058c2397dbd5bb4c5650a0e368c3920953e458805ff5097a0511b8147b3619d7" +dependencies = [ + "atomic-polyfill", + "cfg-if", + "embedded-hal 1.0.0", + "fugit", + "rtic-time", +] + +[[package]] +name = "rtic-sync" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49b1200137ccb2bf272a1801fa6e27264535facd356cb2c1d5bc8e12aa211bad" +dependencies = [ + "critical-section", + "embedded-hal 1.0.0", + "embedded-hal-async", + "embedded-hal-bus", + "heapless", + "portable-atomic", + "rtic-common", +] + +[[package]] +name = "rtic-time" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75b232e7aebc045cfea81cdd164bc2727a10aca9a4568d406d0a5661cdfd0f19" +dependencies = [ + "critical-section", + "futures-util", + "rtic-common", +] + +[[package]] +name = "rustc_version" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" +dependencies = [ + "semver", +] + +[[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 = "stable_deref_trait" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" + +[[package]] +name = "stm32f4" +version = "0.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb94729242cd1aebe6dab42a2ca0131985ae93bc3ab2751b680df724bb35528d" +dependencies = [ + "bare-metal 1.0.0", + "cortex-m", + "cortex-m-rt", + "vcell", +] + +[[package]] +name = "stm32f411_adc" +version = "0.1.0" +dependencies = [ + "cortex-m", + "cortex-m-rt", + "defmt", + "defmt-rtt", + "embedded-hal 0.2.7", + "panic-halt", + "rtic", + "rtic-sync", + "stm32f4xx-hal", +] + +[[package]] +name = "stm32f4xx-hal" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10c41454f262c0be0c35b8cfc0d971e598281f7a9be32e894dc97a0b21deadfe" +dependencies = [ + "bare-metal 1.0.0", + "cortex-m", + "cortex-m-rt", + "document-features", + "embedded-dma", + "embedded-hal 0.2.7", + "embedded-hal 1.0.0", + "embedded-hal-nb", + "embedded-storage", + "enumflags2", + "fugit", + "fugit-timer", + "nb 1.1.0", + "rand_core", + "stm32f4", + "time", + "vcell", + "void", +] + +[[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.67" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff8655ed1d86f3af4ee3fd3263786bc14245ad17c4c7e85ba7187fb3ae028c90" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "thiserror" +version = "1.0.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "time" +version = "0.3.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" +dependencies = [ + "deranged", + "num-conv", + "powerfmt", + "time-core", +] + +[[package]] +name = "time-core" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" + +[[package]] +name = "unicode-ident" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" + +[[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.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" + +[[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", +] diff --git a/examples/stm32f411_adc/Cargo.toml b/examples/stm32f411_adc/Cargo.toml new file mode 100644 index 000000000000..1ec8156abf00 --- /dev/null +++ b/examples/stm32f411_adc/Cargo.toml @@ -0,0 +1,29 @@ +[workspace] + +[package] +authors = [""] +edition = "2018" +readme = "README.md" +name = "stm32f411_adc" +version = "0.1.0" + +[dependencies] +cortex-m = { version = "0.7.6", features = ["critical-section-single-core"] } +cortex-m-rt = "0.7.1" +rtic = {version = "2.0.1", features=["thumbv7-backend", "rtic-monotonics"]} +panic-halt = "0.2.0" +embedded-hal = "0.2.7" +defmt = "0.3.5" +defmt-rtt = { version = "0.4.0"} +rtic-sync = "1.0.2" + +[dependencies.stm32f4xx-hal] +version = "0.20.0" +features = ["stm32f411"] # replace the model of your microcontroller here + +# this lets you use `cargo fix`! +[[bin]] +name = "stm32f411_adc" +test = false +bench = false + diff --git a/examples/stm32f411_adc/README.md b/examples/stm32f411_adc/README.md new file mode 100644 index 000000000000..aaed3d32ba0a --- /dev/null +++ b/examples/stm32f411_adc/README.md @@ -0,0 +1,19 @@ +# STM32F411CEU6 ADC example +Working example to work with the internal ADC of the STM32F411CEU6 present on a Blackpill board. + +The `#init` task configures the ADC module for single-shot conversion and `PA1` as analog pin. + +Afterwards, the analog pin stored in a Potentiometer struct is set as a **local** resource to the hardware task associated to `EXTI0`. + +The `Adc` instance on the other hand, is set as a **shared** resource. The reason behind this approach is to allow other tasks make use of the only ADC module present on this microcontroller. + + + +## How-to + +### Build +Run `cargo build --release` to compile the code. If you run it for the first time, it will take some time to download and compile dependencies. + +### Run +Install `probe-rs` and configure it using the [debugging extension for VScode](https://probe.rs/docs/tools/debugger/). +The output should look like this ![scrrenshot](./screenshot.png) diff --git a/examples/stm32f411_adc/build.rs b/examples/stm32f411_adc/build.rs new file mode 100644 index 000000000000..d534cc3df609 --- /dev/null +++ b/examples/stm32f411_adc/build.rs @@ -0,0 +1,31 @@ +//! This build script copies the `memory.x` file from the crate root into +//! a directory where the linker can always find it at build time. +//! For many projects this is optional, as the linker always searches the +//! project root directory -- wherever `Cargo.toml` is. However, if you +//! are using a workspace or have a more complicated build setup, this +//! build script becomes required. Additionally, by requesting that +//! Cargo re-run the build script whenever `memory.x` is changed, +//! updating `memory.x` ensures a rebuild of the application with the +//! new memory settings. + +use std::env; +use std::fs::File; +use std::io::Write; +use std::path::PathBuf; + +fn main() { + // Put `memory.x` in our output directory and ensure it's + // on the linker search path. + let out = &PathBuf::from(env::var_os("OUT_DIR").unwrap()); + File::create(out.join("memory.x")) + .unwrap() + .write_all(include_bytes!("memory.x")) + .unwrap(); + println!("cargo:rustc-link-search={}", out.display()); + + // By default, Cargo will re-run a build script whenever + // any file in the project changes. By specifying `memory.x` + // here, we ensure the build script is only re-run when + // `memory.x` is changed. + println!("cargo:rerun-if-changed=memory.x"); +} diff --git a/examples/stm32f411_adc/memory.x b/examples/stm32f411_adc/memory.x new file mode 100644 index 000000000000..f77e9f2c758d --- /dev/null +++ b/examples/stm32f411_adc/memory.x @@ -0,0 +1,6 @@ +MEMORY +{ + /* NOTE 1 K = 1 KiBi = 1024 bytes */ + FLASH : ORIGIN = 0x08000000, LENGTH = 512K + RAM : ORIGIN = 0x20000000, LENGTH = 96K +} \ No newline at end of file diff --git a/examples/stm32f411_adc/screenshot.png b/examples/stm32f411_adc/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..f4ad0aa9b494b26c11c019184f1e605d0d63fbc9 GIT binary patch literal 88447 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⩝RE)fT^dGWPk%0 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 F{}&W;!Xp3x literal 0 HcmV?d00001 diff --git a/examples/stm32f411_adc/src/main.rs b/examples/stm32f411_adc/src/main.rs new file mode 100644 index 000000000000..6670d4fad43f --- /dev/null +++ b/examples/stm32f411_adc/src/main.rs @@ -0,0 +1,159 @@ +#![deny(unsafe_code)] +#![deny(warnings)] +#![no_main] +#![no_std] + +use panic_halt as _; + +#[rtic::app(device = stm32f4xx_hal::pac, peripherals = true)] +mod app { + + use stm32f4xx_hal::pac::ADC1; + use stm32f4xx_hal::{ + adc::{ + config::{AdcConfig, SampleTime}, + Adc, + }, + gpio::{self, Analog, Edge, Input, Output, PushPull}, + pac::TIM1, + prelude::*, + timer, + }; + + use defmt_rtt as _; + + // A simple placeholder for the analog pin + struct Potentiometer { + analog_input: gpio::PA1, + } + + // Resources shared between tasks + #[shared] + struct Shared { + delayval: u32, + adc_module: Adc, + } + + // Local resources to specific tasks (cannot be shared) + #[local] + struct Local { + button: gpio::PA0, + pot_instance: Potentiometer, + led: gpio::PC13>, + delay: timer::DelayMs, + } + + #[init] + fn init(ctx: init::Context) -> (Shared, Local) { + let mut dp = ctx.device; + + // Configure and obtain handle for delay abstraction + // 1) Promote RCC structure to HAL to be able to configure clocks + let rcc = dp.RCC.constrain(); + + // 2) Configure the system clocks + // 25 MHz must be used for HSE on the Blackpill-STM32F411CE board according to manual + let clocks = rcc.cfgr.use_hse(25.MHz()).freeze(); + + // 3) Create delay handle + let delay = dp.TIM1.delay_ms(&clocks); + + // Configure the LED pin as a push pull ouput and obtain handle + // On the Blackpill STM32F411CEU6 there is an on-board LED connected to pin PC13 + // 1) Promote the GPIOC PAC struct + let gpioc = dp.GPIOC.split(); + + // 2) Configure PORTC OUTPUT Pins and Obtain Handle + let led = gpioc.pc13.into_push_pull_output(); + + // Configure the button pin as input and obtain handle + // On the Blackpill STM32F411CEU6 there is a button connected to pin PA0 + // 3) Promote the GPIOA PAC struct + let gpioa: gpio::gpioa::Parts = dp.GPIOA.split(); + // 4) Configure Pin and Obtain Handle + let mut button = gpioa.pa0.into_pull_up_input(); + + // 5) Configure pin A1 of the blackpill to be of type analog + // the input does not need to be mutable since we are only reading it. + let analog_input = gpioa.pa1.into_analog(); + + // 6) Configure the ADC modulke for single-shot conversion + let mut adc = Adc::adc1(dp.ADC1, true, AdcConfig::default()); + // Calibrate by calculates the system VDDA by sampling the internal VREF + // channel and comparing the result with the value stored at the factory. + adc.calibrate(); + + let pot_instance = Potentiometer { + analog_input: analog_input, + }; + + // Configure Button Pin for Interrupts + // 7) Promote SYSCFG structure to HAL to be able to configure interrupts + let mut syscfg = dp.SYSCFG.constrain(); + // 8) Make button an interrupt source + button.make_interrupt_source(&mut syscfg); + // 9) Configure the interruption to be triggered on a rising edge + button.trigger_on_edge(&mut dp.EXTI, Edge::Rising); + // 10) Enable gpio interrupt for button + button.enable_interrupt(&mut dp.EXTI); + + ( + // Initialization of shared resources. In this case delay value and the ADC instance + Shared { + delayval: 2000_u32, + adc_module: adc, + }, + // Initialization of task local resources + Local { + button, + pot_instance, + led, + delay, + }, + ) + } + + // Background task, runs whenever no other tasks are running + #[idle(local = [led, delay], shared = [delayval])] + fn idle(mut ctx: idle::Context) -> ! { + let led = ctx.local.led; + let delay = ctx.local.delay; + loop { + // Turn On LED + led.set_high(); + // Obtain shared delay variable and delay + delay.delay_ms(ctx.shared.delayval.lock(|del| *del)); + // Turn off LED + led.set_low(); + // Obtain shared delay variable and delay + delay.delay_ms(ctx.shared.delayval.lock(|del| *del)); + } + } + + // Handle the IRQ generated when the button is pressed and interact with local and shared resources. + #[task(binds = EXTI0, local = [button, pot_instance], shared=[delayval, adc_module])] + fn gpio_interrupt_handler(mut ctx: gpio_interrupt_handler::Context) { + ctx.shared.delayval.lock(|del| { + *del = *del - 100_u32; + if *del < 200_u32 { + *del = 2000_u32; + } + *del + }); + + ctx.shared.delayval.lock(|del| { + defmt::info!("Current delay value {:?}", del); + }); + + // Obtain the Potentiometer instance that belongs to this task ONLY + let analog_input = &ctx.local.pot_instance.analog_input; + + // Obtain the shared instance of Adc and do one conversion of the value seen + ctx.shared.adc_module.lock(|adc_module| { + let sample = adc_module.convert(analog_input, SampleTime::Cycles_480); + defmt::info!("Current ADC value {:?}\n", sample); + }); + + ctx.local.button.clear_interrupt_pending_bit(); + } +} From 374d02fbe1b5ecc60d17f23707119bb057184428 Mon Sep 17 00:00:00 2001 From: Milton Eduardo Sosa Date: Fri, 21 Jun 2024 15:55:18 +0200 Subject: [PATCH 2/5] Update dependencies --- examples/stm32f411_adc/Cargo.lock | 6 +++--- examples/stm32f411_adc/Cargo.toml | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/examples/stm32f411_adc/Cargo.lock b/examples/stm32f411_adc/Cargo.lock index afcfa077d372..631cfe19d088 100644 --- a/examples/stm32f411_adc/Cargo.lock +++ b/examples/stm32f411_adc/Cargo.lock @@ -557,7 +557,7 @@ dependencies = [ "cortex-m-rt", "defmt", "defmt-rtt", - "embedded-hal 0.2.7", + "embedded-hal 1.0.0", "panic-halt", "rtic", "rtic-sync", @@ -566,9 +566,9 @@ dependencies = [ [[package]] name = "stm32f4xx-hal" -version = "0.20.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10c41454f262c0be0c35b8cfc0d971e598281f7a9be32e894dc97a0b21deadfe" +checksum = "ceed60591531f4da636d828701c74861a3d100e5c4e36677cadbd2eb6f46eb67" dependencies = [ "bare-metal 1.0.0", "cortex-m", diff --git a/examples/stm32f411_adc/Cargo.toml b/examples/stm32f411_adc/Cargo.toml index 1ec8156abf00..8d354b0e11e8 100644 --- a/examples/stm32f411_adc/Cargo.toml +++ b/examples/stm32f411_adc/Cargo.toml @@ -12,13 +12,13 @@ cortex-m = { version = "0.7.6", features = ["critical-section-single-core"] } cortex-m-rt = "0.7.1" rtic = {version = "2.0.1", features=["thumbv7-backend", "rtic-monotonics"]} panic-halt = "0.2.0" -embedded-hal = "0.2.7" +embedded-hal = "1.0.0" defmt = "0.3.5" defmt-rtt = { version = "0.4.0"} rtic-sync = "1.0.2" [dependencies.stm32f4xx-hal] -version = "0.20.0" +version = "0.21.0" features = ["stm32f411"] # replace the model of your microcontroller here # this lets you use `cargo fix`! From 906ccce3c3df73b4905ebdd46fa99a907d6e54ab Mon Sep 17 00:00:00 2001 From: Milton Eduardo Sosa Date: Fri, 21 Jun 2024 16:05:18 +0200 Subject: [PATCH 3/5] Update RTIC version --- examples/stm32f411_adc/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/stm32f411_adc/Cargo.toml b/examples/stm32f411_adc/Cargo.toml index 8d354b0e11e8..c1fb43d5aaec 100644 --- a/examples/stm32f411_adc/Cargo.toml +++ b/examples/stm32f411_adc/Cargo.toml @@ -10,7 +10,7 @@ version = "0.1.0" [dependencies] cortex-m = { version = "0.7.6", features = ["critical-section-single-core"] } cortex-m-rt = "0.7.1" -rtic = {version = "2.0.1", features=["thumbv7-backend", "rtic-monotonics"]} +rtic = {version = "2.1.1", features=["thumbv7-backend", "rtic-monotonics"]} panic-halt = "0.2.0" embedded-hal = "1.0.0" defmt = "0.3.5" From 499147ad42c474595d6f67a5f8f563af875a7333 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Tj=C3=A4der?= Date: Wed, 26 Jun 2024 19:23:11 +0200 Subject: [PATCH 4/5] example: f411-adc: prefer text over picture --- examples/stm32f411_adc/README.md | 19 ++++++++++++++++++- examples/stm32f411_adc/screenshot.png | Bin 88447 -> 0 bytes 2 files changed, 18 insertions(+), 1 deletion(-) delete mode 100644 examples/stm32f411_adc/screenshot.png diff --git a/examples/stm32f411_adc/README.md b/examples/stm32f411_adc/README.md index aaed3d32ba0a..972772dcc68c 100644 --- a/examples/stm32f411_adc/README.md +++ b/examples/stm32f411_adc/README.md @@ -16,4 +16,21 @@ Run `cargo build --release` to compile the code. If you run it for the first tim ### Run Install `probe-rs` and configure it using the [debugging extension for VScode](https://probe.rs/docs/tools/debugger/). -The output should look like this ![scrrenshot](./screenshot.png) +The output should look like this: + +``` +INFO Current delay value 1900 +INFO Current ADC value 665 + +INFO Current delay value 1800 +INFO Current ADC value 1138 + +INFO Current delay value 1700 +INFO Current ADC value 1136 + +INFO Current delay value 1600 +INFO Current ADC value 811 + +INFO Current delay value 1500 +INFO Current ADC value 1752 +``` diff --git a/examples/stm32f411_adc/screenshot.png b/examples/stm32f411_adc/screenshot.png deleted file mode 100644 index f4ad0aa9b494b26c11c019184f1e605d0d63fbc9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 88447 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⩝RE)fT^dGWPk%0 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 F{}&W;!Xp3x From 40c904366ee8766699bbaa2f06cf476fa4d0344b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Tj=C3=A4der?= Date: Wed, 26 Jun 2024 19:23:29 +0200 Subject: [PATCH 5/5] example: f411-adc: nit: typo --- examples/stm32f411_adc/src/main.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/stm32f411_adc/src/main.rs b/examples/stm32f411_adc/src/main.rs index 6670d4fad43f..830f5b6cf98a 100644 --- a/examples/stm32f411_adc/src/main.rs +++ b/examples/stm32f411_adc/src/main.rs @@ -58,7 +58,7 @@ mod app { // 3) Create delay handle let delay = dp.TIM1.delay_ms(&clocks); - // Configure the LED pin as a push pull ouput and obtain handle + // Configure the LED pin as a push pull output and obtain handle // On the Blackpill STM32F411CEU6 there is an on-board LED connected to pin PC13 // 1) Promote the GPIOC PAC struct let gpioc = dp.GPIOC.split();