0

我正在尝试使用 GPIO 将 16x2 LCD 与 Beagleboard xM 连接。我已经通过使用 shell 脚本完成了这项工作,并且运行良好。现在我想通过编写内核模块来实现相同的功能。在学习阶段,我对内核编程知之甚少。需要一些指导。提前致谢!

4

2 回答 2

0

编写内核模块与编写 shell 脚本不同。您必须用 C++ 编写自己的代码,声明内核模式,然后编译它。我找到了一个例子,但没有时间检查它,所以我把它留给你。 这是一个编写内核模块的例子,是一个连接 16x02 lcd 的教程。

于 2014-03-16T19:17:33.460 回答
-1

如果你有一个脚本,你可以像 linux 中的模块一样加载它,

在 /etc/rcS.d 文件夹中,您会发现很多脚本,例如S13 -some_name。。这些脚本将在启动时由内核自动运行。所以你可以在这里添加你的 scipt 以使其成为一个模块

所以要做的一件事是找到这些脚本列表中使用的最后一个数字,并通过将下一个数字添加到列表中的最后一个数字来重命名您的驱动程序脚本

例如:如果/etc/rcS.d中的最后一个脚本是S53logger.sh

将您的 scipt 重命名为S54-name-.sh不要忘记通过 chmod +x 更改属性

如果 /etc/rcS.d 不存在,则可能有一个文件rc.local文件,您只需将驱动程序脚本添加到其中

于 2014-03-10T09:32:01.937 回答