【问题标题】:How to write Simple UART Linux Device Driver for Raspberry Pi?如何为 Raspberry Pi 编写简单的 UART Linux 设备驱动程序?
【发布时间】:2015-01-20 12:40:22
【问题描述】:

我是学习设备驱动程序的初学者。我正在通过简单的示例练习学习设备驱动程序。谁能建议我如何开始为树莓派编写 uart,GPIO 设备驱动程序,因为我开始只用树莓派练习。

提前致谢 问候, 普雷迪普

【问题讨论】:

标签: c device-driver uart gpio


【解决方案1】:

如果这是您的第一个驱动程序,请从简单的开始。我会采取以下步骤:

  1. 编写一个实现读/写/打开/关闭文件操作的简单字符设备驱动程序。这意味着它们可以与“cat”和“echo”一起使用。
  2. 在从1开始的初步工作的基础上,可以编写一个GPIO驱动。这应该很简单,因为您需要做的就是从特定的内存地址写入或读取 0 或 1。
  3. 现在您已经有了一些设备驱动程序的经验,您可以为您的 uart 编写一个 tty 驱动程序。 linux 中已经有很多 tty 驱动程序的示例。

【讨论】:

  • 如你所说,我已经编写了一个简单的字符设备驱动程序。它工作正常。您能否发送一些链接来为树莓派的 GPIO 编写设备驱动程序?
  • 当我用谷歌搜索时,我得到了这个链接dev.openwrt.org/browser/trunk/target/linux/generic-2.6/files/…这对编写驱动程序有用吗?
  • 内核中已经有GPIO驱动了,可以看一下。 GPIO Driver Documentation。您甚至可以在 shell 中使用 echo 和 cat 设置方向并读取/写入值。请参阅链接中有关 sysfs.txt 的文档。
  • 是的,我已经知道 GPIO 驱动程序在那里.....如何为树莓派编写新的 gpio 设备驱动程序?
  • 我不知道还能告诉你什么。您有一个如何在 Linux 内核中执行此操作的示例。我建议查看现有的 GPIO 驱动程序是如何实现的,然后按照您认为合适的方式实现您自己的。
猜你喜欢
  • 2018-11-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多