首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用套接字从应用程序读取MCP2515寄存器?

如何使用套接字从应用程序读取MCP2515寄存器?
EN

Stack Overflow用户
提问于 2020-04-03 13:55:45
回答 1查看 215关注 0票数 0

我有一个SPI控制器连接到MCP2515,我使用套接字在应用程序中发送/接收CAN帧(使用发送/读取)。如何使用套接字从应用程序读取MCP2515的CANCTRL寄存器?

附加信息:-使用Linux和Yocto环境构建

请尽快回复。谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-04-05 19:14:03

有几种方法可以做到这一点。在我看来,最简单的两个例子如下:

使用/dev/mem的

  1. :在linux中,/dev/mem提供对系统物理内存的访问。如果您知道CANCTRL寄存器的物理地址,它应该是MCP2515寄存器的基地址+ CANCTRL寄存器的偏移量,您可以打开/dev/mem并使用mmap将CANCTRL寄存器的地址映射到您的应用程序地址空间。然后,您可以使用mmap返回的指针访问此寄存器。作为示例,您可以查看devmem (从shell执行相同操作的实用程序) source code.

上述源代码中提到的目标地址应为CANCTRL寄存器的物理地址。

  1. 如果您有访问MCP2515 CAN控制器的设备驱动程序的权限,您可以在驱动程序中添加sysfs条目,将相关寄存器的内容导出到sysfs文件中。您可以看到如何使用sysfs here.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61005856

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档