#define ARRAY_SIZE(a) \ (sizeof(a) / sizeof((a)[0])) static int transfer(int fd_spi) { int ret, i; __u8 transmit_data[]={0x00,0x00,0x00}; __u8 receive_data[] ={0x00,0x00,0x00}; struct spi_ioc_transfer transfer_struct; transfer_struct.tx_buf = (unsigned long)transmit_data; transfer_struct.rx_buf = (unsigned long)receive_data; transfer_struct.len = ARRAY_SIZE(transmit_data); transfer_struct.delay_usecs = 0; transfer_struct.speed_hz = 10000; transfer_struct.bits_per_word = 8; ret = ioctl(fd_spi, SPI_IOC_MESSAGE(1), &transfer_struct); if (ret < 1) { fprintf(stderr,"xfer failed\n"); return -1; } printf("Received: "); for (i=0;i