|
目前用ut6410想实现 radio的功能使用si47xx的模块 ut6410本身有提供i2c的接口和驱动 kernel linux2.6.24
硬件部份問題排除 有用示波器 sda sck脚位有讯号出来.
现在遇到的状况是想从user space透过i2c对si47xx丢cmd 但是write read回传都是-1 部份代码如下:
#define I2C_DEVICE "/dev/i2c-0"
int fd;
/* open device */
fd = open(I2C_DEVICE, O_RDWR, 0);
ioctl(fd,I2C_SLAVE, 0x22); //radio_address_w
unsigned char abDataBuf[] = {0x01,
0x81, /// Set to AM Receive. Enable interrupts.
0x05};
if((write(fd, abDataBuf, 3))!=3){
fprintf(stderr,"I2C Write Fail\n");
}
close(fd);
#./i2ctest
I2C Write Fail
请问为什么write回传是-1 为什么会写入失败? 我有哪边没有注意到?现在不知道哪边有问题卡在这很久了请好心的大大帮帮忙
|
|