我不是专家的linux用户。我通常编写没有操作系统的微控制器。 现在我有一个嵌入式臂的TS7200板。该主板托管Linux 2.6内核。
我想要做的是生成PWM信号。我看到我有这个模块: /lib/modules/2.6.36.1/kernel/drivers/misc/ep93xx_pwm.ko。
但我不知道如何使用它。如何从C程序中调用该模块中包含的函数。
注意:天真地我解决原始问题的第一种方法是尝试直接在硬件寄存器中设置位,但似乎我不能这样做......我认为内存受内核保护。
注意2:我试图首先使用pthreads然后使用timerfd来实现软件pwm。但内核时间粒度是10ms,所以我不能在100hz做一个精确的pwm。 (此外,100赫兹也是一个非常糟糕的pwm :()这种方法也消耗资源。
非常感谢任何帮助。抱歉我的英语不好但不是我的母语。
亲切的问候