共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 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |