Hi everyone,

today i got it. i have read two bytes of data from my slave device through 
i2c interface.
the problem was in pull up . I have pulled up the SDA and SCL line to Vdd 
in my slave board.
i connected my board to P9_19 and P9_20 of BBB and i2cdetect command 
realized the slave device and it showed the slave address.

Thank you everyone who helped to solve i2c interfacing problem in my BBB.

On Thursday, December 11, 2014 11:39:35 AM UTC+5:30, [email protected] 
wrote:
>
> Hi,
>
> I am trying to read two bytes of data from a board(slave) using 
> BBB(master) through i2c interface.
>
> I connected my board's SDA and SCL lines to P9_18 and P9_17 of BBB 
> respectively.
>
> My code is 
>
> #include <stdio.h>
> #include <errno.h>
> #include <string.h>
> #include <fcntl.h>
> #include <stdlib.h>
> #include <unistd.h>
> #include <linux/i2c-dev.h>
> #include <sys/ioctl.h>
>
>
> int main()
> {
> int fd,i;
>     int addr = 0x43;
> char buffer[10] = {0};
>
> fd = open("/dev/i2c-1", O_RDWR);   // opening i2c-1 file. returns a file 
> descriptor used by read
> if(fd < 0)
> {
> printf("i2c failed to open\n");
> }
>
> if(ioctl(fd, I2C_SLAVE, addr) < 0)
> printf("failed to acquire bus\n");
>
> if(read(fd,buffer,2) != 2)     //reading 2 bytes of data
> {
> printf("i2c read failed\n");
>
> }
> else
> {
> for(i=0;i<2;i++)
> printf("the data is %d \n",buffer[i]);
> }
>
>
> return 0;
> }
>
>
>
>
>
>
> I got output --- "i2c read failed"
>
> What is the problem in my code? Or any problem in hardware? When I checked 
> the following command, I got output like
>
> root@beaglebone:~# i2cdetect -l
> i2c-0   i2c             OMAP I2C adapter                        I2C adapter
> i2c-1   i2c             OMAP I2C adapter                        I2C adapter
> root@beaglebone:~# ls -l /sys/bus/i2c/devices/i2c-*
> lrwxrwxrwx 1 root root 0 Jan  1  2000 /sys/bus/i2c/devices/i2c-0 -> 
> ../../../devices/ocp.3/44e0b000.i2c/i2c-0
> lrwxrwxrwx 1 root root 0 Jan  1  2000 /sys/bus/i2c/devices/i2c-1 -> 
> ../../../devices/ocp.3/4819c000.i2c/i2c-1
>
>
> Can anyone find problem? Please reply.
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to