DAC audio sederhana

8

Saya bertanya-tanya apakah ada yang bisa merekomendasikan chip DAC sederhana dan murah yang dapat saya gunakan untuk pemutaran audio. Saya tidak mencoba untuk mencapai sesuatu yang luar biasa atau rumit, cukup lempar beberapa angka ke dalamnya dan dengarkan suara-suara yang dihasilkannya (saya mungkin akan mulai dengan mencoba bermain sinewave) Saya telah melihat banyak solusi SOC yang kompleks, juga sebagai banyak papan evaluasi, tapi saya lebih suka memulai dengan satu IC dan pergi dari sana. Ada saran?

EDIT: Tujuan saya adalah untuk akhirnya pindah ke pemrosesan DSP yang lebih maju, dan mungkin synths, jadi saya lebih suka solusi berbasis chip.

AR
sumber

Jawaban:

7

The MCP4922 adalah sebuah chip 12bit DAC tunggal dengan antarmuka SPI. Ini murah dan tersedia dalam jumlah penggemar. Sangat mudah dikendarai.

Ada juga versi mono, MCP4921.

Ini digunakan dalam synthesizer Critter And Guitari Arduino dan ada kode sumber yang tersedia.

Itu bisa membuat suara seperti ini dan ini .

Toby Jaffey
sumber
ADC 12-bit harus dapat mereproduksi bentuk gelombang musik lama apa pun, hanya dengan desisan latar lebih banyak daripada CD.
endolith
Mungkin juga patut dicatat bahwa dalam banyak kasus, Anda bisa mendapatkan IC jenis ini secara gratis dalam jumlah satuan 1-5 sebagai sampel. Bahkan, saya pikir saya punya beberapa DAC di rumah yang saya dapatkan dengan cara ini. Saya memiliki banyak IC FRAM yang telah dikirim sebagai sampel. Jika Anda baru memulai, sampel gratis adalah cara yang baik untuk melakukannya. ;-)
cbmeeks
5

Jika Anda mencari yang sederhana , Anda dapat menggunakan tangga resistor R-2R. Dibutuhkan sedikit DIO, tetapi Anda memberinya nomor digital, itu memberi Anda tingkat analog yang tepat.

Blokir

Dari Resistor Ladder, Wikipedia

Nick T
sumber
2
DIO = I / O digital? (maaf, saya benar-benar noob). Ini terlihat cukup rapi, saya harus mencobanya, tetapi saya masih mencari solusi berbasis chip karena saya berencana untuk pindah ke teknik yang lebih maju di kemudian hari.
AR
3
Tidak secepat itu. Sementara tangga R-2R dalam teori melakukan apa yang Anda inginkan, dan sebenarnya inilah yang ada di dalam banyak D / As, membuatnya sendiri sulit. Dengan resistor 1% tidak ada gunanya melewati 7 bit, misalnya, dan 7 bit adalah audio yang benar-benar jelek. Resistor tangga R-2R dalam D / A semuanya cocok dan dipangkas, yang merupakan sesuatu yang tidak dapat Anda lakukan.
Olin Lathrop
@Olin Lathrop Menarik. Bisakah Anda menjelaskan lebih lanjut tentang 1% -> 7 bit matematika? Dan bisakah kita mengatakan hal yang sama untuk DAC jaringan resistor berbobot biner?
Zeta.Investigator
@ Zeta.Investigator kira-kira karena 1 / 2⁷ <0,01 atau 1%. Apa pun yang Anda lihat tergantung pada toleransi (dan bagaimana mereka menumpuk).
Nick T
4

Ini teknik Roman Black cukup populer, dan sangat mudah untuk menerapkan.

Leon Heller
sumber
Saya harus memeriksa ini juga ...
AR
Apakah ini berbeda dengan PWM?
endolith
Ini adalah bentuk modulasi delta.
markrages
3

Komputer yang Anda gunakan untuk memposting di sini mungkin memiliki DAC 16-bit berkualitas baik di dalamnya.

Serius, hanya untuk bermain-main dengan DSP, desktop adalah tempat terbaik untuk prototipe. Anda dapat menggunakan bahasa tingkat tinggi yang bagus seperti Oktaf atau Pylab. Setelah algoritma Anda berfungsi, terjemahkan ke C. Hanya ketika itu bekerja di C pada desktop Anda harus berpikir tentang menerapkannya pada mikrokontroler.

markrages
sumber
1

USB DAC yang sangat sederhana (lebih baik dan lebih sederhana dari Resistor Ladder :) dapat dibangun menggunakan PCM2704 (lebih baik gunakan PCM2704 C jika Anda bisa). Ini adalah Delta-Sigma Stereo DAC 16-Bit dengan kualitas suara yang sangat baik dan tidak memerlukan driver di sebagian besar OS.

Skema ini sangat sederhana dan Anda dapat membangunnya menggunakan kabel point-to-point atau menggunakan PCB. Beberapa instruksi dapat ditemukan di sini atau di sini

Kemudian Anda dapat membangun perangkat dengan output S / PDIF dan TOSLINK menggunakan skema ini jika Anda mau, tetapi ini sedikit lebih rumit.

Alex Bolotov
sumber
0

BPR memiliki cukup resistor untuk membuat rasa sakit dan Anda membutuhkan ketelitian. Jadi saya pikir Anda bisa mendapatkan rangkaian IC dengan laser trimed resistor untuk beberapa dolar yang mungkin sepadan. Jika memiliki beberapa komponen aktif (tegangan presisi pada input ke tangga dan buffer pada output) maka jauh lebih baik http://www.national.com/mpf/DA/DAC0800.html#Overview

russ_hensel
sumber
0

DAC stereo yang cukup murah dan relatif mudah untuk dihubungkan ke mikrokontroler adalah NXP UDA1334ATS . Ini memiliki PLL on-board untuk menghasilkan jam sistem internal; hanya clock di bit audio. Ini dapat digunakan dari resolusi 16 hingga 24 bit, dan $ 1,70 dalam jumlah tunggal dari Digi-Key. Hadir dalam paket 16-SSOP kecil tetapi SparkFun memiliki papan breakout untuk jejak DIP untuk $ 2,95.

Jason Yoon
sumber