要有什么基础呢?看什么书?
一开始找感觉是很难的,但是找到感觉就好一些;学得深绝对不容易。
以arm9为例:首先是硬件入门,基本入门的书很多,但是有一本介绍4510b(arm7)的书不错。若你想学arm的汇编语言,则最好看三星的官方资料。一般教材讲得太浅,看完你也不明白何为精简指令集。总体来说,所谓硬件,对于程序员来说,就是汇编语言+寄存器地址。
有了这些知识,你就可以根据需要继续软件学习了,一般是学linux。至于怎么学linux那就复杂很多了。但我的感觉所有的操作系统对于程序员来说,就是四个字----“系统调用”,找本好的参考书,什么程序你都能编出来。
都搞会了,就根据需要专门学习了。我现在看bootloader的代码。里面有c语言、makefile、shell脚本,比较全面。把源代码改改,还可以实现很多功能,应该值得一学。
为之则易,不为则难。
[网络酷文]谨献给为了知识执着的嵌入式初学者(转)
程序匠人 发表于 2005-9-29 18:02:00 阅读全文(1336) | 回复(1) | 引用(0)
谨献给为了知识执着的嵌入式初学者,欢迎高手补充讨论实践当然是最锻炼人的方式,但是我想在校生很少有这样的机会,别说本科生,硕士生也未必有条件。所以我想学习嵌入式要从个人的知识背景和现实条件出发。订立合适的阶段目标,在允许的条件下多动手多思考。一 般情况下对于硬件设备是比较短缺的。但是可以从软件方面和嵌入式系统开发模式上下功夫,提醒大家一点,嵌入式系统开发设计的内容知识很多,所以大家不要 乱,在了解嵌入式系统开发的体系结构后,一步一步的下手,最容易上手的是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、硬件工程/软件工程/项目管理条件: 各个芯片详细资料和使用经验,软件工程知识,项目管理知识,培训,大型项目参与经验方法:已经是高手了,但是学无止境,沾沾自喜于已有的知识是致命的。那个下一步。。。,你该是管理者了。抛砖引玉,以上出自我的经验,欢迎各路高手们补充,初学者提问。为了技术,一路狂奔。。。
我来补充几点.要想成为高手中的高手,最好从钻研如下领域修炼: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和协议软件自己写。当然不可能做全,做个子集就可以了。如果能到这个地步,打住吧,该改行去做市场了。做个一、二年市场,你不自己去创个业就太浪费了。
如有问题请致电(010)82600386-20公司双休日,双休日期间报名参加活动的朋友,我们将在周一为您开通活动权限。感谢大家的支持!
有信心就好学 其实学习没有什么很难的 就是要靠努力第一部 你的 先看看LINUX的方面的书 要对LINUX有所了解第二部 你的对操作系统有所了解 或者是理解第三部 学习一种ARM核 比如说 ARM9 你的对这个核的功能非常清楚学会这些后 你 就可以开始嵌入式的研究了
呵呵,支持……顶
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(5)
一开始找感觉是很难的,但是找到感觉就好一些;学得深绝对不容易。
以arm9为例:
首先是硬件入门,基本入门的书很多,但是有一本介绍4510b(arm7)的书不错。若你想学arm的汇编语言,则最好看三星的官方资料。一般教材讲得太浅,看完你也不明白何为精简指令集。总体来说,所谓硬件,对于程序员来说,就是汇编语言+寄存器地址。
有了这些知识,你就可以根据需要继续软件学习了,一般是学linux。至于怎么学linux那就复杂很多了。但我的感觉所有的操作系统对于程序员来说,就是四个字----“系统调用”,找本好的参考书,什么程序你都能编出来。
都搞会了,就根据需要专门学习了。我现在看bootloader的代码。里面有c语言、makefile、shell脚本,比较全面。把源代码改改,还可以实现很多功能,应该值得一学。
为之则易,不为则难。
[网络酷文]谨献给为了知识执着的嵌入式初学者(转)
程序匠人 发表于 2005-9-29 18:02:00 阅读全文(1336) | 回复(1) | 引用(0)
谨献给为了知识执着的嵌入式初学者,欢迎高手补充讨论
实践当然是最锻炼人的方式,但是我想在校生很少有这样的机会,别说本科生,硕士生也未必有条件。所以我想学习嵌入式要从个人的知识背景和现实条件出发。订立合适的阶段目标,在允许的条件下多动手多思考。
一 般情况下对于硬件设备是比较短缺的。但是可以从软件方面和嵌入式系统开发模式上下功夫,提醒大家一点,嵌入式系统开发设计的内容知识很多,所以大家不要 乱,在了解嵌入式系统开发的体系结构后,一步一步的下手,最容易上手的是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、硬件工程/软件工程/项目管理
条件: 各个芯片详细资料和使用经验,软件工程知识,项目管理知识,培训,大型项目参与经验
方法:已经是高手了,但是学无止境,沾沾自喜于已有的知识是致命的。那个下一步。。。,你该是管理者了。
抛砖引玉,以上出自我的经验,欢迎各路高手们补充,初学者提问。
为了技术,一路狂奔。。。
我来补充几点.
要想成为高手中的高手,最好从钻研如下领域修炼:
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和协议软件自己写。当然不可能做全,做个子集就可以了。
如果能到这个地步,打住吧,该改行去做市场了。做个一、二年市场,你不自己去创个业就太浪费了。
如有问题请致电(010)82600386-20
公司双休日,双休日期间报名参加活动的朋友,我们将在周一为您开通活动权限。
感谢大家的支持!
有信心就好学 其实学习没有什么很难的 就是要靠努力
第一部 你的 先看看LINUX的方面的书 要对LINUX有所了解
第二部 你的对操作系统有所了解 或者是理解
第三部 学习一种ARM核 比如说 ARM9 你的对这个核的功能非常清楚
学会这些后 你 就可以开始嵌入式的研究了
呵呵,支持……顶