到印度出差差不多三个月,终于又回来了。写一点自己对于硬件以及软件的一点认识及体会吧。
每当有了一点技术心得,总想写出来和同行分享分享,所谓不吐不快,是为此理。
到印度出差差不多三个月,终于又回来了。写一点自己对于硬件以及软件的一点认识及体会吧。
每当有了一点技术心得,总想写出来和同行分享分享,所谓不吐不快,是为此理。
接下来说说嵌入式岗位。个人觉得这一岗位相较于纯硬件岗位,需要精通汇编或者C语言,现在主流的嵌入式语言当然是C语言。这一岗位通常是和单片机及外围电路打交道。这一岗位的就业方向个人觉得比纯硬件岗位,就业面更广更宽。
至于说薪资待遇这一块,个人觉得还是仁者见仁,智者见智。我曾经遇到过精通设计微电机的工程师,这是纯硬件岗位,他通过个人的努力加上个人的运气,在上海实现了有房有车的追求(有点世俗)。我也遇到过做单片机开发的工程师,在三四线城市,月薪4,5k左右。所以在帖子中我尽量客观分析各个岗位对于既能要求的异同点,至于说薪资待遇,那就看各位的功力和机遇了。
嵌入式岗位之所以说就业面广,是因为各行各业只要涉及到弱电控制,几乎都离不开单片机。即使是传统的开关电源行业也需要涉及电压电流的采样显示,PWM脉宽的远程控制调节等,这必然得用到单片机的ADC采样功能。
嵌入式岗位大至可以划分为工业领域,医疗领域,通信领域,教育行业,船舶通导领域等等。接下来说说嵌入式工程师需要具备的专业既能。首当其冲是C语言,必须精通C语言,最好能达到同声翻译的水平。即客户提出具体的技术指标,嵌入式工程师第一时间就能用C语言描述。其次需要熟悉至少一种单片机,目前大多数工程师入门接触到的第一款单片机就是8051单片机。掌握了8051单片机之后,根据目前的流行趋势,我们需要着手熟悉掌握STM32单片机。个人觉得如果具备了上述两项技能,嵌入式工程师即可入门了,后面的路就需要你在学习中,工作中不断的深入。至于说嵌入式操作系统以及对于单片机内部的电路架构的理解当然是越深入越好,这就需要我们保持足够的学习能力,永不疲倦的追求技术。
另外,我接触到的嵌入式工程师,普遍的存在基本的硬件基础知识较薄弱,导致的直接影响就是遇到硬件相关的问题,很多时候不知道如何解决。这也是广大的嵌入式工程师急需加强补充的地方。
推荐的第一本书籍是C语言书籍,C Primer Plus。个人觉得这本书对于C语言的讲解非常到位。另一本书,C语言入门经典。这本书重视基础知识点的讲解婆媳。个人觉得这两本书结合在一起学习,对于C语言的入门及提高是非常有帮助的。只有将基础打牢了,才便于后续知识的进一步学习。如果能够将C语言学到同声翻译的水平,个人觉得这才是真正的大成。能够在大脑中将现场客户的技术要求瞬间转化为单片机能够执行的代码,这就是C语言的同声翻译。
C语言的书籍推荐了几本,接下来推荐一点C语言的视频教程。郝斌C语言讲解,这套视频是我当初学习C语言的入门教程,个人觉得郝斌老师讲的很接地气,看书时遇到的很多语法上的疑点在郝斌老师的视频讲解中都得到了解答。这套视频教程一共180级,比较庞大,需要大家有一点学习的耐心和热情。
另一套视频,C语言深度解剖,这套视频可以有助于我们深入理解C语言的诸多语法细节,细细体会这套视频,你的C语言功力会提升很多,当然也有配套的书籍,书名也叫C语言深度解剖。
电子计算机这一行业涉及到的技术及知识点汗牛充栋,就谈C语言吧,貌似很简单,但是等你真正深入进去才会发现,C语言入门简单,但是想用好C语言,那是真的不容易。通过简单的C语言编程,可以让单片机实现各种花式流水灯的操作。通过C语言编程,也可以让单片机跑系统。这就是C语言的魅力。上述推荐的几本C语言书籍及视频教程只能帮助大家熟悉C语言的使用。真正想大成,还是需要通过实实在在的项目才能成长起来。
深入学习C语言,绕不开的一门学科便是数据结构。C语言的核心以及精髓是什么,是指针。但是貌似单片机编程中没有涉及到任何的指针类的语法(库函数除外)。偶尔涉及到不同函数之间的数据传递时,我们也可以通过全局变量来解决,完全没有必要采用指针操作。那指针到底用在哪里呢。
如果不知道指针到底用在哪里,真心建议大家好好翻一翻基于C语言编写的数据结构书籍,只有在深入学习数据结构的解除上,我们才能体会到指针是C语言的精髓这句话的真谛。基于C语言的单片机编程属于底层编程,很多程序的编写完全可以避免指针的使用,或者说常规的C语言语法已经足够我们应付底层的驱动编写了。不过此时的我们距离所谓的C语言高手还有一段距离。这段距离就是结构体和指针。跨过结构体及指针这道门槛,你才算步入了C语言高手的行列,后续的修炼就靠操作系统了,这是后话,暂且不表。
那如何跨过结构体及指针这道门槛呢,学习数据结构吧。指针的优点是它非常的灵活,指针的缺点也恰恰是它太过灵活。数据结构涉及到第一个知识点是链表。学好了链表,理解了链表,后续的树,二叉树以及图等知识点,你才能更深入的学习。不过它们的操作无外乎插入,删除,查找等等。学好了指针,你会发现编程真正玩的不过是内存的分配释放而已。
推荐两本书籍,第一本是严蔚敏师太编写的《数据结构》,第二本是《大话数据结构》,作者程杰。
今天终于可以坐下来写点文字了。
刚入行的工程师问的最多的莫过于前途二字。老鸟们通常会告诉小菜鸟们,做电源好,只要涉及到电,必然就有电源,所以做电源绝对不用考虑失业。这句话不错,电源虽然属于电子行业,但相对于其他电子行业,电源技术的更新发展其实相当缓慢。目前市面上我们接触到的电源模块很多都还是采用的模拟技术实现。很多行业甚至依旧采用线性电源。
不过做电源技术久了,我也发现电源工程师的局限性。除了电源,我们貌似会的还是电源,至于说单片机,FPGA等,几乎不懂。而且最可怕的是,由于长久呆在电源行业,想换个其他电子行业,却发现自己几乎什么都玩不转。想把电源技术玩出花来,跳不过去的一道坎就是单片机。模拟电源有其局限性,涉及到多电源数据采集控制通信,以及多模块电源联合控制等,想模拟电子技术实现就比较困难,而通过单片机编程实现则相对比较简单。重点来了,我们不会单片机编程,怎么办?
很多人埋头于电源技术,花了很多时间终于自认为把模拟电源技术掌握好了,抬头一看,自己早已过了而立之年。年龄大了,肩上的责任重了,自己的学习能力以及求知欲却慢慢退化了。
人到中年,面对日新月异的电子技术,很多人选择的是逃避。君不见各大论坛经常充斥着这样的谬论:“做技术,但不可一味追求技术。做技术是没有前途的,做到一定的程度还是转行做管理吧。”每每看到这样的犬儒言论,我总觉得很好笑。这里我就不抨击了,但我总觉得人生苦短,既然选择了一个方向,那就应该坚定不移的走下去,矢志不渝,不忘初心。
人到中年,面对日新月异的电子技术,还有的人选择了迎难而上。接下来我推荐的书籍主要用于那些想在数字控制领域有所斩获的朋友。另外在此再纠正一个观点,很多工程师觉得模拟电子技术相对于数字电子技术,难度更大。其实不管是模拟电子技术还是数字电子技术都不简单,都需要我们这些平凡人花费大量的时间去钻研才有可能有所突破。
接下来我给大家推荐一些数字电子技术及CPU技术方面的书籍。
第一本书《数字电子技术基础》,阎石主编。这本书我翻看了至少有三遍,视频讲解也看了差不多两遍,只能说数字电子技术不简单,真的不简单。
掌握了一部分数字电子技术,我们有必要开始学习计算机相关的技术基础。首先推荐的这本书为《逻辑与计算机设计基础》。这本书前半部分讲解的依旧是数字电子技术,后半部分讲解的是CPU的结构组成。个人觉得这本书需要我们好好静下心来仔细琢磨琢磨,书中后半部分对于CPU的体系结构讲解的比较深入,个人觉得非常适合于那些想深入理解CPU组成结构的朋友。
继续更新,今天准备再推荐几本微处理器及计算机相关的书籍。
我们每天接触的计算机,到底由哪些部件组成呢,各个模块之间是如何协同工作的呢。如果大家想系统地了解计算机的内部原理,接下来这本书个人觉得大家有必要看看,《计算机组成与体系结构》。这本书对计算机组成及体系讲解的比较多,个人觉得通过这本书可以帮助大家对计算机建立一种立体的认识,而不仅仅只是把它当作黑盒子或者是工具。不过话说回来,即使把这类讲解计算机体系及结构方面的书籍看透,我们还是不能通过数字集成电路做出CPU。通过阅读这类书籍仅仅是帮助大家更好地理解计算机原理组成罢了。
了解了计算机的内部功能模块及其作用,接下来我们要谈谈计算机软硬件之间是如何协同工作的,它们各自的处理数据的方式有什么异同呢?
软硬件对于不同的数据处理都有着各自的优缺点,如何权衡二者的优缺点呢?这时仅仅通过我们掌握的那点可怜的计算机技术知识是远远不够的。
有句话说得好,书到用时方恨少。这句话尤其体现在电子计算机领域,面对每天遇到的各种各样的技术问题,只恨自己能力不够,不知道诸位看官是否有这样的经历。我自己在平时的工作中经常感觉自己的知识储备不够,很多时候是通过自己的反复调试得以将问题解决,但为什么会出现这样的问题,我却是一知半解,更多的时候是通过尝试以及直觉。
言归正传,想要深入的了解计算机软硬件之间的协同作业,《计算机组成与设计硬件/软件接口》这本书需要我们好好消化消化。另外我得补充一点,这本书的作者是计算机体系结构的大拿David A.Patterson 和John L.Hennessy,同时他们也是RISC的创始人,mips的发动者。这两位作者还出了一本书《计算机体系结构量化方法》。
毕竟是大牛出的书籍,再加上我本身的资质相当一般,很多知识点看了好几遍依旧是一头雾水,我一点也不急。余生只做一件事,就是把计算机技术学好,所以看到不懂的地方我就勉强看一下,有个大至的印象,接着往后看。看的多了,多多少少都会有一点心得体会,随性而已。
抱着这样的心态,我每天学习计算机技术相关的知识,并不会很厌倦,偶尔有了厌学情绪,就暂且放一放,等恢复了学习的热情之后继续啃书。学习本身是个痛苦的过程,想长久地走下去,建议大家尽量走的慢点,别急火攻心,走岔路伤了元气从此看到书籍就头疼,那就得不偿失了。话说国内的教育模式,绝大多数人都有厌学情绪,如何调动自己的学习情绪,就仁者见仁,智者见智了。