我在获得一个SPI程序时遇到了问题,我正在努力使它正确运行,这似乎是SPI_IOC_MESSAGE(N)宏的一些问题。
下面是不工作的示例代码(ioctl返回EINVAL (22) ):
std::vector<spi_ioc_transfer> tr;
<code that fills tr with 1+ transfers>
// Hand the transmission(s) off to the SPI driver
if (tr.size() > 0)
{
int ret = ioctl(fd, SPI_IOC_MESSAGE(tr.size
下面是中的image.py示例,用于通过黑屏上的i2c驱动BeagleBone显示器。它给了我一个IOError,但我对它的意思感到困惑。IOError可能是代码本身的问题,还是BeagleBone上的i2c配置问题?
import time
import Adafruit_GPIO.SPI as SPI
import Adafruit_SSD1306
import Image
# Beaglebone Black pin configuration:
RST = 'P9_12'
# Note the following are only used with SPI:
D
我已经成功地将MATLAB与我的Arduino连接起来。到目前为止,我只向Arduino发送了一些简单的任务,比如digitalWrite等等。
我一直使用的代码如下:
%-- connect to the board
a = arduino('COM9')
%-- specify pin mode
a.pinMode(9,'output');
%-- write 0 (off) to pin 9
a.digitalWrite(9,0);
%-- dummy variable
on = false;
%-- simple loop to make L
我使用下面的代码从嵌入式板的SPI端口输出数据(olimex 233-micro-它不是板上的特定问题)。当我运行代码时,ioctl返回“坏地址”。我正在修改上的代码,它工作得很好。有人能告诉我我做错了什么吗?
root@ubuntu:/home# gcc test.c -o test
test.c:20: warning: conflicting types for ‘msg_send’
test.c:16: note: previous implicit declaration of ‘msg_send’ was here
root@ubuntu:/home# ./test
errno:B