谈谈我的嵌入式经验

转载 2012年03月21日 23:29:21
弹弹我自己的经历,也许会对你有些帮助。 
我是00年毕业,专业是机械系焊接工艺,和计算机是不搭边的,工作后发现机械这行薪水太少,所以转投IT产业,假造一份简历,混进一家公司,做了3年,然后换了2次工作,一直做到现在,这说明了一点,写程序只需要知道%5或更少就可以了(我当时只会用C语言写hello world!,不知道我们主管怎么看上我的,或许他只看了我伪造的简历)。所以大部分东西,比如linux内核源代码,谁吃饱了没事干去看它,一点用都没有,了解它是一个多进程并且稳定的内核就足够了,你需要的是一本函数参考手册,然后在需要时调用系统调用就行了。学习源代码什么的,我觉得有点炫耀自己的意思,其他就没什么好处了! 
废话也说了不少,谈谈经验吧,好歹咱也在嵌入式领域混了5年多,8位,16位,32位全都做过,CPU的主频也经历了4M->16M->40M->266M的发展历程!编程语言也经过了汇编->汇编+C->C语言的飞跃。既然大家对linux比较感兴趣,那么我也谈谈如何在嵌入式linux下开发产品的步骤: 
1。领导多方考察,决定如摩托罗拉mx21 CPU 
2。购买开发板(一套一万多)并由芯片商提供开发环境BSP(Board Support Packet),然后派个产品工程师(不是软件工程师)对大家进行为期一天的培训,其实就是告诉大家BSP里面有什么东西
3。自己干吧
下面是我的工作了,我负责建立开发环境,linux内核裁剪,驱动程序和GUI部分。 
声明:本人以前从未接触过linux开发,所以有个清晰的思路就非常重要了(实际上,做软件来说,只要有清晰的思路,其他都不是问题), 
1。开发环境,首先建立编译环境,安装linux操作系统(先用虚拟机),询问培训人员如何编译,下载,运行hello world C程序,结果发现下载速度不理想,程序的调试会非常困难(在程序中加入printf语句,编译,下载,然后观察printf输出结果),所以考虑到板上运行的是标准linux内核,接口都是统一的,那么先在PC的linux下调试程序,然后交叉编译,下载到板上,会省很多力气。那么思路清晰了,目标就是让目前产品的源代码可以在linux下运行,然后交叉编译,下载到板上运行,下面就是具体工作了: 
1。编写Makefile,保证可以用gcc编译源代码,为了用gdb调试,CFLAG 加上-g选项。 
2。设定输出,使用linux提供的framebuffer机制,将屏幕映射到一段内存,对内存的操作可以立即显示在屏幕上。这个去网上抄段代码就可以了。 
3。设定输入,当然用键盘了,使用tty设备作为输入,同样去网上抄段代码。 
4。设定定时器,继续抄代码。 
5。运行起来,可以在pc上运行我们的产品了. 
6。交叉编译,下载到目标板上了,要修改写文件,输入,输出设备文件名要改,CFLAG中的-g选项去掉,不然代码要大3倍,下载起来太慢了,然后开始下载,去抽只烟,回来后下载结束,运行,发现死机,然后加入printf语句,看看死在那里,然后编译,下载,观察结果,这是个漫长的过程,有次程序死循环,调试了3天,不停地编译,下载,观察结果,最后发现是循环变量的类型有问题,有char改为int就好了,这在pc上是看不出来的。
7。告诉大家,开发环境基本建立,然后测试其他功能,如语音,视频播放器,flash动画播放器等,等待硬件部门制作产品开发板。 
8。然后调试自己的产品开发版,调试各种驱动程序(驱动程序一般是单独调试,差不多后再合入内核) 
以上只是产品开发的一般步骤,事实上,我还在第6步徘徊。。。。 
手累了,其他的以后再说吧
另外告诉你个增长知识的好方法:移植linux代码到VC6中去。 
1。所有程序无外乎输入,输出,其中输入最重要,使用DirectDraw就可以了。 
2。找个linux下的程序,比如flash播放器,gif解码程序,让它在VC6下运行起来,好歹看个画面也可以。  
在移植过程中你会遇到很多问题,然后去网上寻找解决办法,久而久之,你对问题自然会有清晰的思路,而且会扩宽你的知识面。移植最好是系统程序,移植AP没什么意思,也学不到东西! 
浏览源代码最好用sourceinsight。 
有本linux C 函数库手册。 
用google搜索,我是不用百度的

相关文章推荐

自学嵌入式 经验分享

  • 2013年05月03日 23:56
  • 40KB
  • 下载

《不可不知的嵌入式工程师经验》(经典转载)-

本文将从技术和就业经验等角度为即将进入嵌入式开发的工程师们,详细讲述了嵌入式的概念,嵌入式开发之间的异同以及应该如何做出选择。以下都是前辈的一些经验之谈,希望对大家有所帮助。 第一.工程师眼中的“嵌...

嵌入式C开发经验总结

  • 2017年02月18日 09:17
  • 5.32MB
  • 下载

ARM 嵌入式入门经验

嵌入式入门到精通视频教程链接  你好,我是一名嵌入式开发爱好者.近来总是看到很多初学者(多数是在校大学生)由于没有条件,想学习却不知道如何下手。  本人绝对能体会到学习的艰辛,而且视任...

嵌入式求职经验总结

  • 2013年03月15日 12:38
  • 61KB
  • 下载

嵌入式设计常见错误与点评(经验之谈)

成本节约 现象一:这些拉高/拉低的电阻用多大的阻值关系不大,就选个整数5K吧? 点评:市场上不存在5K的阻值,最接近的是4.99K(精度1%),其次是5.1K(精度5%),其成本分别比精度...

嵌入式大牛开发经验心得

学习有捷径吗?俺认为是有的,正确的道路就是捷径。     就好象是爬山,如果有导游图,那就能找到一条最正确的路线;如果没有导游图,自己瞎琢磨,东问西问,也未必能找到最佳的路线。     有时候回首...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:谈谈我的嵌入式经验
举报原因:
原因补充:

(最多只允许输入30个字)