我将对/dev/spib.c使用read()和write(),这是由用户模式spi设备驱动程序(spidev.c)创建的。现在,spi传输消息遵循由芯片供应商特定的spi控制器驱动程序定义的特定格式(例如,24位,一些位用于地址,一些位用于数据)。消息格式如何适应read()和write()事务?在write()或read()之前或之后的代码中,应该在哪里以及如何定义格式?
谢谢!

最佳答案

您需要调用spidev.c中提到的spidev_ioctl()
例如,只需检查开关情况:spi_ioc_rd_bits_per_word,设置位/字(第410行)。
最后,它写入spi设备结构中的bits_per_word成员(第415行)。
此spi指针是您正在与之通信并在spidev_probe()期间分配的spi设备的指针。
当然,您需要在r/w之前设置配置,还需要设置spi的速度和模式。
我引用了spidev.c文件的以下链接:
http://lxr.free-electrons.com/source/drivers/spi/spidev.c

关于c - 使用spi设备驱动程序读取()和写入(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23298573/

10-11 19:33