搜索
bottom↓
回复: 9

菜鸟求助几个linux驱动开发的问题

[复制链接]

出0入0汤圆

发表于 2015-7-28 15:13:56 | 显示全部楼层 |阅读模式
最近开始学习嵌入式linux驱动开发,遇到了很多问题,我周围没人懂这个,哪个前辈给我指导下,谢谢了!
1:建立交叉编译环境过程中:samba服务器,tftp服务器,NFS服务器。这些有时经常就出问题了,很浪费时间。这才是一个mini2440的,我还是按照用户手册按部就班搭建的,还这么难,那以后换个平台不是更难。这是不是说嵌入式开发换平台代价很大啊,学习也必须不断的研究新平台新环境啊?
2:在调试按键驱动时我遇到了程序没有按预期情况跑的情况,后来看到有GDB调试器这个东西可以跟踪仿真,看了下必须针对不同的平台安装,编译一大堆东西,我想知道以后要是换个新平台这些东西在哪里获得啊,还有GDB调试工具在实际中用的多不?有时候一些简单问题感觉可以用print函数搞定,在系统上调试程序,主要靠啥方法啊。

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2015-7-28 15:31:00 | 显示全部楼层
身边没有linux高手,你想看网页的教程很难成功!linux这东西平台变化会很频繁,开发环境版本变更、兼容性也是很麻烦的!建议你从Imx283入手

出0入0汤圆

发表于 2015-7-28 17:40:15 | 显示全部楼层
1、samba、tftp、nfs视你的使用环境,不一定都用到,安装不上,建议使用ubuntu开发,一般的工具都能正常安装,一般在一个linux环境下用习惯了就好了,不用在意其他系统平台,大体都一样
2、linux驱动开发,通用方法就是printk,用GDB确实需要用交叉编译器编译工具,比较麻烦

出0入0汤圆

 楼主| 发表于 2015-7-28 19:09:08 | 显示全部楼层
fengyuganyu 发表于 2015-7-28 17:40
1、samba、tftp、nfs视你的使用环境,不一定都用到,安装不上,建议使用ubuntu开发,一般的工具都能正常安 ...

我想问下,如果我一直在mini2440上实验驱动程序的开发,把各种常见各种类型驱动都实验过了,以后去找个linux的驱动开发工作难度大不?

出0入0汤圆

发表于 2015-7-28 20:49:37 | 显示全部楼层
既然刚开始学linux,那还不如趁早转android或ios。1、2年后两者工资不是一个层次的。

出0入0汤圆

发表于 2015-7-28 23:13:33 | 显示全部楼层
先学linux应用,再学linux驱动。等linux应用基本没问题了,再玩驱动吧。
装ubuntu,然后安装一个nfs就行了。ubuntu软件就apt-get安装,一般也不会有什么问题。
GDB表示开发几年的linux重来都没用过,linux也是自学的,做好打印log的方法,多看看kernel现有的驱动架构,从GPIO驱动开始。其实也不是很复杂的。
推荐一本,linux设备驱动开发详解。我看这本入门的。呵呵。

出0入0汤圆

 楼主| 发表于 2015-7-29 09:20:00 | 显示全部楼层
shijianzhou 发表于 2015-7-28 23:13
先学linux应用,再学linux驱动。等linux应用基本没问题了,再玩驱动吧。
装ubuntu,然后安装一个nfs就行了 ...

呵呵,谢谢了,我写了几年单片程序了,一直在用ucos2这种小系统,也做过几年的硬件,所有想从linux驱动开发开始,感觉跨度不会特别大,要是去玩IOS,安卓这些都是往系统应用方向发展了,我想在底层这块发展。不知道像我这样转linux驱动难度大不。

出0入0汤圆

发表于 2015-7-29 10:06:15 | 显示全部楼层
yanjian305 发表于 2015-7-29 09:20
呵呵,谢谢了,我写了几年单片程序了,一直在用ucos2这种小系统,也做过几年的硬件,所有想从linux驱动开 ...

不大。我之前也是玩ucos之后玩的linux。
主要最开始阶段比较困难,很多东西不理解。慢慢的懂了就好了。回过头发现,其实也是挺容易的。大家都能学得会,你也可以的。

出0入0汤圆

发表于 2015-7-29 11:15:10 | 显示全部楼层
yanjian305 发表于 2015-7-28 19:09
我想问下,如果我一直在mini2440上实验驱动程序的开发,把各种常见各种类型驱动都实验过了,以后去找个li ...

主要是学习下系统架构,和驱动开发结构,初学以实现功能为主,然后逐步深入架构,建议学习下linux3.10后的驱动结构和2.6.版本的驱动结构,这两个kernel版本的结构有点差异。
至于找linux驱动的工作,看造化,一般有点基础都能做,目前MCU厂家基本把hardware层的驱动代码都做好了,也提供一些常用外设的驱动范例,你开发驱动和开发应用没什么两样,都比较容易。

出0入0汤圆

 楼主| 发表于 2015-7-30 08:37:06 | 显示全部楼层
fengyuganyu 发表于 2015-7-29 11:15
主要是学习下系统架构,和驱动开发结构,初学以实现功能为主,然后逐步深入架构,建议学习下linux3.10后 ...

谢谢大家了!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 13:29

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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