Commit graph

378 commits

Author SHA1 Message Date
Jonathan Pallant (42 Technology) d5a07bc398 Remove hard coded clock speed from blink example. 2021-09-27 17:30:06 +01:00
Jonathan Pallant (42 Technology) 07c183a636 Remove hard coded clock speed from ADC example. 2021-09-27 17:29:50 +01:00
Jonathan Pallant (42 Technology) b3b0c0c63a Add picotool to README 2021-09-27 16:26:57 +01:00
Jonathan Pallant (42 Technology) 02ea5a4ac8 Link to pio-rs 2021-09-27 16:26:09 +01:00
Jonathan Pallant (42 Technology) 6d014328ed Expand on page title a little bit 2021-09-27 16:25:53 +01:00
Jonathan Pallant 77787e760d
Merge pull request #133 from jannic/pio-blinky-example
Add a simple example for PIO.
2021-09-27 15:35:26 +01:00
Jonathan Pallant (42 Technology) b0bcbe68d8 Update blinky example. 2021-09-27 14:47:25 +01:00
Jonathan Pallant (42 Technology) ed27dc9949 Update ADC example. 2021-09-27 14:42:19 +01:00
Jonathan Pallant (42 Technology) 0fa6bf9e0e README updates.
Trying to clarify what is HAL specific and what is RP specific.
2021-09-27 14:32:11 +01:00
Jan Niehusmann fbe2a8834f Update comment on top of pio_blink.rs 2021-09-27 12:36:23 +00:00
Jan Niehusmann c93ea0b97c Update comments in examples/pio_blink.rs 2021-09-26 13:51:48 +00:00
Jan Niehusmann 105dcfddd7
Implement bus keep inputs, as documented in C SDK (#134)
When both pull-up and pull-down are enabled, the RP2040 enters a
so-called "bus keep" function, which uses a weak pull to tue current
high/low state of the GPIO.

See for example
https://raspberrypi.github.io/pico-sdk-doxygen/group__hardware__gpio.html#gab6bf9552da32b3dd0a5d0db45d8374fc
2021-09-26 23:38:07 +10:00
Rob Young d93c4fc4c8
Implement RngCore for RingOscillator (#135)
Implement rand_core::RngCore for RingOscillator from the get_random_bit
function. This is not suitable for security purposes so
rand_core::CryptoRng has not been implemented.
2021-09-26 20:51:01 +10:00
Jan Niehusmann b79f859d72 Add a simple example for PIO. 2021-09-25 13:22:13 +00:00
Jan Niehusmann 389e0ea715 fix pico_usb_twitchy_mouse with usbd-hid >= 0.5.1
usbd-hid 0.5.1 contained an accidental semver breaking change

fix example accordingly
2021-09-25 20:33:31 +10:00
MGlolenstine 87b29bf9f4 Fixed a formatting typo 2021-09-25 00:53:30 +10:00
9names b0c15ccc77
Update changelog and bump verson for hal release 0.3.0 (#121)
* Update CHANGELOG.md and Cargo.toml for release 0.3.0

* Bump BSP hal dep version
2021-09-22 20:43:30 +10:00
Jonathan Nilsson be4a7e0498
Make Spi::set_baudrate public (#116) 2021-09-22 20:41:21 +10:00
Jonathan Pallant 58242bcc00
Merge pull request #128 from 42-technology-ltd/update-pico-examples
Update Pico BSP examples
2021-09-22 09:06:44 +01:00
Jonathan Pallant (42 Technology) cbff22b911 Fix the pico lipo example. 2021-09-21 16:38:03 +01:00
Jonathan Pallant (42 Technology) 1e6d14abb0 Correct typo. 2021-09-21 16:18:19 +01:00
Jonathan Pallant (42 Technology) 43a22e6e42 Add Feather RP2040 README 2021-09-21 16:17:51 +01:00
Jonathan Pallant (42 Technology) 34687a2ebe Add Adafruit Macropad README 2021-09-21 16:17:35 +01:00
Jonathan Pallant (42 Technology) efe32e627f Add Pico Explorer README 2021-09-21 16:17:24 +01:00
Jonathan Pallant (42 Technology) bc68ee32fb Add Pimoroni Pico Lipo README and example. 2021-09-21 16:17:14 +01:00
Jonathan Pallant (42 Technology) f0fc4ed3ad Typo in comments. 2021-09-21 12:43:16 +01:00
Jonathan Pallant (42 Technology) 25d87b838b Good ol' clippy. 2021-09-21 12:42:34 +01:00
Jonathan Pallant (42 Technology) b89e728e9c Polishing the USB interrupt examples.
Answers on a postcard please on how to avoid `static mut` when you have
lazy initialization, and static objects holding references to other
static objects.
2021-09-21 12:37:44 +01:00
Jonathan Pallant (42 Technology) ba6c409f21 Update non-IRQ USB example. 2021-09-21 10:54:13 +01:00
Jonathan Pallant (42 Technology) 35f001f61d Polishing the PWM and USB examples. 2021-09-21 10:47:43 +01:00
Jonathan Pallant (42 Technology) 3e036cf9b0 Polishing the blinky examples. 2021-09-21 10:03:47 +01:00
Jonathan 'theJPster' Pallant dc42c714e1
Merge pull request #126 from 42-technology-ltd/update_pico_docs
Update Pico BSP docs
2021-09-21 09:28:28 +01:00
Jonathan Pallant (42 Technology) 8d4407d846 Mouse twitches the other way.
You'd think I'd know the difference between the X-axis and the Y-axis
by now.
2021-09-21 09:23:58 +01:00
Jonathan 'theJPster' Pallant 1dff38551e
Merge pull request #125 from 42-technology-ltd/add_sparkfun_to_readme
Add README to Pro Micro RP2040 BSP.
2021-09-21 09:22:42 +01:00
Jonathan Pallant 410d951429 Add more example details. 2021-09-20 14:50:02 +01:00
Jonathan Pallant 0525b3deaf Examples do need to include the board name.
This is because we build in a workspace and they all share a target folder.
2021-09-20 14:39:44 +01:00
Jonathan Pallant da89317219 WIP README for Pico 2021-09-20 14:38:48 +01:00
Jonathan Pallant c992fc9967 Add README to Pro Micro RP2040 BSP.
Also add BSP to top-level README, and some extra comments in the
example.
2021-09-20 14:33:46 +01:00
Jonathan Pallant dd3c136650
Update README with examples (#124)
* Update CoC with copy from REWG.

* Expand on HAL and BSP crates.

* Expand on contribution process and acknowledgements.
2021-09-20 19:43:36 +10:00
Henrik Lievonen 904b6f0ab9
Implement GPIO override (#123)
* Implement GPIO override

Interrupt status, input, output enable and output can be overridden.
See documentation for GPIO0_CTRL.

* Fix override enum names

* Use override_value instead of raw identifier
2021-09-20 19:38:12 +10:00
Henrik Lievonen 25e477b73e
Fix PWM set/clr_inverted (#122) 2021-09-20 12:20:42 +10:00
9names ac7a17f6e1
Add doc example for i2c (#112) 2021-09-19 22:34:11 +10:00
9names 0942a170f1
Add basic SPI example (#113) 2021-09-19 22:33:36 +10:00
Wilfried Chauveau 1d5dd15092 Work around enumeration issues with small ep0 max packet size.
Prevents DataIn of the previous request from being sent to the host when
a new setup is received.
2021-09-19 22:27:17 +10:00
Wilfried Chauveau 63dd0b3066 add Pro Micro rainbow example (uses PIO & Timer's Countdown) 2021-09-17 21:17:42 +10:00
9names 98b8e3ae9c
Handle usb interrupt flags in driver (#106)
Set interrupt enable flags in USB driver. The flags were already being cleared in the USB driver.
Update USB examples to remove interrupt flag set/check as it is no longer necessary.
2021-09-17 09:40:10 +10:00
Wilfried Chauveau c509b9d22f
Add embedded_hal::timer support (#110)
* Add embedded_hal::timer support

* fixup: add pico countdown based blinky example & rework get_counter(&self) -> u16
2021-09-16 18:47:34 +10:00
Gus Caplan 833b69819e use pio instruction encoding apis 2021-09-16 17:40:25 +10:00
Jonathan Nilsson b399c96cf5
Fixed u8 overflow in spi with large postdiv (#111) 2021-09-16 10:12:58 +10:00
Henrik Lievonen d941f5637b
PIO support (#74)
Initial implementation of PIO 

Add all of the infrastructure required to include PIO programs and interact with PIO peripheral registers.
This was a massive effort between @devsnek and @henkkuli. It's great that it's now ready to go.

Co-authored-by: Gus Caplan <me@gus.host>
2021-09-16 00:32:00 +10:00