amobbs 东莞阿莫电子网站/东莞南城健逸电子贸易商行网站

 找回密码
 注册
bottom↓
查看: 800|回复: 43

立帖为证,小弟开始攻Linux驱动

  [复制链接]
发表于 2014-9-3 08:43:24 | 显示全部楼层 |阅读模式
小弟平时工作挺忙,工作就是设计些电路,基本就是音频、电源、运放,EMC测试等等,偶尔做做高速PCB,技术含量不高不低。
不过我住的地方离公司不远,走路上下班,除去陪对象和朋友的时间,每天能有三个小时左右。
作为一个无线电爱好者,我一直觉得软件层和硬件层中间得驱动层是一个真空地带,不掌握,心里不踏实,就好像落了点什么似的。
我今天宣布,正式进军Linux驱动层,我一直很喜欢折腾嵌入式板子,不过以前都是各种单片机。
路线:韦东山的完全手册--------〉Linux设备驱动开发详解(宋宝华)-----------〉LDD3  这条路线
我不想做一个稀里糊涂的驱动工程师,要知其然,知其所以然。
好了,时间定1年,投入疯狂的操练当中。
另外,做驱动并不是意味着放弃做硬件,我只是想弥补一下知识的不系统、不连贯。
另外发一句牢骚:在中国,踏实做东西的人太少太少!!公司真正干活的、解决问题的人也太少!
立帖为证!
发表于 2014-9-4 11:03:32 | 显示全部楼层
xlqiang 发表于 2014-9-4 10:56
嗯,我已经搞过一个STM32的项目了,基于uc/OS II的。现在想转到ARM+linux上来搞应用开发,驱动这一块儿就 ...

搞应用,一本APUE(Unix环境高级编程)足以!
建议做个小项目练练手,直接看书很累的。用到什么看什么,效果会很好
发表于 2014-9-4 14:12:52 | 显示全部楼层
lkd2,ldd3,ulk都是Linux下经典
发表于 2014-9-3 08:47:15 | 显示全部楼层
顶楼主,多发发学习心得
发表于 2014-9-3 08:58:27 | 显示全部楼层
坚持下去。。。
发表于 2014-9-3 08:58:36 | 显示全部楼层
图大图多,不如图精
发表于 2014-9-3 09:03:33 | 显示全部楼层
楼主加油!顶楼主
发表于 2014-9-3 09:06:21 | 显示全部楼层
学完单片机开始学
发表于 2014-9-3 09:07:10 | 显示全部楼层
楼主加油!
发表于 2014-9-3 09:10:47 | 显示全部楼层
用不到学了也白学,过段时间就忘。
发表于 2014-9-3 09:13:16 | 显示全部楼层
我来见证下,小弟是海峡那边的人吗
发表于 2014-9-3 09:13:37 | 显示全部楼层
有没有决心在自己,你发个贴你代表你有决心了?
发表于 2014-9-3 09:14:03 | 显示全部楼层
好,样,的!
发表于 2014-9-3 09:14:10 | 显示全部楼层
投入疯狂的操练当中
支持。哈?
发表于 2014-9-3 09:15:51 | 显示全部楼层
顶楼主,多多分享经验!期待楼主的大作。
发表于 2014-9-3 09:17:26 | 显示全部楼层
好像很多实际工作中都用不到,往往单片机就能搞定
发表于 2014-9-3 09:19:48 | 显示全部楼层
加油,,,
发表于 2014-9-3 09:19:58 | 显示全部楼层
驱动,如果工作用不上,搞他又有何用,我搞了7,8年了,lz说的书我都看过了,还有其他的几本,其实你只看宋宝华的书就可以了,但是宋的书,新的没出,旧的内核已经落伍。
发表于 2014-9-3 09:26:05 | 显示全部楼层
LZ 贵在坚持   
发表于 2014-9-3 09:28:15 | 显示全部楼层
工作中用不到 学了没用。。。
发表于 2014-9-3 09:30:32 | 显示全部楼层
ok,记得发表心得
发表于 2014-9-3 09:38:48 | 显示全部楼层
驱动想写好还是得多实践才好
发表于 2014-9-3 09:39:33 | 显示全部楼层
支持lz,最好能边学边用。
发表于 2014-9-3 09:53:52 | 显示全部楼层
lz和我相同的节奏,共勉
发表于 2014-9-3 09:56:48 | 显示全部楼层
帮楼主顶
 楼主| 发表于 2014-9-3 11:02:23 来自手机 | 显示全部楼层
