Difference between revisions of "AS1531"

From ArmadeusWiki
Jump to: navigation, search
m (Introduction)
Line 1: Line 1:
 
== Introduction ==
 
== Introduction ==
  
AS1531 is a 12bits 8 channels Analog to Digital Converter made by [http://www.austriamicrosystems.com/ Austriamicrosystem]. Its use a SPI bus to communicate with a master microprocessor. The driver is included in ARMadeus distribution and can be used with the APF51Dev board.
+
AS1531 is a 12bits 8 channels Analog to Digital Converter made by [http://www.austriamicrosystems.com/ 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 ==
 
== Connecting chip on APF boards ==

Revision as of 15:01, 12 February 2013

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.

Soldering schema for SPI3 APF27-dev
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 linux26-menuconfig
Device Drivers  --->
    <M> Hardware Monitoring support  --->
        <M>   Austria Microsystems AS1531 Analog to Digital Converter

Then compile the distribution :

[  ] $ make linux26 && make

Use it

Warning 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.