16*2 ЖК-интерфейс с Beagleboard xM с использованием модуля ядра

Я пытаюсь связать 16x2 LCD с Beagleboard xM с помощью GPIO. Я сделал это с помощью сценария оболочки, и он работает очень хорошо. Теперь я хочу достичь той же функциональности, написав модуль ядра. Я немного знаю о программировании ядра, так как я нахожусь в фазе обучения. Нужно некоторое руководство. Заранее спасибо!

2 ответа

Написание модуля ядра отличается от написания сценариев оболочки. Вы должны написать свой собственный код на C++, объявив режим ядра, а затем скомпилировать его. Я нашел один пример, но у меня нет времени на его проверку, поэтому я оставляю это вам. Вот один пример написания модулей ядра, и вот один учебник для интерфейса 16x02 lcd.

Если у вас есть скрипт, вы можете загрузить его как модуль в Linux,

В папке /etc/rcS.d вы найдете множество скриптов, таких как S13-some_name.ш. Эти скрипты будут автоматически запускаться ядром при загрузке. Так что вы можете просто добавить свой скипет сюда, чтобы сделать его модулем

Поэтому нужно сделать, чтобы найти последний номер, использованный в этом списке сценариев, и переименовать сценарий драйвера, добавив следующий номер к последнему в списке.

например: если последний скрипт в /etc/rcS.d это S53logger.sh

Переименуйте ваш скипт в S54-name-.sh (не забудьте изменить атрибуты с помощью chmod + x)

Если файл /etc/rcS.d отсутствует, возможно, существует файл rc.local, в который нужно просто добавить скрипт драйвера

Другие вопросы по тегам