Commit Graph

83 Commits

Author SHA1 Message Date
Jeff Epler 774f6ac6ab
Switch to using MP_ERROR_TEXT instead of translate, globally 2023-10-30 09:49:06 +01:00
Scott Shawcroft e62db5adcd
Fix native property setting from subclass 2023-10-24 16:20:51 -07:00
Dan Halbert 4d175ab41a convert to MP_DEFINED_CONST_OBJ_TYPE() 2023-09-19 21:09:29 -04:00
Dan Halbert 2c0fa0f7dc initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
Dan Halbert d582407b06 pre-commit fixes 2023-08-14 00:59:22 -04:00
Dan Halbert 2171e67c1b merge latest adafruit/main 2023-08-13 19:43:54 -04:00
Dan Halbert 0d2c3c3f08 wip: continuing compilation fixes; mp_obj_alloc everywhere 2023-08-07 20:45:57 -04:00
Jeff Epler e06f836e95
add may_exec to parameter list 2023-08-07 16:28:35 -05:00
Jeff Epler 8c45abbd89
pass correct may_exec buffer length 2023-08-05 14:23:26 -05:00
Jeff Epler 6083de017a
fix method name in docstr 2023-07-27 20:09:13 -05:00
Jeff Epler 92e2134009
rp2: StateMachine: Allow loading programs at fixed offsets 2023-07-27 15:47:04 -05:00
Jeff Epler 5780d9a3d2
rp2: Add StateMachine.may_exec
and also sanity-check the init instructions, thanks to the newly
factored-out checker.

Closes: #8221
2023-07-27 15:47:01 -05:00
kreasteve 208c081c95 bugfix_#7706 2023-03-16 11:10:57 +01:00
kreasteve d7fb21ec76 Revert "bugfix"
This reverts commit 4f1627f68e.
2023-03-16 11:02:41 +01:00
kreasteve 4f1627f68e bugfix 2023-03-16 10:56:22 +01:00
MicroDev d9d94eacca
run updated pre-commit 2023-02-01 13:38:41 +05:30
Scott Shawcroft aa2ba4d88b
Have start and end kwargs respect element size
The comment says it is `buffer[start:end]` but it assumed elements
were a single byte long. Now it correctly does multibyte elements
from array.array.

Fixes #4988
2023-01-11 15:36:41 -08:00
Dan Halbert a974402542 Improve type validation errors messages, especially for pins 2023-01-10 15:02:55 -05:00
Jeff Epler d49af4d784
make wording a bit clearer 2022-12-13 08:11:47 -06:00
Dan Halbert bced76887e
Merge pull request #6973 from jepler/rp2040-fix-warnings
Rp2040 fix warnings
2022-09-30 16:21:31 -04:00
Jeff Epler afc1c0e3bb
Fix unused variable diagnostics, make it a fatal error 2022-09-30 11:19:22 -05:00
Jeff Epler 2c9c6fc80e
Remove unused static functions 2022-09-30 11:19:21 -05:00
Jeff Epler 907c5d387f
Tweak black_bindings
Originally, black_bindings found each contiguous "//|" block and sent
it to black independently. This was slower than it needed to be.

Instead, swap the comment prefix: when running black, take off
"//|" prefixes and put "##|" prefixes on all un-prefixed lines.
Then, after black is run, do the opposite operation

This more than doubles the overall speed of "pre-commit run --all",
from 3m20s to 55s CPU time on my local machine (32.5s to under 10s
"elapsed" time)

It also causes a small amount of churn in the bindings, because
black now sees enough context to know whether one 'def' follows another
or ends the 'def's in a 'class'. In the latter case, it adds an extra
newline, which becomes a "//|" line.

