Ananth's Blog - page 8

Posts

BeagleBoneBlack ADC

Follow the instruction to enable the ADC and read outputs from the file.

echo  BB-ADC > /sys/devices/bone_capemgr.9/slots

(*There may be slight variation for directories. Figure this out if not working.) Verify whether ADC is loaded by

cat /sys/devices/bone_capemgr.9/slots



Read ADC value by

cat /sys/bus/iio/devices/iio\:device0/in_voltage0_raw


Here AIN0 (PIN39 on P9) is connected to a potentiometer. Do not exceed the voltage above 1.8V. This will damage the BBB.
Its a 12 bit ADC. So maximum value will be 4096. To calculate value in voltage,

(1.8/4096) *ADC_Value

I wrote a bash script to do this work.
For this script to work install bc on BeagleBoneBlack. bc is a small program to do mathematical calculation from terminal.

apt-get install bc

Save the above bash script to a file (adc_bash) and set permission to execute by

chmod +x adc_bash

To run it every 0.5 second,

watch -n 0.5 ./adc_bash


Once finished with the ADC you can unexport it. But it will cause a kernel panic. So its better not to do it. So the best way  is to restart the BBB or leave it as is. If you want to unexport it,

echo -7 > /sys/devices/bone_capemgr.9/slots

where 7 is the number corresponding to BB-ADC in

cat /sys/devices/bone_capemgr.9/slots
For more detail refer here.


BeagleBoneBlack GPIO Push Button + LED


 

LED Cube using Atmega328P


GPIO Blink an LED using C - BeagleBoneBlack

First enable gpio23 and set it as output.

echo 23 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio23/direction

(Refer this page for circuit info.) Then compile this code and run it. There are two arguments to this code. One is the number of times the LED blinks and the other one is the delay in us.


GPIO Blinking an LED using bash script

Refer this site. This gives a fare idea about how to design a simple transistor switch. Or go to this site.

The max o/p voltage from the gpio pin is 3.3 V. But you can get a 5V VDD from Beaglebone Black board.

The circuit I designed is given below. The transistor I used is KN2222A. (You can use any transistor)


Will add a nice circuit diagram later. Once you are finished with the circuit follow the steps in this page.

cd /sys/class/gpio
echo 23 > export
cd gpio23
echo out > direction

Then save the script given below to a file and run this in your BBB. (It will blink the LED once every second.) Cntrl + C to stop the script.