谢谢大家的支持,发帖是用来勉励自己!现在暂时用不到驱动但是机会可以自己创造的
 楼主| 发表于 2014-9-3 11:06:56 来自手机 | 显示全部楼层
操练就是即学习又实践,咱们电子工程师唯有多捣腾板子才能把技能提升
 楼主| 发表于 2014-9-3 11:12:52 来自手机 | 显示全部楼层
机器人天空 发表于 2014-9-3 09:17
好像很多实际工作中都用不到,往往单片机就能搞定

具体产品用的方案有很多种,单片机和arm是站在不同角度去解决问题。有些东西arm用了浪费,有些东西用单片机又不够,不过这个差异在慢慢变小,多学点技多不压身:)
 楼主| 发表于 2014-9-3 11:15:02 来自手机 | 显示全部楼层
liuqian 发表于 2014-9-3 09:53
lz和我相同的节奏,共勉

共勉!以后多多交流:)
发表于 2014-9-3 11:38:34 | 显示全部楼层
五年前也下决心学LINUX,到现在都没入门
为啥
工作用不到,没动力学,也不知道学了能干嘛,不如看看三极管,运放
一直都是STM32,MEGA128!
不过看看代码对C提高很有帮助。
发表于 2014-9-3 11:44:03 | 显示全部楼层
這是技術帖?
发表于 2014-9-3 12:36:02 来自手机 | 显示全部楼层
楼主加油,不要被linux把你给攻了
发表于 2014-9-3 12:47:49 | 显示全部楼层
如果不是去原厂工作,驱动的搞头就很小了,一般芯片厂商给的bsp包里边几乎包含了常用的驱动,只需要看懂,再会移植就ok了;或许看懂都不需要!
发表于 2014-9-3 13:07:22 | 显示全部楼层
加油,坚持下去!!!
发表于 2014-9-3 13:10:47 | 显示全部楼层
想起百度贴吧的 戒撸吧 了。。。
发表于 2014-9-3 13:18:16 | 显示全部楼层
先说做不到怎么样?
发表于 2014-9-3 13:23:16 | 显示全部楼层
有时间多积累点人脉吧。技术这个东西永远没有止境啊。还能干一辈子啊
发表于 2014-9-3 13:30:53 | 显示全部楼层
不如楼主每天学到的知识点都写在这楼吧。
发表于 2014-9-3 13:46:29 | 显示全部楼层
hellowolf 发表于 2014-9-3 11:38
五年前也下决心学LINUX,到现在都没入门
为啥
工作用不到,没动力学,也不知道学了能干嘛,不如看看三极管 ...

linux是趋势,不过如果工作中用不到,那学了是没多大用处,没多长时间就会忘掉。特别是驱动程序。

我的建议是:如果真想学linux,不要从驱动开始搞。应该从上层应用来做,linux下面的广阔天地在应用层。
我前前后学linux也有几年了,刚开始很自信,要做驱动,这玩意有意思,高大上啊,感觉能把握住系统的核心层,多帅啊,然后买了韦东山老师的视频,每日每夜的看,跟着实践。有点效果,理解了一些基本概念。但是那时工作中要不到,随后有点荒废了。再后来,工作开始搞linux,在i.MX6的基础上开发,板子买回来,研究了资料,发现TMD的驱动都做好,你在实际项目中只要学会怎么调用即可,很少会写驱动,但是我敢说,如果叫我写,我肯定能写的出来。
linux里面的东西太多了,搞单片机的同学一上来就是GPIO流水灯,好吧,到linux里面一般人刚开始都会傻眼,TMD为什么这么复杂:
如果真想从头到尾搞明白,你得熟悉一下MMU、内存映射、linux GPIO子系统,最好还要研究一下u-boot,看看系统是怎么启动的,好不容易看明白u-boot怎么把控制权交给linux,linux自己的启动流程又是一个坑。随着自己使用的深入,你会发现linux还有很多抽象好的内核子模块。明白其中的一个子模块都需要很长时间的积累。
所以,我觉得,如果实在需要,你再去研究linux驱动,要不然学会怎么使用可能是最好的路。
发表于 2014-9-3 13:49:31 | 显示全部楼层
支持楼主,要坚持住,另外也多写写心得体会
发表于 2014-9-3 14:02:50 | 显示全部楼层
顶楼主,多写心得体会
发表于 2014-9-3 14:11:11 | 显示全部楼层
顶楼主。。
发表于 2014-9-3 14:20:38 | 显示全部楼层
如果楼主需要韦东山的资料,可以联系我!
 楼主| 发表于 2014-9-3 14:28:04 来自手机 | 显示全部楼层
