zoukankan      html  css  js  c++  java
  • zju(5)LED控制实验

    1、实验目的

    1、学习和掌握如何将一个驱动程序添加到Kconfig,编译到内核。

    二、实验内容

    1.编写EduKit-IV试验箱Linux操作系统下LED灯的驱动;

    2.编写EduKit-IV试验箱Linux操作系统下LED灯的应用程序。

    三、主要仪器设备

    1、Ubuntu12.04系统。

    2、英培特eduk4-s3c2410试验平台

    四、操作方法和实验步骤

    在终端中输入命令设置环境变量

    source /usr/local/src/EduKit-IV/Mini2410/set_env_linux.sh

    1. 编译busybox

    将eduk4-led.c文件复制到内核目录$KERNELDIR/drivers/char

    cd $SIMPLEDIR/ 8.1-led_test/driver/

    cp eduk4-led.c $KERNELDIR/drivers/char

    clip_image002

    修改$KERNELDIR/drivers/char目录下的Kconfig文档,如下

    cd $KERNELDIR/drivers/char

    # Edukit_led config menu

    config EDUKIT_LED

    tristate "Edukit4 Led"

    clip_image004

    修改$KERNELDIR/drivers/char目录下的Makefile文档,如下

    obj-$(CONFIG_EDUKIT4_LED) += eduk4-led.o

    clip_image006

    回到终端,输入以下命令配置裁剪内核

    cd $KERNELDIR

    make menuconfig

    clip_image008

    选择Load an Alternate Configuration File,键如config-eduk4

    clip_image010

    再选择Device Drivers

    clip_image012

    选择Character devices

    clip_image014

    选择Edukit4 Led并按y键

    clip_image016

    推出并保存

    clip_image018

    编译一下Make,将生成zImage,并将其下载到flash中(注意,前面配置的环境变量会迫使arm-linux-gcc跳到2.x版,会导致内核编译失败,故重启终端,可以解决问题)

    问题详见:http://www.360doc.com/content/07/0429/23/26230_474510.shtml#

    但有一个环境变量source /usr/local/src/EduKit-IV/Mini2410/set_env_linux.sh

    还是需要的,因为它指定了make出的zImage放到什么地方,否则会出错

    clip_image020

    切换路径到$SIMPLEDIR/8.1-led_test/app下

    然后make

    Make install

    Make clean

    clip_image022

    clip_image024

    连接好交叉串口线于板载COM和PC上,并连接好交叉网线

    打开minicom

    sudo minicom

    给平台上电,在minicom下将led_test下载到tmp目录下

    给led_test添加执行权限777,并运行led_test。

    clip_image026

    四个LED灯循环闪烁,驱动添加成功

  • 相关阅读:
    (网页)中的简单的遮罩层
    (后端)shiro:Wildcard string cannot be null or empty. Make sure permission strings are properly formatted.
    (网页)jQuery的时间datetime控件在AngularJs中使用实例
    Maven Myeclipse 搭建项目
    MyBatis 环境搭建 (一)
    java 常用方法
    XML 基础
    JS BOM
    js 事件
    js 的使用原则
  • 原文地址:https://www.cnblogs.com/shenerguang/p/3381526.html
Copyright © 2011-2022 走看看