The mcp4725 Digital to Analogue Converter
Goal:
The digital to analogue converter is a device very often used in control applications. Some HV power supplies are controlled by a low voltage analogue signal level: 0V .. 10V → 0kV .. 10 kV. Some DACs convert fast enough such that they can we used to generate arbitrary wave forms.
The MCP4725 is a
I2C based DAC with 12 bits resolution.
Exercise 1:
First find out on which
I2C address the MCP4725 can be reached.
Write a program that allows you to send a 12 bit digital value to the DAC. Use the pigpio library to do this using the pigpiod interface. Make sure the pigpiod deamon is started:
sudo pigpiod
You must first the initialize the pigpio library with pigpio_start and open the i2c bus with i2c_open. Have a look at the pigpio library documentation for details.
Get a value to be sent to the DAC through command line arguments and check that the analogue level on the DAC output changes using a multi-meter.
Exercise 2:
Create a pulse generator capable of producing sine, rectangular, triangular and sawtooth wave forms.
Send these to the DAC. Make sure the time between 2 samples is always the same, independent of the wave form chosen.
--
Uli Raich - 2017-10-31
Comments
Topic revision: r2 - 2017-11-27
- uli