bruce_helen 发表于 2014-9-3 13:46
linux是趋势,不过如果工作中用不到,那学了是没多大用处,没多长时间就会忘掉。特别是驱动程序。

我的 ...

裸机的已经搞定了,我也是从底层一点一点搞起来的。
难道很多公司都不自己做驱动?给我的感觉是中国的公司太急功近利了!
发表于 2014-9-3 14:33:53 | 显示全部楼层
顶,顶,顶
发表于 2014-9-3 14:34:25 | 显示全部楼层
顶顶更健康
发表于 2014-9-3 14:41:19 | 显示全部楼层
支持..............
发表于 2014-9-3 14:55:27 | 显示全部楼层
bruce_helen 发表于 2014-9-3 13:46
linux是趋势,不过如果工作中用不到,那学了是没多大用处,没多长时间就会忘掉。特别是驱动程序。

我的 ...

兄弟你说的这真是我的心声,Linux真是一个坑接一个坑,想全搞明白怕真是一辈子也搞不完。
发表于 2014-9-3 14:55:49 | 显示全部楼层
最近同样要学习Linux驱动 和LZ共勉
发表于 2014-9-3 15:45:44 | 显示全部楼层

所以,您这也算是技术回复...
发表于 2014-9-3 15:47:12 | 显示全部楼层
搞好一样就好了,搞那么多没意思。
发表于 2014-9-3 15:48:47 | 显示全部楼层
不然呢?直播切丁丁?
发表于 2014-9-3 16:24:40 | 显示全部楼层
avr-arm 发表于 2014-9-3 14:28
裸机的已经搞定了,我也是从底层一点一点搞起来的。
难道很多公司都不自己做驱动?给我的感觉是中国的公 ...

大部分公司都不做驱动,或者做的也很少。
真正做linux驱动的是芯片厂家,做芯片的就那么几家,真想做驱动,去这些公司比较合适,在其他公司做驱动基本在打酱油的,工资还没有做应用的高。

发表于 2014-9-3 16:33:47 | 显示全部楼层
有心学Linux应用,因为项目要用到,可是现在不知从那里下手
发表于 2014-9-3 16:57:26 | 显示全部楼层
一起啊,带我一起玩~
发表于 2014-9-3 16:57:44 | 显示全部楼层
只能用呵呵来顶楼主~
发表于 2014-9-3 17:06:07 | 显示全部楼层
也在玩,买了两本书,一个arm11,工作之余慢慢吃
发表于 2014-9-3 18:15:31 | 显示全部楼层

楼主加油!
发表于 2014-9-3 18:21:54 | 显示全部楼层
支持,加油
发表于 2014-9-3 18:35:13 | 显示全部楼层
在中国,踏实做东西的人太少太少!!公司真正干活的、解决问题的人也太少! 加油 光芒大神
发表于 2014-9-3 18:40:09 | 显示全部楼层
去攻克 android吧, 那个才有 钱途,
了linux驱动, 都高不成低不就, 很尴尬的位置
 楼主| 发表于 2014-9-3 18:41:42 来自手机 | 显示全部楼层
谢谢各位大侠的提醒,我知道现实很残酷,国内的技术气氛也很浮躁,但这并不是我们不去认真学习技术的理由。
 楼主| 发表于 2014-9-3 19:22:37 来自手机 | 显示全部楼层
gzhuli 发表于 2014-9-3 15:48
不然呢?直播切丁丁?

大神都露面了,幸会幸会。
切丁不敢,我还没敢把自己逼上绝路。
发表于 2014-9-3 21:07:37 | 显示全部楼层
avr-arm 发表于 2014-9-3 19:22
大神都露面了,幸会幸会。
切丁不敢,我还没敢把自己逼上绝路。

