Difference between revisions of "AS1531"
From ArmadeusWiki
m (→Introduction) |
m (→Driver) |
||
Line 30: | Line 30: | ||
== Driver == | == Driver == | ||
− | Driver is by default included if you choose an [[APF51]] as target. | + | * Driver is by default included if you choose an [[APF51]] as target. |
− | + | * Otherwise, you can select it that way: | |
− | Otherwise, you can select it that way: | + | |
<pre class="host"> | <pre class="host"> | ||
− | + | $ make linux-menuconfig | |
</pre> | </pre> | ||
Line 44: | Line 43: | ||
</pre> | </pre> | ||
− | Then | + | * Then rebuild the Linux and rootfs images: |
<pre class="host"> | <pre class="host"> | ||
− | + | $ make linux && make | |
</pre> | </pre> | ||
Revision as of 14:02, 12 February 2013
Contents
Introduction
AS1531 is a 12bits 8 channels Analog to Digital Converter made by Austriamicrosystem. Its use a SPI bus to communicate with a master microprocessor. A driver is included in the Armadeus BSP/SDK and can be used on the APF51Dev board.
Connecting chip on APF boards
On the APF51Dev, the AS1531 is connected to the SPI1 bus by default, so you can move to next chapter.
On the APF27Dev board it can be soldered on SPI3 bus, which is available on connector J8.
J8 pin | AS1531 pin |
---|---|
SD1_D0_SPI3_MISO | DOUT |
SD1_D3_SPI3_SS | CSN |
SD1_CMD_SPI3_MOSI | DIN |
SP1_CLK_SPI3_SCLK | SCLK |
Driver
- Driver is by default included if you choose an APF51 as target.
- Otherwise, you can select it that way:
$ make linux-menuconfig
Device Drivers ---> <M> Hardware Monitoring support ---> <M> Austria Microsystems AS1531 Analog to Digital Converter
- Then rebuild the Linux and rootfs images:
$ make linux && make
Use it
Warning: AS1531 is used with internal reference voltage of 2,5V, so DO NOT TRY to acquire signals with greater voltage range. |
Load driver
To use the AS1531, first load as1531 module:
# modprobe as1531
Read channels value
# cd /sys/bus/spi/devices/spi0.0/ # ls driver in1_input in4_input in7_input modalias subsystem hwmon in2_input in5_input in_max name uevent in0_input in3_input in6_input in_min power
or:
# cd /sys/class/hwmon/hwmon0/device/ # ls driver in1_input in4_input in7_input modalias subsystem hwmon in2_input in5_input in_max name uevent in0_input in3_input in6_input in_min power
To read adc value just «cat» an input :
# cat in5_input 887
All values read are in milivolts.