old PCM1725 DAC with Arduino UNO? - Page 1
Forum section: electronics / general

author: dentaku
author_rank: Frequent Contributor
timestamp: September 22, 2015, 10:53:03 pm
content: Just as an experiment I soldered an old SOIC BB PCM1725 16bit DAC to an adapter because I've never soldered anything like that before and it turned out quite well.I was wondering, is this DAC useful to someone with a simple Arduino UNO.It doesn't seem like anyone is using anything slower than a Teensy or a DUE with PCM I2S DACs like this.I'm not finding much about what it's like to use this kind of DAC with any kind of Arduino in fact.I'm not building anything in particular, just curious about how it works.Would this 16bit DAC be usable with an UNO maybe at slower speeds than normal for outputting simple waveforms with the samples stored in an array?I just did this experiment with a 12bit DAC over SPI and it works.It seems to support both I2S and what the TI datasheet calls “Normal” Data Input Timing which is right justified data opposed to left justified for I2S.Page #6 of the datasheet shows it quite wellhttp://www.ti.com/lit/ds/sbas067/sbas067.pdfand it certainly looks simpler than something like the SPI MCP4922 12bit DAC I've ben messing with lately.

author: obiwanjacobi
author_rank: Super Contributor
timestamp: September 23, 2015, 08:02:37 am
content: I am sure you can get it to work. The only problem I see is in the amount of memory you may need to feed a 96kHz bit stream - if you want to play 'samples'. If you could generate the digital stream fast enough (simple sine (table) and block wave forms?) it will certainly fly. Of-course you can always feed it at slower than 96kHz rates...

author: dentaku
author_rank: Frequent Contributor
timestamp: September 23, 2015, 11:01:47 pm
content: Quote from: obiwanjacobi on September 23, 2015, 08:02:37 amYup, I'm not trying to play back samples, just single cycles of a waveform over and over.I've searched around and I doesn't look like anyone has any instructions of using I2S with a regular Arduino.I guess I'll just have to experiment a bit.

author: obiwanjacobi
author_rank: Super Contributor
timestamp: September 24, 2015, 04:04:48 am
content: Go to bed with the datasheet.I mean get to know it intimately - spent time with it. That always helps for me. Once you really understand how that chip works, interfacing to it should be fairly easy.Good luck!

author: dentaku
author_rank: Frequent Contributor
timestamp: September 25, 2015, 06:12:45 pm
content: Quote from: obiwanjacobi on September 24, 2015, 04:04:48 amThe funny thing about this old DAC is that the “Normal” Data Input Timing diagram on page 6 looks so simple compared to some SPI devices I've been using latelyWhat I'm wondering about this DAC is that obviously its intended purpose is audio using either what they call "normal" or I2S, where getting the timing right is important (I'm assuming the clock frequency has to be right to match the sampled data you're giving it) but can a DAC like this be used for other things other than audio? I don't care about the speed at the moment, it's just an experimentCan I use this DAC quite slowlyand inefficientlyusing nothing but setting the LRCIN pin high, then two shiftOut commands to send 16 bits (such as two of these to equal 16 bits... shiftOut(dataPin, bckPin, MSBFIRST, B10010101); ) then set LRCIN low and have shiftOut generate the clock signal like it always does? or are these much trickier to use than the diagrams on the datasheet make it seem to be?I'm still not sure what kind of data it expects. Is "normal" just any value between 0 and 65536 the same way an 8bit SPI digipot expects a value between 0 and 255?

author: singapol
author_rank: Frequent Contributor
timestamp: September 26, 2015, 04:36:58 am
content: Quote from: dentaku on September 25, 2015, 06:12:45 pmPCM1725 are for audio only in the sense that it takes 2 channel audio data stream based on the Sony/Philips CD Red book standard. Yes you could use UNO to generate digital data that pcm 1725 can accept using the data clock specifications, normally it would take signals from the laser head/lens processoric. But that's for your learning...if pcm1725 is a stanalone use like external DAC it would need a digital reciever like CS8416 ( it's ancient by now) to do what you would do with a UNO.which is a lot more efficient since you want to minimise jitter since it's all hardware vs software. As for "normal" I think it means the Sony format of right justified vs Philips left justified I2S from the perspective of MSB and LSB data.http://www.cirrus.com/en/products/cs8416.htmlhttp://www.soundonsound.com/sos/jan98/articles/cdformats.htm

author: dentaku
author_rank: Frequent Contributor
timestamp: September 26, 2015, 01:27:04 pm
content: Quote from: singapol on September 26, 2015, 04:36:58 amOK, so it pretty much useless for anything but audio.I'll just stick with regular SPI DACs and digipots for now.