用到了以下linux命令,不断更新

以下都是在ubuntu 14.04 lts下操作


cat /proc/devices


查看当前系统有哪些主设备和主设备号


ls -l /dev

查看dev下的主设备和次设备情况,包括设备号等


 ls -a /dev

查看dev下的主设备和次设备


insmod led.ko

安装led设备


lsmod | grep led

显示如下

led             24576  0


rmmod led.ko

删除led设备


先删除才能安装


dmesg |grep led |tail -n 1
[11433.182389] led_init_success

查询驱动led是否ok


modinfo led.ko

显示如下

filename:       /home/bn/a31-4.2/lichee/linux-3.3/drivers/ledtest/led/led.ko
license:        GPL
alias:          led module
description:    statistics of led
author:         bn
srcversion:     B48377DA6CF7285E7900805
depends:        
vermagic:       4.2.0-41-generic SMP mod_unload modversions

还有什么

depmod/modprobe

编译驱动程序是:

make -C /usr/src/linux-headers-4.2.0-41-generic M=/home/bn/a31-4.2/lichee/linux-3.3/drivers/ledtest/led


编译测试程序是:

gcc test_led.c -o test_led

此程序中带有main函数


Makefile文件中

all:
    make -C /usr/src/linux-headers-4.2.0-41-generic M=$(PWD) modules
clean:
    -rm -f *.o *.ko

make和-rm前面不能用空格,要用至少要有一个tab,否则前面会有个红叉叉,奇怪的就是-rm和make前面都没有tab的时候,只有-rm前面有红叉叉,make前没有,搞了好久,。。。。。。。加了tab后,make和-rm前面的图标变成了绿色的朝右边的实心箭头


用eclipse运行ledtest程序时,console老是提示Cann't open file ,查led模块已经在跑了,实在不知道怎么搞,想到前面用命令执行的可以,于是还是转回到命令窗口,直接执行./ledtest,竟然也是报Cann't open file ,靠,这不是权限不够吗?用sudo ./ledtest竟然可以了,这下傻了,eclipse里面怎么设置呢? 直接用sudo ./eclipse不行,只能切换到root模式,

执行sudo -i

然后进入ecllipse目录

执行./eclipse

右键Run as local c/c++ application,不再报Cann't open file,

但是新问题又来了,我是led on为开灯,led off为关灯,如何输入on/off呢?测试发现运行后的状态与命令行窗口最后一次运行的状态一致,比如在命令行窗口输入led on开灯,然后在eclipse里面运行,还是开灯,

解决如下:在eclipse窗口项目名字上点右键,在弹出的Run As选Run Configurations,然后在弹出的窗口中单击Arguments选项卡,在program arguments中输入参数,一个单词为一个参数,比如on算一个,但分开写o n就算两个,如果要带空格,则可以加双引号,比如"o n "也算一个

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值