If I need to read and write data over TRRS to and from headphone (i.e. I read from standard (iphone/galaxy) headphone mic. and write to standard headphone earphones).
This is a schema of what I want to achieve:
The idea is to just pass the data (without any manipulation) from the headset microphone through the ADC into the BluePill (STM32F103C8) and directly transfers it to the DAC and from there to the computer.
The reverse route is from the computer to the ADC and from there to BluePill which again does anything except transfer it directly to the DAC that transfers it to the headphones.
I need proper ADC and DAC to read and write the analog waves (proper = ADC that will know how to read the full range of the headset mic and DAC that will know to write the full range for the earphone).
I checked out ADS111x (specifically ADS1115). In it's datasheets it says
input ranges from ±256 mV to ±6.144 V, Now I know standard headphone line-level voltage is 1 mW to a 600 ohm load, is this mean that this ADC is the proper one for me?
I checked out MCP4725. In it's datasheets it says `VOUT is an analog output voltage from the DAC device.
DAC output amplifier drives this pin with a range of VSS to VDD` so I can put in VDD (voltage in) 5 V from bluepill, but the ground (VSS) will be 0 V (I think this is BluePill ground) I need probably different scale to it (not 0 V < x < 5 V , probably something more like -2.5 V < x < 2.5 V), How can I overcome this issue?
p.s. This is very strange, but although I was looking for quite a bit, there is not one normal breakout for the Arduino/Blue pill that applies TRRS connection for easily inserting and removing information (using microphone and earphones). Just a thought.