Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: RP2040 PIO support #1212

Draft
wants to merge 7 commits into
base: develop
Choose a base branch
from
Draft

Conversation

andryblack
Copy link
Contributor

@andryblack andryblack commented Oct 23, 2024

Initial support of RP2040 PIO hardware.
Compile time C++ assembler with syntax closed to original.

todo:

  • write all opcodes arguments
  • work with dma

@andryblack andryblack changed the title RP2040 PIO support WIP: RP2040 PIO support Oct 23, 2024
@salkinium
Copy link
Member

Very, very awesome btw! I also looked into this and wanted to be able to run the existing pio programs, so I wanted to create a pioasm template for modm, which I started work on here: https://github.com/modm-ext/pico-sdk-partial/tree/pioasm.
I never finished because I realized that I needed the ASM part too, which you're working on now. Perhaps you can continue that if you want.

@andryblack
Copy link
Contributor Author

Very, very awesome btw! I also looked into this and wanted to be able to run the existing pio programs, so I wanted to create a pioasm template for modm, which I started work on here: https://github.com/modm-ext/pico-sdk-partial/tree/pioasm. I never finished because I realized that I needed the ASM part too, which you're working on now. Perhaps you can continue that if you want.

The main idea is not using tool for generating PIO code. Existing PIO programs need adapted in any case, because constaint framework specific initialisation code. Programs code not big in size and ported as one to one. I updated syntax: removed excess braces.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

2 participants