Bazen kullanılan mikroişlemci ADC ye sahip olmasına rağmen DAC birimine sahip olamayabilir.İçerisinde ki DAC yavaş kaldığında farklı bir entegre ile bunu halletmek gerekir. MCP4725 12-bit DAC ile bu uygulamada arduino yardımıyla digital verileri analoga çevirmeyi göreceğiz.

Doğada bulunan çoğu işaret analog olarak bulunur. İletilirken digital yani sayısal forma çevirmek gerekir. Ardından alınan verilerin tekrardan analoga çevrilmesi gerekir. Örnek vermek gerekirse bir sesin herhangi bir noktadan başka bir noktaya bluetooth ile aktarımı sırasında önce analog olarak alınması ardınan sayısal forma çevrilmesi daha sonra ise iletildikten sonra tekrar analoga çevrilirken sesin ne olduğunun anlaşılması gerekir.

arduino ile dac

Arduino ile bağlantılarına gelirsek öncelikle

Mcp4725 in vdd yani besleme gerilimi 3-5 volt arasında olmalıdır.

GND ise Arduino GND çıkışına bağlanabilir. Böylece toprak noktaları ortaklanmış olur.

DAC I2C haberleşmesini kullanacaktır.

SDA için I2C Data (Uno üzerinde, pin A4  Mega bacak no 20 ve Leonardo’da digital 2)

SCL için I2C Clock( Uno üzerinde,pin A5 Mega bacak no 21 ve Leonardo’da digital 3)

A0 I2C adresini değiştirmemize yarayacaktır. Varsayılan olarak başlangıçta hex 0x62’dir. Eğer A0 Vdd ile bağlanırsa 0x63 olacaktır.

Mcp4725 üzerinde bulunan Vout ise bizim analog çıkışımızdır. Aralık olarak bizim verdiğimiz besleme gerilimi ile 0 volt arasındadır. 12bitlik arasında ki değerler arasında olacaktır. 0xFFF

Kodlar ve kütüphane için:

https://github.com/adafruit/Adafruit_MCP4725arduino digital analog