学习linux需要一个环境,个人如果只是爱号学习,可能进展很慢!
最近也在搞linux,感觉真的是浩如烟海!
发表于 2014-9-3 21:14:51 | 显示全部楼层
的确如楼上所说,如果没有项目实践的话,很难学的,因为没有动力,linux很多东西真的是学了就忘,其实学驱动,很多的时候,都得从uboot开始学了,不然如果光是看驱动程序架构的话,你可能还会觉的不踏实的,呵呵,个人意见
发表于 2014-9-3 21:21:40 | 显示全部楼层
好样的  顶楼主
发表于 2014-9-3 21:29:10 来自手机 | 显示全部楼层
还不如好好学学应用层
发表于 2014-9-3 21:55:22 | 显示全部楼层
说的对啊。
发表于 2014-9-4 10:14:56 | 显示全部楼层
bruce_helen 发表于 2014-9-3 13:46
linux是趋势,不过如果工作中用不到,那学了是没多大用处,没多长时间就会忘掉。特别是驱动程序。

我的 ...

我也想搞linux下的应用开发,有没有好的学习建议啊,有没有合适的书籍给推荐一下?多谢多谢
发表于 2014-9-4 10:31:43 | 显示全部楼层
xlqiang 发表于 2014-9-4 10:14
我也想搞linux下的应用开发,有没有好的学习建议啊,有没有合适的书籍给推荐一下?多谢多谢 ...

建议还是从应用程序开始搞,熟悉linux操作系统的使用。
如果真想搞linux驱动,可以先搞个复杂的单片机,比如STM32,因为单片机软件比较纯粹,没有复杂的软件机制在里面,你可以很快深入理解硬件外设的操作方法,这样到linux下开发驱动会轻松一些。
linux其实还是像STM32驱动程序那样操作寄存器,但是他有一套复杂的交互机制。但是你理解了驱动程序的真谛,其他的我觉得都可以克服。
发表于 2014-9-4 10:36:25 | 显示全部楼层
avr-arm 发表于 2014-9-3 14:28
裸机的已经搞定了,我也是从底层一点一点搞起来的。
难道很多公司都不自己做驱动?给我的感觉是中国的公 ...

不是不做驱动,而是原厂已经把驱动做好了。
发表于 2014-9-4 10:40:19 | 显示全部楼层
bruce_helen 发表于 2014-9-4 10:31
建议还是从应用程序开始搞,熟悉linux操作系统的使用。
如果真想搞linux驱动,可以先搞个复杂的单片机, ...

请教下,你平常写文档也在用linux操作系统下的软件么?
发表于 2014-9-4 10:43:39 | 显示全部楼层
fengyunyu 发表于 2014-9-4 10:40
请教下,你平常写文档也在用linux操作系统下的软件么?

我也是刚学,什么都放到linux下来做是大牛干的事!
最多用vi改改配置文件,一般的源代码都通过samba共享出来用source insight。
发表于 2014-9-4 10:56:14 | 显示全部楼层
bruce_helen 发表于 2014-9-4 10:31
建议还是从应用程序开始搞,熟悉linux操作系统的使用。
如果真想搞linux驱动,可以先搞个复杂的单片机, ...

嗯,我已经搞过一个STM32的项目了,基于uc/OS II的。现在想转到ARM+linux上来搞应用开发,驱动这一块儿就像大家说的,好多都已经是做好的,
就想请教一下,搞ARM+linux上的应用开发,应该走一个什么路线,那么多参考书,看起来感觉很乱,没有一条清晰的线来把握,大侠有没有什么好的建议?
发表于 2014-9-4 11:00:17 | 显示全部楼层
edaworld 发表于 2014-9-3 09:19
驱动,如果工作用不上,搞他又有何用,我搞了7,8年了,lz说的书我都看过了,还有其他的几本,其实你只看宋 ...

请教下,入门要多长时间?
 楼主| 发表于 2014-9-4 14:43:09 | 显示全部楼层
fengyunyu 发表于 2014-9-4 10:40
请教下,你平常写文档也在用linux操作系统下的软件么?

我现在绝大部分的习惯还是win上,也就是sourceinsight,ue,npp++等等。
虚拟机跑linux,用securecrt远程登录。韦东山说正规的公司很多都是搭建linux服务器,所有人开发编译都远程通过服务器。不知真假,我也就模拟这种方法。
 楼主| 发表于 2014-9-4 14:47:32 | 显示全部楼层
如果学Linux没有环境,那我就选择环境,跳槽也是情理之中。
小弟觉得:认准了就去好好干,踏实下来。
国内的无论公司还是技术工程师大多都太浮躁了,有核心技术的没几个。真要是想成为屁眼公司那种,没有过硬的技术积累是绝对不行的。
发表于 2014-9-5 17:52:56 | 显示全部楼层
LDD3我看了下只能熟悉下概念。。
发表于 2014-9-5 18:04:25 | 显示全部楼层
I am seeing :-)
发表于 2014-9-5 18:04:25 | 显示全部楼层
I am seeing :-)
 楼主| 发表于 2014-9-5 22:23:13 | 显示全部楼层
