Commit Graph

660 Commits

Author SHA1 Message Date
Vincenzo Marturano
2596de52bb Fixed missing trait implementation for PwmOutput. 2024-10-24 15:39:22 +02:00
Vincenzo Marturano
1fed8ac5db Allow separate control of duty cycle for each channel in a pwm slice by splitting the Pwm driver. 2024-10-24 15:12:04 +02:00
Dario Nieuwenhuis
8eb80c6816
Merge pull request #3444 from dnbln/main
feat: allow `bind_interrupts!` to accept conditional compilation attrs
2024-10-22 15:18:35 +00:00
Dinu Blanovschi
c797915525 fix: review comments 2024-10-22 16:56:05 +02:00
Ulf Lilleengen
0c22d4cccb
Merge pull request #3433 from 1-rafael-1/rp-pwm-embedded-hal-traits
embassy_rp: implement pwm traits from embedded_hal
2024-10-22 07:52:03 +00:00
rafael
d7db8fbab9 rustfmt 2024-10-21 11:59:03 +02:00
rafael
693bd8c6de re-export SetDutyCycle for user convenience 2024-10-21 11:54:17 +02:00
Dario Nieuwenhuis
1a24b4f018 Release embassy-executor v0.6.1, embassy-executor-macros v0.6.1 2024-10-21 01:26:02 +02:00
rafael
7fc09f89e8 embassy_rp: implement pwm traits from embedded_hal
• Update crate versions • Implement embedded-hal PWM traits • Add TB6612FNG motor driver example
2024-10-20 23:28:47 +02:00
Dario Nieuwenhuis
ee669ee5c5 Update nighlty, fix warnings.
Fixes #2599
2024-10-14 00:11:16 +02:00
Dario Nieuwenhuis
4eb820ab6c
Merge pull request #3377 from Totto8492/enable-fpu
Enable FPU for RP235X Core1
2024-10-13 20:54:22 +00:00
Dario Nieuwenhuis
a4636d819f rp/multicore: enable fpu on second core only if building for -eabihf targets. 2024-10-13 22:40:59 +02:00
Keisuke Tottori
cdcd9de051 Enable FPU for RP235X Core1 2024-10-13 21:45:54 +02:00
Caleb Jamison
70bd158d03 Make the docs be docs 2024-10-09 16:57:02 -04:00
Caleb Jamison
1b32b7bcb4 fmt 2024-10-09 16:51:52 -04:00
Bjorn
22fe493257 Better docs and adding of release for PioPwm 2024-10-09 10:12:43 -07:00
Caleb Jamison
c7f7728eb1 cargo +nightly fmt 2024-10-09 11:44:58 -04:00
Caleb Jamison
57c1fbf308 Move pio programs into embassy-rp 2024-10-09 10:18:00 -04:00
Sebastian Quilitz
b73b3f2da0 rp: Run RP235x at 150 MHz instead of 125 2024-10-05 12:18:33 +02:00
Caleb Jamison
b743dce8e4 Only B pins can be inputs. 2024-09-24 18:55:05 -04:00
Caleb Jamison
a498bf11af Disable pad isolation on PWM A pins.
Also fixes minor bug for 2040 where A pins didn't have their pull
up/down enabled.
2024-09-24 18:45:20 -04:00
Caleb Jamison
0b8c4587c2 Fix rp2350b pins >31 on debug builds 2024-09-23 13:38:43 -04:00
Dario Nieuwenhuis
d12e98aaf4
Merge pull request #3338 from ionspin/add-rp2350-trng-support
RP2350 TRNG support
2024-09-17 22:17:23 +00:00
Dario Nieuwenhuis
e597c6b959
Merge pull request #3332 from CBJamo/rp2350_pio_pins
rp: rp2350 pio pin fixes
2024-09-17 22:15:37 +00:00
Ugljesa Jovanovic
2bc49763c6
TRNG support for 235x 2024-09-17 21:26:59 +02:00
Dario Nieuwenhuis
cc9e2a51da
Merge pull request #3345 from CBJamo/rp2350_clock_padiso
rp23: Disable pad isolation on clock in/out pins
2024-09-17 19:17:31 +00:00
Caleb Jamison
2855e65cc6 Disable pad isolation on clock in/out pins 2024-09-16 13:26:24 -04:00
Caleb Jamison
d1508cc49c oops 2024-09-16 13:07:16 -04:00
Caleb Jamison
8b34c94ef3 Improve error message when pin groups are not allowed 2024-09-16 13:02:35 -04:00
Caleb Jamison
6e0c3e25fd Only check ping groups that have count >0 2024-09-16 12:58:23 -04:00
Caleb Jamison
9cfde66446 Move pin isolation config to make_pio_pin 2024-09-16 12:47:34 -04:00
Caleb Jamison
48fd0550d1 Review fixes
Don't overflow on subtract
Replace giant match with for loop
dedupe register write
2024-09-16 12:41:12 -04:00
Sebastian Quilitz
313e76af04 rp: add constructor for tx-only blocking UART 2024-09-16 12:27:17 +02:00
Caleb Jamison
55c3da5a4f Properly drop pins >30 2024-09-15 20:48:54 -04:00
Caleb Jamison
ed6cbc7a3a Fix upper bound of case where pins should be <=31 2024-09-15 20:09:18 -04:00
Caleb Jamison
e359b24121 remove debug print 2024-09-12 11:50:36 -04:00
Caleb Jamison
823a82adb7 Fixup formatting to work with log 2024-09-12 11:43:15 -04:00
Caleb Jamison
eeda57a424 rp2350 pio pin fixes
Disable pad isolation on any used pin.
Use GPIOBASE and offset pin bases if all pins are > 16, panic if some
pins are < 16 and some are > 31
2024-09-12 11:37:17 -04:00
Caleb Jamison
3d6a270f30
rp: Fix indexing for pins >31 on rp235xb (#3330)
* Fix indexing for pins >31 on rp235xb

* fixup knowing that 1<<7 is 128 not 64
2024-09-12 01:44:11 +02:00
Caleb Jamison
e75903138a Fix commented out code 2024-09-04 13:42:03 -04:00
Caleb Jamison
0434798439 Import otp from rp-hal, helper fns for chipid and randid
Again, credit to @thejpster for doing the hard part and figuring out the
otp.
2024-08-29 21:08:25 -04:00
Caleb Jamison
372270a9b9 rp235x flash support.
The 2350 doesn't have a boot2 like the 2040, but it does have the
concept of a xip setup function that could be customized. By default the
bootrom searches for the attached flash chip and provides an xip setup
func at the base of the bootram. That bootram is not executable, so it
still needs to be copied to ram like boot2 would be.

Currently does not use inline assembly.

Also switch to picotool, as elf2uf2 has not been patched to support the
2350.
2024-08-29 10:47:03 -04:00
Caleb Jamison
0a33edc997 Import rom_data for the rp235x, don't use intrinsics on rp235x
Many thanks to @thejpster for his work on the rom_data!
Working around boot2 is currently a bit hacky for the rp235x, that will
improve in upcoming rp235x flash pr.
2024-08-26 09:43:08 -04:00
Ugljesa Jovanovic
8c1024b2a5
Set up timer0 tick when initializing clocks 2024-08-24 12:19:12 +02:00
Dario Nieuwenhuis
eab3a57263 rp: use the rp-binary-info crate for binary info. 2024-08-17 22:12:39 +02:00
Dario Nieuwenhuis
16c3e5880f Add license files to embassy-rp crediting rp-rs. 2024-08-16 17:51:52 +02:00
Jonathan 'theJPster' Pallant
ccf8ce7c7e Note where some embassy-rs files come from.
In a similar fashion to other source files taken from rp-rs.
2024-08-16 17:48:22 +02:00
Caleb Jamison
0b58ef8f1b Fix commented out code 2024-08-13 00:54:41 -04:00
Dario Nieuwenhuis
3e27ee1ecc Actually fix embassy-rp docs build. 2024-08-12 14:38:52 +02:00
Caleb Jamison
13cb431472 Enable rp235x doc tests, fixup feature doc
The rp235x doc test requires an unfortunate workaround using a private
feature, "_test", in order compile.
2024-08-12 05:47:16 -04:00