共2条
1/1 1 跳转至页
[转帖]如何在嵌入式linux中增加自己的设备驱动程序

发信人:Small_Stone (继往开来) 版面名称:Embedded(1960)
标 题:如何在嵌入式linux中增加自己的设备驱动程序
发信站:中国科大BBS站 (Thu, 16 May 2002 08:54:41 )
标 记:普通
btw:我做个搬运工,希望大家都转点文章来,顺便问一下我们
学校里有没有专门用于嵌入式的ftp服务器?
驱动程序的使用可以按照两种方式编译,一种是静态编译进内核,
另一种是编译成模块以供动态加载。由于uClinux不支持模块动态
加载,而且嵌入式LINUX不能够象桌面LINUX那样灵活的使用insmo
d/rmmod加载卸载设备驱动程序,因而这里只介绍将设备驱动程序
静态编译进uClinux内核的方法。下面以UCLINUX为例,介绍在一个
以模块方式出现的驱动程序test.c基础之上,将其编译进内核的一
系列步骤:(1) 改动test.c源带代码第一步,将原来的:#inclu
de #include char kernel_v
ersion[]=UTS_RELEASE;改动为:#ifdef MODULE#include #include char kernel_version[]=U
TS_RELEASE; #else#define MOD_INC_USE_COUNT#define MOD_DEC_
USE_COUNT #endif第二步,新建函数int init_test(void)将设备注
册写在此处:result=register_chrdev(254,"test",&test_fops);?!---->
?) 将test.c复制到/uclinux/linux/drivers/char目录下,并且
在/uclinux/linux/drivers/char目录下mem.c中,int chr_dev_init(
)函数中增加如下代码:#ifdef CONFIG_TESTDRIVEinit_test();#end
if(3) 在/uclinux/linux/drivers/char目录下Makefile中增加如
下代码:ifeq($(CONFIG_TESTDRIVE),y)L_OBJS+=test.oEndif(4)
在/uclinux/linux/arch/m68knommu目录下config.in中字符设备段
里增加如下代码:bool 'support for testdrive' CONFIG_TESTDRIVE
y(5) 运行make menuconfig(在menuconfig的字符设备选项里你可
以看见我们刚刚添加的'support for testdrive'选项,并且已经被选
中);make dep;make linux;make linux.text;make linux.data;
cat linux.text linux.data > linux.bin。(6) 在 /uclinux/romd
isk/romdisk/dev/目录下创建设备:mknod test c 254 0并且在/ucli
nux/appsrc/下运行make,生成新的Romdisk.s19文件。到这里,在UCL
INUX中增加设备驱动程序的工作可以说是完成了,只要将新的linux.b
in与Romdisk.s19烧入目标板中,你就可以使用自己的新设备test了
--
※ 来源: 中国科大BBS站 [bbs.ustc.edu.cn]
关键词: 转帖 何在 嵌入式 linux 增加 自己的 设备

发信人:D_J (疯言疯语,何必在意) 版面名称:Embedded(1975)
标 题:Re: 如何在嵌入式linux中增加自己的设备驱动程序
发信站:中国科大BBS站 (Fri, 17 May 2002 19:34:07 )
标 记:标记
> ==> Small_Stone(继往开来) 说道:
> btw:我做个搬运工,希望大家都转点文章来,顺便问一下我们
我代表大家感谢你这位搬运工,谢谢!
搬运的地址,推荐一些如下给你:
http://www.eetchina.com/
http://www.eetimes.com/semi/news
http://www.cnw.com.cn/
http://www.ebnchina.com/
http://www.eeplace.com/eeplace/default.xsql
http://www.embed.com.cn/
--
※ 来源: 中国科大BBS站 [bbs.ustc.edu.cn]
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
汽车+汽车地线之间连接处理被打赏20分 | |
【Zephyr】使用Zephyr外设初始化过程解析被打赏30分 | |
【S32K146】S32DS watchdog 配置使用被打赏20分 | |
【Zephyr】使用 IAR 调试 Zephyr 镜像被打赏20分 | |
赚取电动螺丝刀+电源电路理论知识分享1被打赏5分 | |
我想要一部加热台+分享常见运算放大器电路的应用被打赏5分 | |
【Zephyr】MCXN947 Zephyr 开发入门适配shell被打赏20分 | |
我想要一部加热台+常见的MOS管驱动电路被打赏5分 | |
【我要开发板】6.联合MATLAB记录数据被打赏50分 | |
【换取手持数字示波器】MicrochipMPLABHarmony框架下串口调试printf输出记录被打赏29分 |