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灯循环闪烁,驱动添加成功

  • 相关阅读:
    可怕的沉默
    我排着队 拿着号码牌
    移动改名正在运行的程序
    C# 注册热键
    c#通过编码检查是否有PendingChanges没有签入
    c#读取带命名空间的xml
    自动查找并关闭窗口
    C# 应用微软的Visual Studio International Pack 类库提取汉字拼音首字母
    C#执行DOS命令(CMD命令) (转)
    asp.net 文件下载,有进度条
  • 原文地址:https://www.cnblogs.com/shenerguang/p/3381526.html
Copyright © 2011-2022 走看看