g568054046 发表于 2014-9-5 17:52
LDD3我看了下只能熟悉下概念。。

还得实践才行,多练多调程序
发表于 2014-9-6 09:45:49 | 显示全部楼层
avr-arm 发表于 2014-9-4 14:43
我现在绝大部分的习惯还是win上,也就是sourceinsight,ue,npp++等等。
虚拟机跑linux,用securecrt远程 ...

之前的公司是这个模式开发的,服务器上有每个人的账户,开发环境都搭建好了,不用你管。基本你只需check out代码,修改代码,编译,测试,再checkin代码就可以了
发表于 2014-9-6 11:23:49 | 显示全部楼层
没有工作环境,很难有深入的,基本都是二吊子
还有这个需要很强的code能力,否则linux对你来说就是天文
发表于 2014-9-10 11:49:38 | 显示全部楼层
跟楼主共勉,路线也跟楼主差不多。学习一个月了。共勉!能不能加我QQ71341363,一起学习
发表于 2014-9-10 11:58:48 | 显示全部楼层
jordonwu 发表于 2014-9-6 09:45
之前的公司是这个模式开发的,服务器上有每个人的账户,开发环境都搭建好了,不用你管。基本你只需check  ...

commit in。。。
发表于 2014-9-10 11:59:10 | 显示全部楼层
楼主加油!顶楼主
发表于 2014-9-10 12:53:59 | 显示全部楼层
my二月兰 发表于 2014-9-3 21:14
的确如楼上所说,如果没有项目实践的话,很难学的,因为没有动力,linux很多东西真的是学了就忘,其实学驱 ...

UBOOT就跟单片机裸奔差不多了,比驱动还低级一层。
更没什么好学的。
发表于 2014-9-10 15:34:38 | 显示全部楼层
学驱动干嘛?
发表于 2014-9-10 15:35:20 | 显示全部楼层
搞搞应用开发得了
发表于 2014-9-10 15:36:35 | 显示全部楼层
听说Linux很难,赞楼主
发表于 2014-9-10 15:42:13 | 显示全部楼层
这是水贴啊,建议不用学,我就没学,直接写寄存器,效率高(针对非标准外设),在我研究之前,我专门联系过教学的 还有一个前同事到富士康做驱动好几年了,都解决不了我的困惑,没法自己用网上的点滴资料摸索,换种思路做.后来写了稿子给<电子技术应用>,被砍,我也不想投了,直接在网上公布了
发表于 2014-9-11 20:24:56 | 显示全部楼层
顶,最近也在看
发表于 2014-9-11 21:00:33 | 显示全部楼层
深入了看都是和硬件打交道,各种协议,时序的,也很繁杂,浅的就看看使用就好,不是这个吃饭的话,一般不用太深入了,专业的事情还是交给专业的人员处理吧
发表于 2014-9-11 21:20:49 | 显示全部楼层
R88 发表于 2014-9-3 09:10
用不到学了也白学,过段时间就忘。

还真的是这样!
发表于 2014-9-11 21:31:12 | 显示全部楼层
mark。。。。。。。
发表于 2014-9-11 23:31:48 | 显示全部楼层
技术是带出来的,希望楼主学业有成。
发表于 2014-9-11 23:56:18 来自手机 | 显示全部楼层
你还在学linux么
发表于 2014-9-12 19:36:00 | 显示全部楼层
支持你,平时我也有类似的想法,但是我觉得还是在需要的时候在学比较好,也不容易忘记,学得也快!
发表于 2014-9-12 19:36:16 | 显示全部楼层
支持你,平时我也有类似的想法,但是我觉得还是在需要的时候在学比较好,也不容易忘记,学得也快!
发表于 2014-9-12 21:21:03 | 显示全部楼层
顶楼主,加油
友情提示:标题不合格、重复发帖,将会被封锁ID。详情请参考:论坛通告:封锁ID、获得注册邀请码、恢复被封ID、投诉必读
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs 东莞阿莫电子网站/东莞南城健逸电子贸易商行网站 ( 公安备案:44190002001997(交互式论坛) 工信部备案:粤ICP备09047143号 )

GMT+8, 2020-4-1 16:36

阿莫电子论坛, 原"中国电子开发网"

© 2004-2018 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表