USB breakout board with 8x ADC + 8x digital out / STM32F405

General project help for Adafruit customers

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
nilsvs
 
Posts: 1
Joined: Tue Oct 19, 2021 3:56 pm

USB breakout board with 8x ADC + 8x digital out / STM32F405

Post by nilsvs »

Hi,
I am looking for a (breakout) board with the following functionality:
- Control at least 8x digital outputs
- Read at least 8x analog inputs (ADCs)
- Connect via USB to PC
- Use python on PC to readout/control above mentioned ADCs/digital outputs

I had a look at your products and I think the Adafruit STM32F405 may come close to what I need, but I am a bit confused (also with other listed products) how many exact digital outputs and how many analog inputs can be used. It does not seem like easy information to find for me unfortunately. For example in this manual https://cdn-learn.adafruit.com/download ... xpress.pdf some pins, like "RX / GPIO 0 / PB11", are listed as a "Receive pin for Serial 3", which confuses me if they can be used as digital output pin for my purpose or are already occupied?

I would like to ask if you could maybe suggest a suitable product(s) based on my requirements/confirm if the Adafruit STM32F405 is suitable for this?

I am looking forward to your reply!

User avatar
adafruit_support_mike
 
Posts: 67485
Joined: Thu Feb 11, 2010 2:51 pm

Re: USB breakout board with 8x ADC + 8x digital out / STM32F

Post by adafruit_support_mike »

You'd probably have to go up to a Grand Central to get 8 analog inputs:

https://www.adafruit.com/product/4084
https://www.adafruit.com/product/4064
nilsvs wrote:some pins, like "RX / GPIO 0 / PB11", are listed as a "Receive pin for Serial 3", which confuses me if they can be used as digital output pin for my purpose or are already occupied?
Microcontroller pins can have several different names, depending on what you're doing at the time. "RX/GPIO-0/PB11" translates to human language as:

- RX pin for the UART interface named 'Serial3' in code,
- GPIO-0 when used as a digital input/output,
- Controlled by register PORTB, bit 11,
- etc

In many cases, we also list the physical pin number for people trying to follow connections in hardware.

The underlying issue is that the physical pins coming out of the package are connected to a multiplexer inside the chip, instead of having a direct connection to any specific feature. If you tell the microcontroller to use interface Serial3, the mux will connect that pin to peripheral UART3. If you tell the microcontroller to use digital pin GPIO-0, the multiplexer will connect that pin to the PORTB peripheral. If you tell the microcontroller to use PWM on pin 0, the multiplexer will connect the pin to Channel 4 of peripheral Timer2.

To make things more complicated, peripherals usually have the option to connect their signals to one of several physical pins. There might be three or four physical pins that can potenially connect to Timer2-Channel-4, so it's impossible to say, "this feature make pin [n] do [whatever]". It's most sensible to disscuss the peripheral in terms of its signals, and to discuss the pins in terms of their current (or potential) multiplexer connections.

Locked
Please be positive and constructive with your questions and comments.

Return to “General Project help”