This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
resources:tools-software:linux-drivers:iio-dac:ad5676 [10 Jan 2019 13:37] – [Files] Mircea Caprioru | resources:tools-software:linux-drivers:iio-dac:ad5676 [20 Nov 2020 10:32] (current) – [Status] Alexandru Ardelean | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== | + | ====== |
===== Supported Devices ===== | ===== Supported Devices ===== | ||
Line 8: | Line 8: | ||
* [[adi> | * [[adi> | ||
* [[adi> | * [[adi> | ||
+ | * [[adi> | ||
* [[adi> | * [[adi> | ||
* [[adi> | * [[adi> | ||
* [[adi> | * [[adi> | ||
* [[adi> | * [[adi> | ||
+ | * [[adi> | ||
* [[adi> | * [[adi> | ||
* [[adi> | * [[adi> | ||
Line 33: | Line 35: | ||
===== Evaluation Boards ===== | ===== Evaluation Boards ===== | ||
+ | * [[adi> | ||
* [[adi> | * [[adi> | ||
* [[adi> | * [[adi> | ||
Line 50: | Line 53: | ||
^ Source ^ Mainlined? ^ | ^ Source ^ Mainlined? ^ | ||
- | | [[https:// | + | | [[https:// |
===== Files ===== | ===== Files ===== | ||
Line 68: | Line 71: | ||
* spi-cpol: Needs to be set for the correct SPI mode | * spi-cpol: Needs to be set for the correct SPI mode | ||
* vcc-supply: Phandle to the fixed regulator | * vcc-supply: Phandle to the fixed regulator | ||
+ | * interrupts: the interrupt used for buffer sampling | ||
+ | * pwms: pwm pin used as the interrupt source | ||
< | < | ||
Line 88: | Line 93: | ||
spi-cpha; | spi-cpha; | ||
vcc-supply = <& | vcc-supply = <& | ||
+ | |||
+ | | ||
+ | | ||
+ | |||
+ | pwms = <& | ||
+ | | ||
}; | }; | ||
</ | </ | ||
Line 95: | Line 106: | ||
* reg: The chipselect number used for the device | * reg: The chipselect number used for the device | ||
* vcc-supply: Phandle to the fixed regulator | * vcc-supply: Phandle to the fixed regulator | ||
+ | * interrupts: the interrupt used for buffer sampling | ||
+ | * pwms: pwm pin used as the interrupt source | ||
< | < | ||
Line 113: | Line 126: | ||
reg = < | reg = < | ||
vcc-supply = <& | vcc-supply = <& | ||
+ | |||
+ | | ||
+ | | ||
+ | |||
+ | pwms = <& | ||
+ | | ||
}; | }; | ||
</ | </ | ||
Line 127: | Line 146: | ||
root:/ | root:/ | ||
- | -r--r--r-- 1 root root 4096 Nov 11 12:03 dev | + | drwxr-xr-x 2 root root 0 Jul 31 15:17 buffer |
- | -r--r--r-- 1 root root 4096 Nov 11 12:03 name | + | -r--r--r-- 1 root root 4096 Jul 31 15:17 dev |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage0_powerdown | + | -r--r--r-- 1 root root 4096 Jul 31 15:17 name |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage0_powerdown_mode | + | lrwxrwxrwx 1 root root 0 Jul 31 15:17 of_node -> ../ |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage0_raw | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage0_powerdown |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage1_powerdown | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage0_powerdown_mode |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage1_powerdown_mode | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage0_raw |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage1_raw | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage10_powerdown |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage2_powerdown | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage10_powerdown_mode |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage2_powerdown_mode | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage10_raw |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage2_raw | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage11_powerdown |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage3_powerdown | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage11_powerdown_mode |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage3_powerdown_mode | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage11_raw |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage3_raw | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage12_powerdown |
- | -r--r--r-- 1 root root 4096 Nov 11 12:03 out_voltage_powerdown_mode_available | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage12_powerdown_mode |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 out_voltage_scale | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage12_raw |
- | drwxr-xr-x 2 root root 0 Nov 11 12:03 power | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage13_powerdown |
- | lrwxrwxrwx 1 root root 0 Nov 11 12:03 subsystem -> ../ | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage13_powerdown_mode |
- | -rw-r--r-- 1 root root 4096 Nov 11 12:03 uevent | + | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage13_raw |
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage14_powerdown | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage14_powerdown_mode | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage14_raw | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage15_powerdown | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage15_powerdown_mode | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage15_raw | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage1_powerdown | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage1_powerdown_mode | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage1_raw | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage2_powerdown | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage2_powerdown_mode | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage2_raw | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage3_powerdown | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage3_powerdown_mode | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage3_raw | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage4_powerdown | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage4_powerdown_mode | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage4_raw | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage5_powerdown | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage5_powerdown_mode | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage5_raw | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage6_powerdown | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage6_powerdown_mode | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage6_raw | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage7_powerdown | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage7_powerdown_mode | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage7_raw | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage8_powerdown | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage8_powerdown_mode | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage8_raw | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage9_powerdown | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage9_powerdown_mode | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage9_raw | ||
+ | -r--r--r-- 1 root root 4096 Jul 31 15:17 out_voltage_powerdown_mode_available | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage_sampling_frequency | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 out_voltage_scale | ||
+ | drwxr-xr-x 2 root root 0 Jul 31 15:17 power | ||
+ | drwxr-xr-x 2 root root 0 Jul 31 15:17 scan_elements | ||
+ | lrwxrwxrwx 1 root root 0 Jul 31 15:17 subsystem -> ../../ | ||
+ | drwxr-xr-x 2 root root 0 Jul 31 15:17 trigger | ||
+ | -rw-r--r-- 1 root root 4096 Jul 31 15:17 uevent | ||
</ | </ | ||
Line 238: | Line 298: | ||
0 | 0 | ||
</ | </ | ||
+ | |||
+ | ====== Buffer Support ====== | ||
+ | **Description: | ||
+ | The nanoDAC family of devices has buffer support for changing the output of the DAC channels. To achieve this a PWM signal is used as the device trigger to output data. Using a sampling frequency attribute the period of the PWM signal can be changed. The sampling frequency is in Hz. | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | <WRAP box bggreen>< | ||
+ | < | ||
+ | root@analog:/ | ||
+ | 1000 | ||
+ | root@analog:/ | ||
+ | root@analog:/ | ||
+ | 2000 | ||
+ | </ | ||
+ | |||
+ | == Enable buffered channels == | ||
+ | **Description: | ||
+ | The user has to enable on what channels to output the buffer samples. The samples are interleaved in the following in the order of the enabled channels. | ||
+ | |||
+ | **Example: | ||
+ | <note tip> | ||
+ | If only channel 1 is enabled the buffer samples will have the following configuration: | ||
+ | <note tip> | ||
+ | |||
+ | <WRAP box bggreen>< | ||
+ | < | ||
+ | root@analog:/ | ||
+ | root@analog:/ | ||
+ | out_voltage0_en | ||
+ | out_voltage0_index | ||
+ | out_voltage0_type | ||
+ | out_voltage10_en | ||
+ | out_voltage10_index | ||
+ | root@analog:/ | ||
+ | |||
+ | root@analog:/ | ||
+ | root@analog:/ | ||
+ | data_available enable length watermark | ||
+ | root@analog:/ | ||
+ | </ | ||
+ | |||
+ | **Sending a buffer sample example: | ||
+ | <WRAP box bggreen>< | ||
+ | < | ||
+ | root@analog:/ | ||
+ | </ | ||
+ | |||