楼主如果能自信成为单片机牛人,那么我觉得继续在单片机上研究还是很不错的。以后的学习主要靠项目及产品需要了。如果自信心不足,那么可以尝试学一些ARM、Linux或Android。Android和Linux不冲突,因为Android本身也就是Linux内核,我们电子类专业出身主要还是以底层软件为主,也主要以C语言为主,Android的开发其实也就是Linux的开发,所以掌握Linux之后再上升到Android平台只需学一些Android特有的而以。楼主所说的JAVA,那是Android的SDK应用开发,和我们将来从事的没有多大关系。如果楼主对Android的应用开发感兴趣,那么也可以学学,JAVA其实不是很难,推荐《JAVA 入门经典》一书。
楼主可以去投投简历,看看是否有机会从单片机转到ARM及Linux的工作上来。前些天我就招了一个想搞ARM Linux但只有单片机1年经验的兄弟:lol。
如果没有机会,那么楼主只能是业余时间学习了,我给楼主一些学习顺序的建议(针到Android或Linux且基于ARM平台的底层驱动开发工程师职位):
第一步,先要掌握ARM处理器,目标是将ARM当作超级单片机应用,学习ARM的硬件电路、学习ARM的前后台编程。
第二步,掌握Linux底层开发,目前是能够修改或维护好基于ARM平台的Linux系统。学习基本的Linux操作,学习Linux应用编程能写一些简单应用测试程序,学习Linux驱动开发,能写一些Linux驱动。熟悉具体某个处理器的Linux BSP开发包,能修改、维护,能调错。
第三步,学习Android底层开发,能维护具体某个处理器的Android BSP开发包,能修改、维护,能调错。
上述的学习其实还是要花很多时间和精力的,所以建议楼主最好是一边学习一边找机会转到这一方便的工作上来。那样才是正道,边学边用。
|