I'm less sure why a trailing comma was omitted before down in
rp2pio/StateMachine.c but let's roll with it.
2022-09-30 11:18:13 -05:00
Jeff Epler b2cc8d2aad
run black_bindings across all bindings 2022-09-27 15:21:42 -05:00
Jeff Epler 4e96667d50
Manual fix for oddball cases 2022-09-27 15:19:32 -05:00
Neradoc 5346b89b08 don't use @property in docs, just document as a property 2022-09-25 07:18:18 +02:00
Danny Staple 3c1c477c5b
Improve docs for rp2Pio Statemachine frequency
This frequency can be set to 0 for the system (133mhz) clock speed.
2022-08-08 22:14:55 +01:00
Jeff Epler 955bcee1b3
It's OK for an init program to be zero bytes long
Closes #6636
2022-07-23 20:01:31 -05:00
Scott Shawcroft 9d10a3da66
Conditionalize LTO 2022-05-27 12:59:54 -07:00
Dan Halbert a01dec1df9 message consolidation and more use of validators 2022-05-19 15:38:37 -04:00
Alec Delaney 289fdc1241 Added link to library and guide for rp2pio 2022-05-13 11:15:26 -04:00
Jeff Epler 5f4f66774c
Merge pull request #6360 from jepler/statemachine-improvements
Statemachine improvements
2022-05-07 09:35:57 -05:00
Jeff Epler 561ed3739a
fix the docstrings 2022-05-07 07:49:16 -05:00
Dan Halbert 34427bd6ba
Update StateMachine.c 2022-05-06 22:36:24 -04:00
Jeff Epler b482a732c6
StateMachine: add swap flag
Always use DMA if swap flag is enabled.

Improve docs a bit
2022-05-06 15:22:43 -05:00
Jeff Epler 23c0fc8354
add ability to get, clear txstall flag
This can be used to make sure a PIO has actually finished all data
it was schedule to receive via a 'once' background_write
2022-05-06 15:22:43 -05:00
Jeff Epler 78cf0a90af
Make MP_PROPERTY_GETTER / _GETSET fully declare the property
This will enable setting data attributes, namely, the section of the
symbol.
2022-05-03 08:48:53 -05:00
Jeff Epler 31da335cac
Introduce, use MP_PROPERTY_GETTER, _GETSET
Later, these can be changed in cunning ways to save flash storage.
2022-05-03 08:48:52 -05:00
Dan Halbert 3a8fb4e956
Merge pull request #5852 from jepler/floppy
Add floppyio
2022-04-26 11:40:19 -04:00
Jeff Epler 1a89a2d366
fix doc build 2022-04-23 13:25:59 -05:00
Jeff Epler 989fb828d4
Revamp background writing
Now a 'once' and a 'loop' buffer can be specified.

'once' is useful for things like writing a neopixel strip in the background,
if you can guarantee the buffer contents are stable until the write is complete.

'loop' is useful for periodic things, like pwm & servos.

both together are useful for some special cases of pwm/servo, where a
transitional waveform needs to be played for one repetition and then
a new waveform needs to be played after that.

The API is renamed to reflect that it's a more generic 'background'
operation.
2022-04-23 13:09:36 -05:00
Jeff Epler 457aba79f4
fix doc build 2022-04-20 08:09:38 -05:00
Jeff Epler ebc426d9e6
Remove debug prints, improve docs 2022-04-19 16:39:04 -05:00
Jeff Epler b128f180ca
switch to single single dma channel, fix some bugs 2022-04-19 16:33:51 -05:00
Jeff Epler 33d6d55675
the basics work
the sequence has to be a minimum length, 8 entries, but this problem
is not detected. I don't THINK this is an insurmountable problem.
2022-04-19 15:14:50 -05:00
Jeff Epler 33f5598acc
Stub 'continuous write' functionality 2022-04-19 11:35:43 -05:00
Jeff Epler f7be4345d9
Merge remote-tracking branch 'origin/main' into floppy 2022-04-07 08:37:46 -05:00
Jeff Epler 729fcf749e
Fix doc markup 2022-02-15 16:03:52 -06:00
Jeff Epler a58bf235d8
raspberry: StateMachine: Add support for wrap=, wrap_target= 2022-02-13 16:38:53 -06:00
Scott Shawcroft 22928fec55
Explain read and write size to/from PIO FIFOs 2022-02-10 10:55:04 -08:00