单片机的由来及基础原理
在我们的日常生活中所使用的家用电气与电子器件中包含有各种各样的集成电路板。电路板上的零件使电子产品具有多种功能。在集成电路板中最重要的零件莫过于单片机。单片机是一种集成电路芯片,它采用超大规模集成电路技术,把具有数据处理能力的中央处理器CPU和存储器以及多种IO接口集成在一起。
在1971年全球第一个型号为4004的计算机微处理器,由美国英特尔公司推出。同时,单片机的技术也逐渐发展并得到广泛应用。单片机全称单片微型计算机又称为微型控制器,可以理解为精简版的计算机。
单片机主要由三部分组成,分别是CPU,存储器和IO。这三个组成部分的功能是什么呢?
CPU的主要功能是运算和控制。运算就是进行各种数学计算,而控制就是根据程序代码来控制输入输出以及电平的高低。那么程序代码存放在什么地方呢?
程序代码是放在存储器中的。单片机中的存储器一般分为两种,一种是只读存储器ROM,另一种是随机存储器RAM。只读存储器,用来存储用户编译好的程序,运行时CPU直接从只读存储器中读取指令来运行。指令运行过程中产生的临时数据,如变量放在随机存储器中。所以可以理解为只读存储器是用来存放程序的,随机存储器是用来存放数据的。
IO是输入输出模块,主要用于外部电路与CPU进行沟通。
那么这三者的具体工作流程是怎样的呢?
这是一个单片机内部包含CPU,只读存储器,随机存储器和IO输入输出模块。首先将写好的程序通过下载器烧录到单片机的只读存储器ROM,然后程序逐条进入CPU,并在CPU内执行。例如CPU可以按照程序指示并通过IO模块输出高电平,点亮外部发光二极管。
如果程序所对应的指令为运算指令,那么CPU就执行运算过程。如果在运算过程中产生了变量,那么产生的变量将存放在随机存储器中。因为CPU内部没有存放变量的地方。
IO接口是单片机与外界的接口,可以作为数据接口对外部存储器进行读写,也可以作为控制接口输出控制指令,如电机控制继电器控制等。也可作为人机交互接口,如液晶显示,键盘输入等。单片机中的各个模块是按统一的节拍同步工作的,这个统一的节拍来源于单片机的时钟,时钟信号是一个高低电瓶交错的信号。单片机在一个时钟周期内只能执行一条指令,而且单片机的时间单位都是时钟周期的整数倍。时钟信号来源于振荡器,振荡器分为内部RC振荡器和外部晶体振荡器,简称晶振。
由于内部RC振荡器的误差比较大,所以一般采用外部晶振在配合晶振电路,通电后产生一定频率的时钟信号。单片机的各个部件都要根据时钟信号协调工作。时钟周期的长度影响了单片机的速度,所以晶体振荡频率也叫做单片机的主频。主频越高,单片机的性能也越高。单片机的频率一般为百兆赫兹级别,而电脑CPU的频率一般为千兆赫兹级别。
总的来说,单片机是一种集成电路芯片,它采用超大规模集成电路技术,把具有数据处理能力的中央处理器CPU,存储器以及多种IO接口集成在一起。CPU的主要功能是运算和控制,只读存储器ROM是用来存放程序的,随机存储器RAM用来存放数据的。IO是输入输出模块,可以用作数据接口控制接口或人机交互接口。
#单片机##芯片##科技曼曼谈##电路##cpu#
单片机从事什么工作?只会51单片机能找到工作吗?
我当初是自学转行进入单片机行业,没有211/985这种学历背景。
转行纯粹是为了脱离阶层,我们那个年代都兴蓝领,白领。
我们学的专业就是属于蓝领类的。
蓝领就是做苦力活的,白领就是身光颈靓,坐办公室拿高工资的。
从还没毕业我就对自己所学专业很排斥,但又没勇气退学。
当初选择这个专业一方面是因为分数线限制,一方面是当时年轻啥也不懂,都是根据就业率选的。
现在想想当初真傻,就业率不代表有前景,很多行业就业率高是因为屁事多、拿得少,现在年轻人根本不会去做。
虽然平等很难,但我骨子里还是觉得挺不爽的。
当时想法也很简单,就是想转坐办公室的,工资高点的。
第一次尝试学java,做程序员工资很香,基本语法学会了,也做了个小项目。
但是当时心里一点底都没有,项目都是对照教程抄代码抄出来的,脱离教程自己一脸懵逼,连工作都没去找就放弃了。
再后来就接触到了单片机,跟我所学专业还算是有点契合,就走了这条路。
1.只会51单片机能找到工作吗?这已经是11年前的事了,我就学了STC89C52这个单片机,然后做了2个项目。
一个是电子时钟,一个是智能小车,从学习到找到工作花了大概4个月左右。
现在这么卷,如果你只会51单片机的话,估计比较难了,除非你用51单片机做过3-4个项目,或者做过一些soc开发。
51单片机其实也有很多复杂的,比如说TI的CC2540蓝牙芯片,也是51内核。
但是Flash和RAM甚至比STM32还大,软件也搭载了osal协议栈,难度一点也不比那些STM32的简单。
这个协议栈,我研究了1个多月才基本搞懂,并把osal系统剪裁后移植到STM32单片机上。
其实说白了,就是一种程序架构,只是比较成熟稳定,给产品提供了很多辅助性的功能,比如说定时器、事件、队列、链表等等。
如果说你只会51内核的单片机,能把这协议栈吃透的话,找个工作也是绝对没问题的,而且工资会比一般的高。
2.单片机从事什么工作?
嵌入式这个行业其实也细分很多不同方向,单片机开发就是其中一种。
在学习之前,我们一定要先定位好职位,再规划系统学习路线,否则你的学习效率短则慢几个月,长则慢几年。
如果你是想从事单片机软件开发的职位,可以参考我们无际单片机编程给学员的职业定位。
1).单片机工程师
2).MCU工程师
3).STM32工程师
4).嵌入式工程师
5).电子工程师
直接在招聘平台找这几个职位就非常精准了。
如果你没做这类工作,你根本不知道这个职位是做什么工作的。
这就导致很多新手,即深入学习硬件,又深入学习单片机和c语言。
学了很长一段时间,发现还是什么都做不出来,最后感叹学单片机太难了。
在实际产品开发时,一般一个产品电子部分由2个工程师共同完成,分别是硬件工程师 和单片机软件工程师 。
硬件工程师主要负责方案选型,原理图设计、pcb设计、样品焊接、BOM清单整理。
单片机软件工程师在硬件基础上开发产品功能程序。
所以,虽然单片机软件开发要学硬件,但不需要学这么深,前期只需要看懂就可以了。
看懂和设计,看似差不多,实际截然不同。
我们无际单片机编程一直跟学员强调,想最快速度达到找工作的水平,就先把软件搞定。
找到工作了,收入稳定了,后期你想学啥学啥,压力就没这么大了。
软件相对来说工资也比硬件要高,现在硬件大多数做应用,很难建立核心竞争力。
而且可以说,顶级硬件水平绝对不可能通过一本书,一个教程,甚至2,3个项目达到。
而是需要常年累积的实战项目经验,而且项目需要经过不同环境的批量测试,这样你设计出来的电路才算真正稳定。
相关问答
数控稳压电源的 背景 意义?数控型交流稳压电源由功率器件和功率i变压器构成功率单元,由集成电路或单片微机组成控制电路,加上取样部分和辅助直流电源共同组成整机。数控型交流稳压电源其...
如何更改Proteus原理图中网格显示?更改Proteus原理图中网格显示的操作较为简单,具体方法和步骤如下:1.打开Proteus软件;2.点击工具栏里的【view】,在展开菜单中点击【Grid】;3.可以看到工...更...
请问小白学 单片机 的具体方向和步骤该如何呢?我是从大学开始学习单片机的,现在分享一下我的学习感受。单片机学习分为硬件部分和软件部分,硬件那部分需要电路,模电数电等作为基础,软件部分只需要有一点...
凌阳 单片机 DA550A03E有那么内置功能,不再编程可实现那么功能?[回答]在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机...
物联网工程专业,毕设什么题目比较好?这是一个非常好的问题,作为一名计算机专业的教育工作者,我来回答一下。首先,对于物联网工程专业的学生来说,在选择毕业设计题目时,要考虑到自身的知识结构...第...
请问华为荣耀这款手机为什么总是无缘无故的自动想起音乐?-ZOL...STC12C5204AD单片机4541浏览7回答电脑上所有的图标都变成了WPS图标了,怎么处理啊?7237浏览3回答苹果A1489ipad忘记ID密码怎么强制恢復出厂设置苹果?50....
试写出AT89C-51 单片机 片内外Rom和RAM的地址空间-ZOL问答重叠的地址空间单片机是如何区分的?单片机并不认为有重叠的地址空间。说地址空间重叠,是某些人,糊涂的表现。有用(0)回复098765qwe内部ROM和外部ROM是靠E...
fpga开发为什么要硕士?FPGA(Field-ProgrammableGateArray)开发需要较高的技术水平和专业背景,涉及硬件描述语言、数字电路设计、逻辑设计、算法设计、编译器设计等多个领域。因此...
如何评价2020考研计算机硕士诸多高校继续“爆炸”?大家好,我是小橙同学,2017级硕士研究生,2020届应届毕业生。作为一名考研生,作为一名研究生,作为一名刚刚经历找工作期间各种折磨的我来说,对这个问题还是有...对...
51 单片机 肿么接收电脑发送的16位数据?-ZOL问答51单片机是8位的,一次只能接一个字节,你这16位的,要分两次的。电脑串口也是按两次来发送,也就是把这个16位的拆成两个字节,所以每个字节发送都是遵循串口协议的...