同济大学软件学院院长谈择业—关于嵌入式方向
- 格式:doc
- 大小:39.50 KB
- 文档页数:6
自动化专业的就业方向有哪些自动化专业的就业方向有哪些培养目标该专业培养德、智、体全面发展,具有扎实的自然科学基础,具有良好的计算机、外语、经济、管理等方面的应用基础;具备电工电子技术、控制理论、自动检测与仪表、信息处理、系统工程、计算机技术与应用等专业知识高素质应用型专门人才。
培养要求该专业学生主要学习电工技术、电子技术、控制理论、自动检测与仪表、信息处理、系统工程、计算机技术与应用和网络技术等较宽广领域的工程技术基础和一定的专业知识,具有自动化系统分析、设计、开发与研究的基本能力,综合素质高,具有坚实理论基础和创新能力。
专业方向1.工业过程控制方向:以自动控制、计算机技术为支撑,针对实际工业生产过程实现自动控制,由信号检测与变换、过程控制、计算机控制系统、智能控制和现场总路线控制技术等组成方向主干课。
2.电气工程方向:使学生能够从事电力系统自动化、工厂企业、楼宇系统的供电和电气控制、监控等领域的设计开发、维护和管理工作。
由电气控制技术、运动控制、PLC应用技术、供电技术、电力系统继电保护等组成方向主干课。
3.嵌入系统方向:注重对嵌入式系统设计与软件设计能力的培养,理论结合实践,通过课堂教学、实验等多种形式的学习,培养嵌入式系统方向的专业人才;由嵌入式系统设计、嵌入式实时操作系统、DSP技术、先进显示技术、控制电机等组成方向主干课。
就业方向学生在毕业后能从事自动控制、自动化、信号与数据处理及计算机应用等方面的技术工作。
就业领域也非常宽广,包括高科技公司、科研院所、设计单位、工矿企业、大专院校、金融系统、通信系统、税务、外贸、工商、铁道、民航、海关及政府和科技部门等。
主要从事与电子信息有关的系统运行、自动控制、电力电子技术、信息处理、试验分析、研制开发、经济管理以及电子与计算机技术应用等领域的工作。
主要就业方向:1.软件开发(特别是单片机或EDA等)2.产品设计,就是硬件电路设计3.PLC/DCS/SIS(工控方向,搭建操作平台,主要方向为大小化工厂,以及各大系统集成厂商)4.工矿企业(进行自动化设备的维护,操作等)5.电厂,配电厂,发电厂(包括各个公司、工厂的配电室及弱电仪器维护)6.去学校当老师7.做销售工作(专门卖自己专业相关的东西)8.公务员,只能报考专业不限的岗位和选调,不符合其他任何岗位均招聘条件9.关于电气类,计算机类的研究所(例如清华大学浙江长三角研究所)就业前景由于20世纪下半叶,以信息技术为显著特征的第四次科技革命浪潮冲击着全球,对各国经济的发展起着极大的推动作用。
24 科学中国人 2021年3月封底人物Backcover Characters奋进求索勇攀高峰 殚精竭虑科教济世——记同济大学软件学院院长赵生捷 吴应清学海探索,铸就辉煌赵生捷有着可以用“完美”来形容的求学与科研工作经历。
1983年,他以山西省汾阳市高考第一名的优异成绩,从汾阳中学考入全国双一流重点大学——中国科学技术大学,攻读电子和计算机工程专业,从此走上了求学和科研创新之路。
赵生捷在中国科学技术大学就读期间,正值严济慈、管惟炎担任校长,那时的中国科学技术大学可谓是中国科研的“国家队”,全国近半数省份的高考状元都选择进入中国科学技术大学学习,科研师资力量雄厚。
他在那里刻苦攻读信息科学技术领域的知识,经过5年的努力学习,大学毕业后,来到向往已久的北京,在原中国航空航天工业部攻读硕士研究生,并从事地空通信和信号处理方面的研究工作。
20世纪90年代,为了追赶世界科技前沿,赵生捷去了世界一流的工科大学美国得克萨斯A&M大学(Texas A&M University)留学,攻读电子和计算机工程博士学位。
完成学业后,在隆重的博士毕业典礼上,他从美国前国防部长、时任美国得克萨斯A&M大学校长的罗伯特·盖茨手中接过了博士学位证书。
之后,他先后在美国贝尔实验室、同济大学等国内外著名的研究所和大学担任科学家、特聘教授等职位,在人工智能、信号处理、大数据等学术领域取得了多项尖端研究成果,持有50多项美国发明专利和中国发明专利。
翻开赵生捷的成绩单,到处都是令人炫目的辉煌。
他在科学技术领域的创新成就主要有以下几个方面:发明最优无线视频并行传输新理论和系统框架无线网络的无处不在使得无线视频传输成为一个重要的研究领域。
多媒体传输具有高传输可靠性和严格的端到端延迟特点,而无线链路通常易于出错,且带宽是有限和时变的,所以需要创新性的系统架构来解决这个问题。
赵生捷是无线视频传输领域的顶级研究学者之一。
计算机科学与技术嵌入式方向就业岗位计算机科学与技术嵌入式方向是当前就业市场上备受瞩目的热门职业领域之一,它涉及到嵌入式系统的设计、开发和应用,培养的人才里有专业知识和实践经验,是就业市场上的宝贵资源。
以下是该领域的几个就业岗位:
1. 嵌入式系统工程师:
嵌入式系统工程师需要掌握嵌入式开发平台的实际应用和开发技术,具备嵌入式系统设计、开发、调试和测试的能力,对于系统性能的优化也需要有一定的经验和技能。
2. 软件工程师:
嵌入式软件的开发是嵌入式系统设计中的重要一环,软件工程师需要精通嵌入式开发平台和语言,根据客户需求,开发出满足系统性能和可靠性要求的软件。
3. 硬件工程师:
硬件工程师需要掌握硬件设计和开发的基本知识,能够针对嵌入式系统的特点设计和开发构建硬件平台,包括电路图设计、嵌入式处理器设计等。
4. 系统集成工程师:
系统集成工程师需要全面了解整个嵌入式系统的工作原理和运行特点,具备嵌入式软硬件系统集成和调试能力,负责整个系统的调试和验收
工作。
除了以上四个岗位,嵌入式系统领域还有许多其他职位,如测试工程师、产品经理、技术支持等等,每个职位都需要具备各自领域的技能
和实践经验。
总之,嵌入式领域的就业市场前景广阔,是一个非常有
前途的行业。
嵌入式软件开发的关键技术及挑战近年来,嵌入式系统在诸多领域中扮演着重要角色,从智能家居设备到医疗器械,从交通工具到工业自动化,无处不见嵌入式系统的身影。
而嵌入式软件开发作为嵌入式系统的重要组成部分,也在不断地演进与发展。
本文将探讨嵌入式软件开发的关键技术及挑战,并为读者提供深入了解该领域的基本知识。
嵌入式软件开发是一种特殊领域的软件开发,主要用于为嵌入式系统提供功能和控制。
相较于桌面软件开发,嵌入式软件开发面临着一些特殊的挑战,其中一些关键技术如下所述。
首先,嵌入式软件开发需要丰富的硬件知识。
嵌入式系统通常与特定硬件平台紧密结合,因此软件开发者需要了解并熟悉所用硬件平台的特性和限制。
对于嵌入式软件开发人员来说,熟悉处理器体系结构、寄存器级编程以及硬件逻辑是至关重要的。
此外,嵌入式软件开发人员还需要理解硬件与软件之间的互动,以便能够最优化地配置和使用硬件资源。
其次,嵌入式软件开发需要设计高效的算法和优化代码。
由于嵌入式系统通常具有有限的资源(如处理能力、存储容量等),嵌入式软件必须在这些限制下运行。
因此,开发人员需要设计和实现高效的算法,使系统能够在有限资源下实现期望的功能。
为了提高性能,嵌入式软件开发人员还需要优化代码,减少计算和存储开销。
这要求开发人员具备扎实的算法和数据结构知识,以及良好的编程技巧。
除此之外,嵌入式软件开发还需要考虑可靠性和安全性。
嵌入式系统通常运行在关键环境中,例如医疗设备、航空航天系统等,其可靠性和安全性至关重要。
开发人员需要对系统进行严格的测试和验证,以确保其能够可靠地运行,并对可能出现的错误进行预防和处理。
此外,由于嵌入式系统被连接到网络中,安全性也变得非常重要。
开发人员需要采取安全措施来保护系统免受潜在攻击的威胁。
另一个关键技术是实时性和响应性。
许多嵌入式系统需要实时响应外界事件,例如汽车制动系统、航空导航系统等。
因此,嵌入式软件必须能够满足严格的实时性要求。
开发人员需要使用实时操作系统(RTOS)和实时调度算法来保证系统的响应性并确保任务的按时完成。
嵌入式软件工程师职业规划及计划嵌入式软件工程师是在硬件平台上进行软件开发的专业人员。
随着技术的不断进步和社会的快速发展,嵌入式软件工程师的需求与日俱增。
本文将就嵌入式软件工程师的职业规划及计划进行探讨,帮助广大嵌入式软件工程师更好地规划自己的职业发展。
一、嵌入式软件工程师职业规划1. 确定职业目标作为嵌入式软件工程师,首先要明确自己的职业目标。
未来是否希望成为技术专家,还是更倾向于管理职位?不同的职业目标将直接影响到个人的职业发展方向和所需的技能和知识。
2. 学习与技能提升嵌入式软件工程师是一个高要求的职业,需要不断学习和提升技能。
为了适应技术发展的需求,嵌入式软件工程师需要不断学习新的编程语言、嵌入式系统架构等知识,并能够灵活运用这些知识解决实际问题。
3. 多维度技能嵌入式软件工程师不仅需要具备良好的编程能力,还需要具备硬件知识和领域知识。
因此,在职业规划中,嵌入式软件工程师应该努力拓宽自己的知识面,学习相关的硬件和领域知识,包括电路原理、模拟与数字电路设计、嵌入式操作系统等。
4. 提升团队合作能力嵌入式软件工程师在工作中通常需要与硬件工程师、测试工程师等多个团队成员合作。
因此,嵌入式软件工程师应该注重提升自己的团队合作能力,学会与他人有效沟通、协调和合作,共同完成项目目标。
二、嵌入式软件工程师职业计划1. 初级阶段(0-3年)在职业生涯初期,嵌入式软件工程师应注重基础知识和技能的积累。
可以通过参加培训课程、自学和参与实际项目等方式不断提升自己的编程能力和项目经验。
2. 中级阶段(3-7年)在中级阶段,嵌入式软件工程师应该逐渐具备一定的项目经验和领导能力。
可以选择参与复杂项目,提升自己的项目管理能力,并开始学习相关的硬件知识,为进一步发展做好准备。
3. 高级阶段(7年及以上)在高级阶段,嵌入式软件工程师已具备丰富的项目经验和领导能力,可以选择更具挑战性的项目,提升自己的技术专长和解决问题的能力。
嵌入式软件工程师岗位的理解嵌入式软件工程师岗位的理解一、前言嵌入式软件工程师岗位是当前社会上需求量较大的一个职业岗位,嵌入式软件工程师需要具备扎实的计算机相关专业知识和技能,掌握多门编程语言和技术,能够独立完成嵌入式软件开发工作。
本文将从嵌入式软件工程师的职责、技能要求、发展前景等方面进行分析和探讨。
二、嵌入式软件工程师的职责1. 嵌入式软件系统设计与开发嵌入式软件工程师需要承担嵌入式软件系统的设计与开发工作。
在嵌入式系统中,软件和硬件是紧密结合的,嵌入式软件工程师需要根据产品需求和硬件评台的特点,设计合理的嵌入式软件系统结构,并编写高质量的嵌入式软件代码。
2. 嵌入式软件测试与调试嵌入式软件工程师还需要参与嵌入式软件的测试与调试工作。
他们需要编写测试用例,进行软件功能测试和性能测试,并对软件中出现的问题进行调试和修复,保证嵌入式软件的稳定性和可靠性。
3. 硬件和软件的交互嵌入式软件工程师需要与硬件工程师密切合作,理解硬件评台的特点,协助硬件工程师完成硬件与软件之间的接口设计和调试工作,确保嵌入式软件与硬件的良好互操作性。
4. 软件维护与升级嵌入式软件工程师还需要承担嵌入式软件的维护与升级工作,及时对软件中出现的问题进行修复,并根据产品需求对软件功能进行升级和扩展。
三、嵌入式软件工程师的技能要求1. 扎实的计算机基础知识嵌入式软件工程师需要具备扎实的计算机基础知识,包括计算机组成原理、操作系统、数据结构与算法等方面的知识。
2. 熟练掌握多门编程语言嵌入式软件工程师需要熟练掌握C/C++等编程语言,并了解汇编语言、Python等其他编程语言。
3. 熟悉嵌入式系统开发工具嵌入式软件工程师需要熟悉常用的嵌入式系统开发工具,如Keil、IAR、MPLAB等,以及相关的调试工具和仿真工具。
4. 良好的团队合作能力嵌入式软件工程师需要有良好的团队合作能力,能够与硬件工程师、测试工程师等其他团队成员密切合作,完成软件开发与测试工作。
学霸是如何组成团的作者:丁莉莎来源:《大学生》2020年第08期成员:武鼎威毕业去向:保研至西北工业大学成员:张恒齐毕业去向:保研至清华大学成员:张宇轩毕业去向:保研至西北工业大学成员:钟瑞国毕业去向:保研至西北工业大学生活中,他们是兄弟;学习上,他们是队友。
四年的时间里,他们有着十足的默契,也通过竞争,形成了良好的学习、竞赛氛围。
在学习中,宿舍自发养成了相互督促、共同进步的氛围,建立了晚自习制度,大家一起自习,在共同学习中互相督促,在一起讨论中互相帮助,起到了事半功倍的效果。
所以每次4人都能够稳定在全年级前10。
同时,四人术业有专攻,武鼎威、张恒齐和钟瑞国这三位同学主攻方向是竞赛,数学建模方向,都参加过国赛、美赛。
尽管由于赛制的原因,没有一同组队,但依然为彼此提供了很多帮助。
而张宇轩同学擅长体育,并且多次获奖。
在平时,学业不是很紧张的时候,舍长会组织一些活动,例如四人经常组织聚餐,适当地放松心情,休息调整。
在文体方面四人也没有落下:四人都擅长运动,积极参加各种球类运动,大家一起流汗,一起奔跑,养成良好的作息和锻炼的习惯。
成员:季如意毕业去向:考研至上海大学计算机工程与科学学院成员:李榕婕毕业去向:保研至同济大学电子与信息工程学院成员:邢稹毕业去向:考研至复旦大学计算机科学技术学院成员:沈宇琪毕业去向:保研至华东师范大学软件工程学院宿舍里良好的学习环境促使着每个人都努力上进。
学习上,她们分享各自的学习心得;科研上,互相鼓励申报创新创业项目;课程大作业上,各自分工协助,共同完善。
她们一起选课、上课、研讨,生活中遇到问题也互相帮助共同解决,在重要的人生选择面前又默契地选择了继续深造。
她们为此奋斗、为此努力,互相陪伴、彼此激励,相約一起“升级”。
她们携手共进:为对方答疑、分享与保研考研有关的各种资源,提醒各类通知的节点;她们也是彼此的标杆:分享学习进度,你追我赶,互相打气,让这条“逐梦”之路不那么煎熬。
嵌入式工程师成长路线嵌入式工程师是电子信息领域中一种专业技术人才,主要从事嵌入式系统的开发和应用。
随着物联网和智能制造等领域的发展,嵌入式工程师的需求越来越大。
如何成为一个优秀的嵌入式工程师,需要经历一条艰辛的成长之路。
学习电子基础知识作为一名嵌入式工程师,首先需要打好电子基础知识的基础。
这包括电路原理、模拟电子技术、数字电子技术等方面的知识。
只有掌握了这些基础知识,才能更好地理解和设计嵌入式系统。
掌握编程技能嵌入式系统的开发离不开编程技能,因此学习一门编程语言是非常必要的。
C语言是嵌入式系统常用的编程语言,掌握C语言的语法和应用是成为嵌入式工程师的基本要求。
除了C语言,还应该了解一些其他编程语言,如Python和Java等,以备不时之需。
学习嵌入式系统原理嵌入式系统是由硬件和软件组成的,因此嵌入式工程师需要学习嵌入式系统的原理。
这包括硬件平台选择、外设接口、数据存储和处理等方面的知识。
只有深入了解嵌入式系统的原理,才能更好地进行系统的设计和调试。
参与实际项目理论知识只是嵌入式工程师成长的一部分,实践经验同样重要。
参与实际项目是锻炼能力的最好方式。
在实际项目中,嵌入式工程师可以学习到更多的实践经验,了解项目的需求,培养解决问题的能力。
对于初级嵌入式工程师来说,多参与实际项目是积累经验的重要途径。
深入研究领域嵌入式系统的应用领域非常广泛,涉及到工业控制、智能家居、汽车电子等多个领域。
为了在特定领域有更好的竞争力,嵌入式工程师需要深入研究所选定的领域,并学习相关的专业知识。
比如,如果想从事智能家居领域的嵌入式开发,就需要学习相关的物联网技术和智能算法。
持续学习和自我提升嵌入式工程师的技术更新速度很快,因此持续学习和自我提升是非常必要的。
可以通过阅读专业书籍、参加培训课程、参加技术交流会议等方式来增加知识储备和拓宽视野。
同时,要保持学习的热情和勇于尝试新技术的精神,不断提高自己的技术水平和创新能力。
结语嵌入式工程师是一个非常有挑战性和发展空间的职业,但也需要经过一条艰辛的成长之路。
二、关于嵌入式系统方向嵌入式系统无疑是当前最热门最有发展前途的IT应用领域之一。
嵌入式系统用在一些特定专用设备上,通常这些设备的硬件资源(如处理器、存储器等)非常有限,并且对成本很敏感,有时对实时响应要求很高等。
特别是随着消费家电的智能化,嵌入式更显重要。
像我们平常常见到的手机、PDA、电子字典、可视电话、VCD/DVD/MP3 Player、数字相机(DC)、数字摄像机(DV)、U-Disk、机顶盒(Set Top Box)、高清电视(HDTV)、游戏机、智能玩具、交换机、路由器、数控设备或仪表、汽车电子、家电控制系统、医疗仪器、航天航空设备等等都是典型的嵌入式系统。
嵌入式系统是软硬结合的东西,搞嵌入式开发的人有两类。
一类是学电子工程、通信工程等偏硬件专业出身的人,他们主要是搞硬件设计,有时要开发一些与硬件关系最密切的最底层软件,如BootLoader、Board SupportPackage(像PC的BIOS一样,往下驱动硬件,往上支持操作系统),最初级的硬件驱动程序等。
他们的优势是对硬件原理非常清楚,不足是他们更擅长定义各种硬件接口,但对复杂软件系统往往力不从心(例如嵌入式操作系统原理和复杂应用软件等)。
另一类是学软件、计算机专业出身的人,主要从事嵌入式操作系统和应用软件的开发。
如果我们学软件的人对硬件原理和接口有较好的掌握,我们完全也可写BSP和硬件驱动程序。
嵌入式硬件设计完后,各种功能就全靠软件来实现了,嵌入式设备的增值很大程度上取决于嵌入式软件,这占了嵌入式系统的最主要工作(目前有很多公司将硬件设计包给了专门的硬件公司,稍复杂的硬件都交给台湾或国外公司设计,国内的硬件设计力量很弱,很多嵌入式公司自己只负责开发软件,因为公司都知道,嵌入式产品的差异很大程度在软件上,在软件方面是最有“花头“可做的),所以我们搞软件的人完全不用担心我们在嵌入式市场上的用武之地,越是智能设备越是复杂系统,软件越起关键作用,而且这是目前的趋势。
从事嵌入式软件开发的好处是:(1)目前国内外这方面的人都很稀缺。
一方面,是因为这一领域入门门槛较高,不仅要懂较底层软件(例如操作系统级、驱动程序级软件),对软件专业水平要求较高(嵌入式系统对软件设计的时间和空间效率要求较高),而且必须懂得硬件的工作原理,所以非专业IT人员很难切入这一领域另一方面,是因为这一领域较新,目前发展太快,很多软硬件技术出现时间不长或正在出现(如ARM处理器、嵌入式操作系统、MPEG技术、无线通信协议等),掌握这些新技术的人当然很找。
嵌入式人才稀缺,身价自然就高,越有经验价格就越高。
其实嵌入式人才稀少根本原因可能是大多数人无条件接触这需要相应的嵌入式开发板和软件另外需要有经验的人进行指导开发流程。
(2)与企业计算等应用软件不同,嵌入式领域人才的工作强度通常低一些(但收入不低)。
搞企业应用软件的IT 企业,这个用户的系统搞完了,又得去搞下一个用户的,而且每个用户的需求和完成时间都得按客户要求改变,往往疲于奔命,重复劳动。
相比而言,搞嵌入式系统的公司,都有自己的产品计划,按自己的节奏行事。
所开发的产品通常是通用的,不会因客户的不同而修改。
一个产品型号开发完了,往往有较长一段空闲时间(或只是对软件进行一些小修补),有时间进行充电和休整。
另外,从事嵌入式软件的每个人工作范围相对狭窄,所涉及的专业技术范围就是那些(ARM、RTOS、MPEG、802.11等),时间长了这些东西会越搞越有经验,卖卖老本,几句指导也够让那些初入道者琢磨半年的。
若搞应用软件,可能下一个客户要换成一个完全不同的软件开发平台,那就苦了。
(3)哪天若想创业,搞自已的产品,那么嵌入式是一个不错的主意,这可不像应用软件那样容易被盗版。
土木学院有一个叫启明星的公司开发出一个好象叫“工程e”的掌上PDA(南校区门口有广告),施工技术人员用该PDA可当场进行土木概预算和其它土木计算,据说销路特好。
我认识的某大学老师,他开发的饭馆用的点菜PDA(WinCE平台,可无线连网和上网),据他说销路不错,饭馆点点PDA让客户点菜,多显派头档次。
我记得00级22班当年有一组同学在学Windows程序设计课程时用VC设计了一个功能很强的点菜系统做为课程项目,当时真想建议他们将这个软件做成PDA,估计会有些销路(上海火车站南广场的Macdonald便使用很漂亮的PDA给用户点食品,像摸像样的)。
这些PDA 的硬件设计一般都是请其它公司给订做(这叫“贴牌”:OEM),都是通用的硬件,我们只管设计软件就变成自己的产品了。
从事嵌入式软件开发的缺点是:(1) 入门起点较高,所用到的技术往往都有一定难度,若软硬件基础不好,特别是操作系统级软件功底不深,则可能不适于此行。
(2)这方面的企业数量要远少于企业计算类企业。
特别是从事嵌入式的小企业数量较多(小企业要搞自己的产品创业),知名大公司较少(搞嵌入式的大公司主要有Intel、Motorola、TI、Philip、Samsung、Sony、Futjtum、Bell-Alcatel、意法半导体、Microtek、研华、华为、中兴通信、上广电等制造类企业)。
这些企业的习惯思维方式是到电子、通信等偏硬专业找人。
由于正规高校软件学院以前毕业生以企业计算为主,所以正规高校软件学院与这些企业联系相对较少。
正规高校软件学院正积极努力,目前已与其中部分公司建立了联系,争取今后能有正规高校软件学院同学到这些企业中实习或就业。
(3)有少数公司经常要硕士以上的人搞嵌入式,主要是基于嵌入式的难度。
但大多数公司也并无此要求,只要有经验即可。
正规高校软件学院同学若学习嵌入式,显然应偏重于嵌入式软件,特别是嵌入式操作系统方面,应是我们的强项。
对于搞嵌入式软件的人,最重要的技术显然是(实际上很多公司的招聘广告上就是这样写的):(1) 掌握主流嵌入式微处理器的结构与原理(2) 必须掌握一个嵌入式操作系统(3) 必须熟悉嵌入式软件开发流程并至少做过一个嵌入式软件项目。
正规高校软件学院在嵌入式软件方面最重要的课程包括:(1)嵌入式微处理器结构与应用:这是一门嵌入式硬件基础课程,正规高校软件学院用这门课取代了传统的“微机原理与接口”课程(目前国内已有少部分高校IT专业这样做了,因为讲x86微机原理与接口很难找到实际用处,只为教学而已)。
我们说过,嵌入式是软硬件结合的技术,搞嵌入式软件的人应对ARM处理器工作原理和接口技术有充分了解,包括ARM的汇编指令系统。
若不了解处理器原理,怎么能控制硬件工作,怎么能写出节省内存又运行高速的最优代码(嵌入式软件设计特别讲究时空效率),怎么能写出驱动程序(驱动程序都是与硬件打交道的)很多公司招聘嵌入式软件人员时都要求熟悉ARM处理器,将来若同学到公司中从事嵌入式软件开发,公司都会给你一本该设备的硬件规格说明书(xxxSpecification),您必须能看懂其中的内存分布和端口使用等最基本的说明(就像x86汇编一样),否则怎么设计软件。
有些同学觉得嵌入式处理器课程较枯燥,这主要是硬件课程都较抽象的原因,等我们的嵌入式实验室10月份建好后,您做了一些实验后就会觉得看得见摸得着。
还有同学对ARM汇编不感兴趣,以为嵌入式开发用C语言就足够了。
其实不应仅是将汇编语言当成一个程序设计语言,学汇编主要是为了掌握处理器工作原理的。
一个不熟悉汇编语言的人,怎么能在该处理器写出最优的C语言代码。
在嵌入式开发的一些关键部分,有时还必须写汇编,如Bootloader等(可能还包括BSP)。
特别是在对速度有极高要求的场合(如DSP处理器的高速图像采集和图像解压缩),目前主要还要靠汇编写程序(我看到过很多公司是这样做的)。
当您在一个嵌入式公司工作时,在查看描述原理的手册时,可能很多都是用汇编描述的(我就遇到过),这是因为很多硬件设计人员只会写或者喜欢用汇编描述,此时您就必须看懂汇编程序,否则软硬件人员可能就无法交流。
很多嵌入式职位招聘时都要求熟悉汇编。
(2) 嵌入式操作系统类课程除了WinCE的实时性稍差外,大多数嵌入式操作系统的实时性都很强所以也可称为实时操作系统Real Time Operating System.从事嵌入式的人至少须掌握一个嵌入式操作系统(当然掌握两个更好)这在嵌入式的所有技术中是最为关键的了。
目前最重要的RTOS主要包括:第一类、传统的经典RTOS:最主要的便是Vxworks操作系统,以及其Tornado开发平台。
Vxworks因出现稍早,实时性很强(据说可在1ms内响应外部事件请求),并且内核可极微(据说最小可8K),可靠性较高等,所以在北美,Vxworks占据了嵌入式系统的多半疆山。
特别是在通信设备等实时性要求较高的系统中,几乎非Vxworks莫属。
Vxworks的很多概念和技术都和Linux很类似,主要是C语言开发。
像Bell-alcatel、Lucent、华为等通信企业在开发产品时,Vxworks用得很多。
但Vxworks因价格很高,所以一些小公司或小产品中往往用不起。
目前很多公司都在往嵌入式Linux转(听说华为目前正在这样转)。
但无论如何,Vxworks在一段长时间内仍是不可动摇的。
与Vxworks类似的稍有名的实时操作系统还有pSOS、QNX、Nucleus等RTOS。
第二类、嵌入式Linux操作系统:Linux的前途除作为服务器操作系统外,最成功的便是在嵌入式领域的应用,原因当然是免费、开源、支持软件多、呼拥者众,这样嵌入式产品成本会低。
Linux本身不是一个为嵌入式设计的操作系统,不是微内核的,并且实时性不强。
目前应用在嵌入式领域的Linux系统主要有两类:一类是专为嵌入式设计的已被裁减过的Linux系统,最常用的是uClinux(不带MMU功能),目前占较大应用份额,可在ARM7上跑另一类是跑在ARM 9上的,一般是将Linux 2.4.18内核移植在其上,可使用更多的Linux功能(当然uClinux更可跑在ARM9上)。
很多人预测,嵌入式Linux预计将占嵌入式操作系统的50以上份额,非常重要。
缺点是熟悉Linux 的人太少,开发难度稍大。
另外,目前我们能发现很多教材和很多大学都以ucOS/II为教学用实时操作系统,这主要是由于ucOS/II较简单,且开源,非常适合入门者学习实时操作系统原理,但由于ucOS/II功能有限,实用用得较少,所以正规高校软件学院不将其作为教学重点,要学习就应学直接实用的,比如uClinux就很实用。
况且熟悉了Linux开发,不仅在嵌入式领域有用,对开发Linux应用软件,对加深操作系统的认识也有帮助,可谓一举多得。
据我所知,目前Intel、Philip都在大搞ARMLINUX的嵌入式开发,Fujitum则是在自己的处理器上大搞Linux开发。