阅读:4758回复:11
谨献给为了知识执着的嵌入式初学者,欢迎高手补充讨论。(转帖)
谨献给为了知识执着的嵌入式初学者,欢迎高手补充讨论。
实践当然是最锻炼人的方式,但是我想在校生很少有这样的机会,别说本科生,硕士生也未必有条件。所以我想学习嵌入式要从个人的知识背景和现实条件出发。订立合适的阶段目标,在允许的条件下多动手多思考。 一般情况下对于硬件设备是比较短缺的。但是可以从软件方面和嵌入式系统开发模式上下功夫,提醒大家一点,嵌入式系统开发设计的内容知识很多,所以大家不要乱,在了解嵌入式系统开发的体系结构后,一步一步的下手,最容易上手的是linux下的C,比如ucos(有开放源代码),虽然可能无法在硬件上仿真,但也不必着急。wince,palmos上手都很容易。无论对于初学者还是自以为是高手的人来说,编程水平(这可不受硬件条件限制)绝对是没有止境的,有了较高的编程水平(嵌入式主要是C,当然OO的几种语言c++,java是发展趋势),等到有机会的时候及时的补充硬件知识,会很快的成为高手。 还有,一定记住,学习嵌入式,”要想办法,不要找理由“。当年在dos下用tc编程时的条件,现在回想起来建筑就是奇迹。 我推荐一条发展道路吧,仅供参考, 1、C开发经验 条件:linux(这都有吧) 方法:随便,主要是掌握ansiC编程(不包括gtk,qt等图形可视化开发) 2、网络、操作系统、体系结构 条件:linux,各种书,算法、例程。 方法:通过C编程实现简单的网络等知识的算法和过程。 3、嵌入式系统概念 条件:各个嵌入式网站,讨论组,书籍 方法:少提问(尤其是等着天上掉馅饼,这主要是防止增长惰性,也解决不了实际问题),多思考。 4、嵌入式开发实践 条件:各种嵌入式系统开发工具的demo版(或者D版,如果有的话),包括编译器,仿真器。可以找高手们要,也可以下载。 方法:这里有两个分支,一个是基于mcu/dsp的嵌入式系统开发,一个是象palmos,wince,ucos等rtos下的应用软件开发。对硬件感兴趣,想成为真正高手的由第一个分支入手,以后进入第二个分支;如果十分厌烦硬件,只想停留在软件开发上的,可以只由第二个分支入手,以后就和pc上的开发没有什么本质上的区别了,找份不错的工作应该没问题,可以不用进行下面的步骤了,感兴趣可以参考第6条。 5、硬件开发 条件:各种嵌入式芯片、存储器等电路器件,protel99等电路设计软件,电路板制作。 方法:这时候该有开发条件了,最起码是51系列,这个比较方便。电路的设计内容较多,不过看起来吓人,实际上比软件要简单的多。只要下功夫,实践会告诉你一切。 6、硬件工程/软件工程/项目管理 条件: 各个芯片详细资料和使用经验,软件工程知识,项目管理知识,培训,大型项目参与经验 方法:已经是高手了,但是学无止境,沾沾自喜于已有的知识是致命的。那个下一步…,你该是管理者了。 |
|
最新喜欢:TOMG20... |
沙发#
发布于:2004-02-27 14:03
我来补充几点.
要想成为高手中的高手,最好从钻研如下领域修炼: 1,分析一种RTOS的源代码--UCOS最容易; 2,分析一种通讯协议栈的实现方式--TCP/IP最实用; 3,精通一种DSP的开发集成环境--TI CCS2.1最优秀,精华在其内带的RTOS; 4,精通一种单片机的开发集成环境--keil C最经典; 5,精通一种MCU的开发集成环境--ADS 1.2最流行; 要想成为大师级人物再从如下领域开始修炼: 1,精通一种系统建模语言和工具--Telelogic tau SDL/UML suit最经典; 2,精通一种算法仿真工具--Matlab simulink 最便宜; 要想检验一下自己是否到达了至尊级人物,可以做如下的事: 动手搭建一套红外或者蓝牙通讯原型系统,模拟前端可以用现成的,基带用DSP,主控用 个32BMCU,DSP和协议软件自己写。当然不可能做全,做个子集就可以了。 如果能到这个地步,打住吧,该改行去做市场了。做个一、二年市场,你不自己去创个业就太浪费了。 |
|
板凳#
发布于:2004-02-27 18:00
我来补充几点. 可否提供一下UCos的 源码 |
|
地板#
发布于:2004-02-27 21:02
大家做封装TPC/IP协议的MCU系统吧。
现在我们正在开发一款无线模块,需要内嵌TCP/IP协议。感觉做出来容易,做的优秀难! |
|
地下室#
发布于:2004-04-02 22:01
一直在努力!
|
|
|
驱动中牛
|
5楼#
发布于:2004-11-09 17:15
大家做封装TPC/IP协议的MCU系统吧。 说的太对了,实现简单功能容易,但是测出bug很难。 |
6楼#
发布于:2004-11-12 13:40
很好的文章!
******************** 以下仅为个人观点, 未必正确。 ******************** 每一个实际产品中的嵌入式系统软件(暂不讨论庞大的LINUX/VXWORK/CE等通用操作系统) 即使是学术界/工程界人士认为是非常简单的、对成本非常敏感的定制消费类电子产品如MP3/DVD/DVB/DVR等, 其内部的整个系统软件(暂不谈算法部分的软件), 从原型构造到现今比较稳定的版本, 多数至少也已经消耗了数十人年的工作量。 (LINUX/VXWORK/CE等通用操作系统从构造到如今的最新版本,所需要的工作量更大了。) 数十人年的项目, 相对一些国家研究项目、大公司的重点项目, 确实是个很小的工程, 可是对于个人而言, 却是一辈子时间。 个人的精力非常有限, 把有限的精力投入到更有价值(当然,每个人的价值观有很大的不同)的地方, 对自己有好处, 对别人, 也没有坏处。 谢谢guohx9! 呵呵,好久没见上来玩了, 跑哪去了? |
|
|
7楼#
发布于:2004-11-22 17:07
这样的文章已经老喽
|
|
8楼#
发布于:2004-11-24 11:15
有收获,谢谢!
|
|
|
9楼#
发布于:2005-03-06 11:19
的确如此,我们导师让我们搞嵌入式,不给¥,空手套白狼,
郁闷 |
|
|
10楼#
发布于:2005-03-11 01:52
我毕设搞ARMS3C2410,外加一个lcd触摸屏,这还算可以吗
|
|
11楼#
发布于:2005-08-06 15:59
技术有专攻,人的精力有限的情况下也学不了那么多的东西,全通才当然是好事情,不过精通某几项,其他的方面知晓一些也不错了,毕竟现在的项目是团队的合力成果。没有团队,牛人又能如何?
|
|