我也是通信工程毕业,去年刚做一个嵌入式系统板子的开发
个人建议:
第一,做研究,本科生的知识结构不够,本科教育阶段,C语言要求的深度不够。如果可能,建议读研。
第二,只能说偏重于软件,不能只做软件,除非你以后想成为技术民工。你接受的通信工程本科教育本就是偏重于硬件,应该学好通信这一块,在以后的工作中,能在项目中发挥你的特长。
第三,学习的时候,要非常注重基础,很多人毕业出来,一个正确的语句写不出来。一个三极管的原理弄不明白。理论只是理论,建议多实际操作。
第四,你的情况,喜欢软件,却读的是硬件的专业。如果心态不能调整过来,以后会非常痛苦。我的老大,软件博士(操作系统)出身,却是软硬皆能,硬件是工作后因为知识结构不够才弥补的。对你而言,同理,利用现有资源,扎实学好现在的课程才是最主要的。软件可以在以后再弥补。其实一个C语言,一个汇编,不值得你在本科浪费太多的精力。
第五,如果非要坚持,就是在你本科教育接受的基础上,提高深度就行。
我来说点你需要学习的具体东西:
1、本科毕业你至少熟对一款单片机熟练,51系列的、MSP430系列的、AVR、PIC的等等,包括单片机硬件电路设计和单片机的程序,当然如果你实在不想干硬件的,你可以找现成的硬件电路,你来写单片机程序;有兴趣可以继续学下ARM开发,了解ARM7或者ARM9结构、PROTEUS做做小实验等等;
2、大学期间就学好C吧,你从事嵌入式驱动的话最好还要学好汇编;
3、现在已经没有写驱动对硬件一窍不通的了,难道单片机上电时序、高电平输入还是低电平输入、串口怎么设置的这些硬件方面的东西不可能全部由硬件工程师告诉你,需要你会看电路图;所以模电、数电、电路相关知识必须懂点的;
4、复杂驱动基本都与操作系统有关了,所以大学可以业余时间学习OS,LINUX是几乎写驱动的必须懂的,所以你必须要学。如果以后想从事手机驱动开发的话,Android、Symbian、BREW等都需要了解
5、你还需要学习DPS,这个不单单是你学的数字信号处理一门课,涉及很多知识;
我就帮你总结这5点你需要学习的吧,这些东西如果都需要系统的学习理论知识的话还是建议你读研,但是如果你平时比较好学的话,本科毕业同样可以的,但你至少需要了解这些东西,因为工作中实践才能学到更多东西。
最后说一下,貌似现在企业招收这种驱动工程师应届生不怎么可能会招本科学历的了,至少是要硕士的了。至于你怎么考虑完全看你!
凭经验来说,学得越多越好,但是经历时间不由自己掌握,现在学好自己的课程,重点偏向:比如 C、汇编程序用于今后研究DSP,掌握编译原理等。计算机方面偏重 比如:VC、Delphi编程。OK 今后出来找个开发板做几个项目你就知道了。
介绍个嵌入式qq群给你吧,有不少嵌入式大牛在里面,一些技术资料等也可以向群主要或在群共享中下载 群号是:1127 389 64
学好C++ VXwork和RT Linux 你就无敌了