- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关于嵌入式的学习
嵌入式工程师应该学什么?
最近有不少客户就嵌入式系统开发入门方面提出了一些问题,我们感觉很有代表性,所以英创工程师把这些问题进行了汇总解答,希望能对想做嵌入式开发的工程师有一点帮助。
1. 进行嵌入式开发必须弄懂ARM汇编指令集吗?
书店里有很多入门级的书,第一章不是介绍ARM指令集,就是介绍ARM的CPU资源,这给很多初学者一个很不好的直观感觉,就是学习ARM一定要把汇编语言和CPU资源搞明白。然而,这两个方面,没有实际的去做一下,只是纸上谈兵,怎么又搞得明白呢,于是,让很多初学者,知难而退。
其实,选ARM很大的目的就是为了跑嵌入式操作系统,最常见的当然是Linux和WinCE操作系统。嵌入式操作系统为开发人员提供了几乎完整的基于C语言的工作环境,所以基于这两个操作系统进行的开发,在大多数情况下都没有必要先去搞懂ARM的汇编指令集和全部的CPU资源。当然,有了一定的技术基础后,CPU资源也有必要去了解,但是,我们建议是在实践中去了解这些问题,而不是在开始的时候通过看所谓的入门书进行似是而非的学习。
2. 必须使用ADS吗?
还是刚才所说的,好多入门书,为了说明ARM指令集中指令的使用方法便使用了ADS或者IAR开发环境,这样,就使得初入门的用户错误地理解为开发ARM就是用ADS开发环境(笔者初学时,就是这么认为的,幸亏及时有人指路,才没有在这个环境上花太多的时间),然而,根据不同的CPU,ADS设置是十分麻烦的,因为CPU是很复杂的,经常有用户就卡在这里,无法超越,时间长了,也就放弃了嵌入式开发了。
其实,ADS只是调试启动代码的一种环境,而这样的代码,CPU厂家已经写好了,这些代码也可以在Linux或者WinCE的开发环境中编译,所以,完全可以不考虑ADS 的使用。当然,如果你想在ARM上“裸奔”,那是另外的说法了。
3. 如何选择操作系统?
除了上面提到的Linux和WinCE外,还有几十种嵌入式操作系统,只不过Linux和WinCE 是最常见和最通用的嵌入式操作系统,其它就比较侧重于专业领域。那么如何在这几十种操作系统中,选择适合自己的操作系统呢?
第一:如果自己所选的CPU不支持MMU,那么如果需要操作系统的话,一般选择uC/OS-II操作系统,注意uC/OS-II不是免费的操作系统,尽管它的源码是公开的。
第二:如果自己所选的CPU支持MMU,最好选Linux或WinCE。在Linux和WinCE之间的选择与很多因素有关,如最终产品的数量、产品开发周期、工程师的技术背景等等。一般来讲基于Linux的产品开发周期更长,对工程师的要求更高,表面上看上去没有License费用,因此比较适合批量较大、对成本敏感的产品。相反WinCE由于工具完善,易于上手,只要用过VC的工程师均能很快转入嵌入式系统应用程序的开发。
4. 怎么选择开发语言?
在嵌入式开发领域,首选是C语言,因为C是中级语言,即可以用来写应用程序,也能用来写驱动程序。根据数据显示,使用C语言的嵌入式程序员占70%。其次是C++,应用程序可以用C++编写,更方便些。其它语言只占了1%。
5. Linux应用程序的开发环境是什么?
Linux是以公共社区的形式发展起来的,基于此,很多商业级的Linux开发工具,由于价格、可用性等原因,并没有得到普遍应用。目前大多数的Linux应用开发还是停留在命令行的方式,对开发者的门槛要求较高。用户编写好的程序,首先在装有Linux 的PC机上测试好后,再用交叉编译环境把代码编译成能在ARM Linux下运行的程序。
6. WinCE应用程序的开发环境是什么?
eVC是微软提供的WinCE应用程序开发工具之一,其界面和VC非常相似,很容易入门,其还有一个优点,就是是免费的,不存在版权问题。从性能上看,eVC比任何Linux的开发工具的性能都强很多了。另外,WinCE还可以使用微软的Visual Stdio.Net集成开发工具进行应用开发(可以选择使用的语言包括C++/C#/VB等),这给应用开发工程师带来了极大的便利。
7. 嵌入式开发怎么实现在线调试呢?
说到在线调试,做过单片机的工程师,第一想到的就是仿真机,那么,嵌入式操作系统怎么实现在线调试呢?对于调试Linux和WinCE的应用程序,可以直接通过网线或者USB接口实现在线调试,效果可以达到使用单片机仿真机的效果,可以设置断点、可以看到寄存器值和变量值等实时调试信息。如果要调试Linux或者WinCE的内核系统,就只有去购买价格不菲的仿真系统了。但是对于大多数工程师来说,能在C
您可能关注的文档
最近下载
- 2025年工业互联网区块链智能合约安全审计与合规性检查报告.docx VIP
- 部编版八年级语文上册《短文两篇》.pptx VIP
- 2024版大学生就业指导课件.ppt VIP
- 路面硬化项目图纸施工图.pdf VIP
- YS_T 582-2023《电池级碳酸锂》.pdf VIP
- DB3607_T 006-2022 设施芦笋富硒营养强化技术规程.docx VIP
- HJ 479-2009 环境空气 氮氧化物(一氧化氮和二氧化氮)的测定 盐酸萘乙二胺分光光度法.pdf VIP
- 6 别了,“不列颠尼亚”.《别了,不列颠尼亚》课件.ppt VIP
- 国际人才英语教程(中级)课后习题答案解析.pdf
- 骨质疏松健康宣教ppt(完整版).pptx VIP
文档评论(0)