zoukankan      html  css  js  c++  java
  • 使用itop4412开发板单独编译驱动模块

    上面我们的驱动是放在了内核源码的目录下来实现的编译成驱动模块,很多时候我们都是
    拿到一个驱动源码,不需要把他放到内核源码里面,而是直接把他编译成驱动模块,下面我们
    来讲下实现方法,我们还是以蜂鸣器的驱动为例来讲解。
    1)因为开发板带的内核默认是把蜂鸣器直接编译到内核里面了,所以我们要重复前边的
    步骤“1”到步骤“19”,完成这些步骤以后,把生成的镜像“zImage”烧写到开发板。
    2)然后在虚拟机的目录下用命令 mkdir 建立文件夹“module”,如下图所示。
    1.jpg

    3)然后用命令 cd 进入到建立的“module”文件夹,如下图所示

    2.jpg

    4)拷贝内核里面的蜂鸣器驱动到 module 文件夹,如下图所示。
    3.jpg

    5)然后在 module 文件夹建立文件“Makefile”,如下图所示。
    4.jpg

    6)然后在"Makefile"文件输入下面的信息。
    obj-m += itop4412_buzzer.o
    KDIR := /home/broswer/iTop4412_Kernel_3.0
    PWD = $(shell pwd)
    all:
    make -C $(KDIR) M=$(PWD) modules
    clean:
    rm -RF *.o
    其中的“KDIR := /home/broswer/iTop4412_Kernel_3.0"是指定我们内核源码所在的目
    录,我这里内核源码是放在了“/home/broswer/”目录下面,需要根据自己的存放位置来修
    改这个目录。
    7)然后保存并退出 Makefile,在终端输入”make“命令,编译蜂鸣器驱动,如下图所
    示。

    5.jpg

    8)编译完成后,可以看下在“module”文件夹下面生成了“itop4412_buzzer.ko”,

    如下图所示。
    6.jpg

    9)然后可以参照前面的步骤”22“来测试我们编译的蜂鸣器驱动了。

  • 相关阅读:
    undefined reference to `sqrt' 问题
    linux上开发minigui的配置过程
    linxu select 返回值
    Unix/Linux C静态库的使用
    ubuntu 默认pdf阅读器乱码
    文件锁使用原理及其方法
    fileno函数与ftruncate函数
    Linux下select函数的使用
    unix linux 文件锁
    iOS 基础笔试题
  • 原文地址:https://www.cnblogs.com/liyue3/p/12360995.html
Copyright © 2011-2022 走看看