#RustLang Wrappers for #BL602 IoT SDK ... GPIO, PWM, I2C Done! Getting ready to test on PineDio Stack BL604
https://github.com/lupyuen/bl602-rust-wrapper/blob/master/logs/sdk-expanded.rs#L167-L220
Auto-generated #RustLang Wrappers for #BL602 IoT SDK ... SPI is done!
https://github.com/lupyuen/bl602-rust-wrapper/blob/master/logs/sdk-expanded.rs#L6049-L6310
Sadly the generated #BL602 #RustLang Wrappers lack documentation ... Shall we cross-reference "The RISC-V BL602 Book"? 🤔
https://lupyuen.github.io/articles/led#how-it-works-bl602-gpio
Let's inject these "#BL602 Book" cross-references into the #RustLang Docs ... By modding our Procedural Macro
https://github.com/lupyuen/bl602-rust-wrapper/blob/master/doclinks.md
How we read the "#BL602 Book" Cross-References ... From our #RustLang Procedural Macro
https://github.com/lupyuen/bl602-rust-wrapper/blob/master/bl602-macros/src/safe_wrap.rs#L483-L521
How we inject the "#BL602 Book" Cross-References into the #RustLang Wrapper Docs ... With our Rust Procedural Macro
https://github.com/lupyuen/bl602-rust-wrapper/blob/master/bl602-macros/src/safe_wrap.rs#L457-L511
Here's how we call the #BL602 #RustLang Wrapper for GPIO
https://github.com/lupyuen/bl_iot_sdk/blob/adc/customer_app/sdk_app_rust_gpio/rust/src/lib.rs
Copying data from a C Pointer is unsafe, #RustLang reminds us
Testing the Light Sensor on #PineCone #BL602 @PINE64 ... Actually we're reading the LED via ADC with #RustLang
https://github.com/lupyuen/bl_iot_sdk/blob/adc/customer_app/sdk_app_rust_adc/rust/src/lib.rs
Building #BL602 #RustLang Firmware gets simpler ... Rust Wrapper for BL602 IoT SDK is now auto-downloaded from crates.io
https://github.com/lupyuen/bl_iot_sdk/blob/adc/customer_app/sdk_app_rust_adc/run.sh
#BL602 LED becomes Light Sensor ... Thanks to #RustLang ADC Firmware!
https://github.com/lupyuen/bl_iot_sdk/blob/adc/customer_app/sdk_app_rust_adc/rust/src/lib.rs
#PineCone #BL602 Light Sensor (improvised) ... Tested OK with #Pinebook Pro @PINE64 yay! 🎉
https://github.com/lupyuen/bl_iot_sdk/blob/adc/customer_app/sdk_app_rust_adc/rust/src/lib.rs
How we init a #BL602 #ADC Channel in our C Firmware
https://lupyuen.github.io/articles/adc?3#initialise-the-adc-channel
Setting the ADC Gain on #BL602 ... For reading tiny inputs
Here's how we create a #RustLang Project for #BL602
https://lupyuen.github.io/articles/adc?7#create-a-bl602-rust-project
Here's how we init a #BL602 ADC Channel in #RustLang
https://lupyuen.github.io/articles/adc?9#initialise-the-adc-channel-1
Reading a #BL602 ADC Channel with DMA in #RustLang
https://lupyuen.github.io/articles/adc?10#read-the-adc-channel-1
How we build #RustLang Firmware with #BL602 IoT SDK
https://lupyuen.github.io/articles/adc?11#build-the-bl602-rust-firmware
Pointer casting in c is cancer.
Here's the #RustLang code to read data from a #BL602 ADC Channel ... And compute the average
https://github.com/lupyuen/bl_iot_sdk/blob/adc/customer_app/sdk_app_rust_adc/rust/src/lib.rs#L102-L165