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

Multiplex PCM stereo audio to HDMI #3

Open
mlorenzati opened this issue Apr 22, 2022 · 6 comments
Open

Multiplex PCM stereo audio to HDMI #3

mlorenzati opened this issue Apr 22, 2022 · 6 comments

Comments

@mlorenzati
Copy link
Owner

No description provided.

@mlorenzati
Copy link
Owner Author

@rigon
Copy link

rigon commented Feb 7, 2024

Any progress regarding muxing sound?
Certainly you are aware, the Pico has 3 built-in ADCs that can be used to capture sound (I don't know it they are any good this). But at least this can be achieved for "free" (apart from developing this feature).

@mlorenzati
Copy link
Owner Author

First come first, it's required to merge the work I did in https://github.com/mlorenzati/PicoDVI to switch from DVI to HDMI and use data island with audio on it.
This is a bit more cpu intensive so it has to be tested.
Regarding capturing analog audio to feed the data island with an ADC, is more related to "available pins" and yes I could use de 12-1 bits resolutions (-1 because of the rp2040 adc bug) but since there are no more pins is easier to add an audio codec (SPI) to do it with less cost.

All this comes again with the expense of cpu time since either way it can be done with dma the bulk transfer, IRQs are still required to prepare each packet transfer and Core 0 and 1 are well used.

@rigon
Copy link

rigon commented Feb 7, 2024

Maybe with some compromises in the interface, the three button could be collapsed into one (like short press and long press or double press) or other protocol of communication. This would free up 2 pins.

I see HSYN, VSYNC and GP_CS are connected on the pins of the ADCs, but are they being used with that purpose or as digital inputs?
Regarding the DMAs and IRQs, do you mean that they are currently all used?

@mlorenzati
Copy link
Owner Author

mlorenzati commented Feb 8, 2024

Regardin the pins, hsync and vsync are edge triggered interrups to detect video sync and CS is the selection of the IC for SPI.
DMAs and IRQS are not all used but they do impact into to aspect of the cortex M architecture, DMAs on the free memory bus usage and IRQs on core interruption.
With the fast timing of the solution, and interrupt is considered a slow peripheral.

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

No branches or pull requests

2 participants