Difference between revisions of "AS1531"

From ArmadeusWiki
Jump to: navigation, search
m (Driver)
(Connecting chip on APF boards)
Line 5: Line 5:
 
== Connecting chip on APF boards ==
 
== 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 [[APF51Dev]], the AS1531 is connected to the SPI1 bus by default, so you can move to [[AS1531#Use_it|next chapter]].
 
+
* On the [[APF27Dev]] board it can be soldered on SPI3 bus, which is available on connector J8.
On the [[APF27Dev]] board it can be soldered on SPI3 bus, which is available on connector J8.
+
  
 
{| class="wikitable" style="text-align:center; width:50%;"
 
{| class="wikitable" style="text-align:center; width:50%;"

Revision as of 15:03, 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 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 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.