1. 经验的积累时间长,51单片机的需2年,ARM7 –》ARM9 –》ARM11 –》ARM A8,这一过程做下来,至少需要五六年。一个毕业生到公司后,通常只能先从事一段时间的测试工作,带有经验的工程师带着做一小模块的设计,再是更多模块设计。如果是在大公司,则是负责锣丝钉式的小模块开发。要从模块设计到系统设计,中间需要7-10年时间。
2. 项目的开发周期长:不带操作系统的,需1-1.5年,带操作系统的则依OS不同而定,带ucos的需1-2年; 带WinCE的,需1-3年,带Linux的需1-3年。另一方面,因为涉及硬件及固件、应用软件的设计,硬件的修改,每次改版,电路板的制作需2-4周,硬件测试OK后,才能开始底层软件设计。生产开始前,电路通常至少改版2-5次,这也就增加了项目的开发时间。
3. 人员流动大:年轻工程师在一企业的服务时间通常为1-6年不等,比率最高的是1-2年。对工程师来说,企业是其发展的跳板,在工程师的认知中,认为打基础3-5年就OK了,然后转做管理。
4. 中国人对技术开发的认同缺乏。对很多工程师来说,技术开发仅是其进入电子/电机行业的入门,入门后,花3-5年时间做技术开发,然后转技术管理或FAE,而不会将电子系统设计开发作为终身职业。一些工程师在从事技术开发5-10年后,则转向高校从事工科教育,而没有继续开发工作,因为他们认为年纪大了,学习跟不上。其实,这当中最根本的原因是,中国传统社会的士大夫思想根植于工程师的思想中,学而优则仕,中国社会没有形成重视创造开发的传统,社会并不重视工匠。当然,社会潮流也推动着工程师的职业选择,利字当头,致使鲜有工程师能够静下心来从事设计开发工作。
5. 项目本身复杂,软硬通吃
一个嵌入式软件项目,包括硬件设计及嵌入式软件设计,嵌入式软件还分为底层驱动、中间层软件及上位机应用软件。一开始各自部分各自开发都没问题,系统整合时将会发现项目的难度远超出自己的想象,而很多公司并没有一个软件/硬件皆精通的技术领头人,各部分没法整合成系统,前期的开发无异于打水漂。
6. 技术更新快,学习能力需很强
嵌入式系统的发展,主要是追踪单片机芯片技术的发展。
ARM11 –》ARM A8,3年
操作系统的更新:
WinCE 5.0 -> WinCE 6.0, 4年
Linux操作系统,包括 Linux QT, ubuntu, Android
|