【发布时间】:2012-12-18 12:07:12
【问题描述】:
我的主人是ARM9处理器。
我想读取连接在 SPI 总线上的 8051 内部 ROM 的零地址?
我可以使用read() 系统调用吗?正如我在用户空间中想要的那样,我可以使用mmap()
系统调用?
【问题讨论】:
标签: c embedded-linux 8051
我的主人是ARM9处理器。
我想读取连接在 SPI 总线上的 8051 内部 ROM 的零地址?
我可以使用read() 系统调用吗?正如我在用户空间中想要的那样,我可以使用mmap()
系统调用?
【问题讨论】:
标签: c embedded-linux 8051
read() 系统调用将调用您之前使用open() 系统调用打开的设备驱动程序的读取例程;如果您有一个驱动程序可以访问您的 8051,那么您可以根据它已实现的方式使用它。
如果您没有驱动程序,如果您有权将物理内存映射到内存空间,并且知道要配置(如果需要)、读取和写入的正确寄存器位置,则可以选择使用 mmap()到您的 SPI 设备。如果您不知道这些寄存器位置(或通信协议),则需要阅读您的特定 CPU 手册(不是通用的 ARM9 手册,而是与您的制造商/型号完全相同的内容)以获取您需要的信息。
您还需要知道 8051 使用的通信协议才能向其发送适当的 SPI 命令。
【讨论】: