学习单片机需要什么知识基础?

用户5547775963


作为一名从事多年单片机开发的技术人员,也经常有人这样私信咨询我,学好单片机需要具备哪些专业基础啊,这里我和大家讲解下。

学习单片机,除了少部分人是兴趣爱好,绝大部分的人是为了找到单片机相关的工作,所以我从单片机软件和单片机硬件这两个职业定义上进行讲解。


单片机硬件工程师

单片机硬件工程师,主要是的发展方向是硬件开发,平常的工作内容,有几大块,这些内容需要的专业基础分别是如下。


1,器件选型

工作内容,当项目需求确定后,硬件工程师先要明确硬件设计框架,根据参数来选择对应的芯片型号,比如项目需求3.3V供电电压,DC直流,锂电池供电,根据这些信息,就需要决定LDO的型号,充电管理芯片的型号。

再比如在开关控制当中,一般根据工作电流大小,来决定是三极管还是使用MOS管,电流小就使用三极管,电流大就使用mos,其他的依次类推。

一般选型需要从电流,电压,阻容值,精度,封装,功能实现,价格等多个因素考虑。

2,原理图设计

根据设计功能需求,器件选型确认后提供的参考电压等,在画图软件进行原理图设计。相关参数设置,滤波电路,防浪涌保护电路等,根据实际电路运用情况要进行添加和修改。


3,PCB设计

在画图软件,需要考虑 布线的线宽线长。辐射问题,器件布局是否合理,生产是否容易装配,工艺制程效率高,容易实现,多种VCC,GND隔离,信号防干扰等多种问题。这些都是需要布板时候,需要思考的设计问题。

4,PCBA焊接与调试。

PCB板回来后,需要焊接,也经常会出现焊接虚焊,连锡异常等,也有可能设计的电路本身有问题,需要进行调试,有时候为了找到问题点,分级进行分析,有必要使用切割电路板进行分析。

5,生产异常分析与处理.

产生生产异常的原因有很多,问题现象也千奇百怪,主要是来料异常造成,设计稳定性,工艺制程造成的,

一般简单的问题,品质人员和工程人员能够解决,但疑难杂症,就需要工程师依靠相关的测量检测工具和手段,采集出来相关参数,再结合技术理论进行分析。


根据以上内容,需要如下基础知识:

1 ,模拟电路,数字电路。

在器件选型,原理图设计,PCBA调试,生产异常分析和处理,这些工作内容当中用到基础知识。


2,EMC,EMI,布板设计规则

画图软件protel 99se/DXP/pads/Altium Designer的熟练操作,在原理图设计,PCB设计时,会用到这些专业知识。很多产品需要检测EMC,EMI,按照法规标准进行检验。


3,电烙铁,万用表,示波器等工具的使用

在PCBA焊接,调试,生产异常分析处理的时候,会用到这些电子工具,电流/电阻/电压参数,导通情况,文波等检测手段,所以这些工具的使用和掌握是非常重要的。

4,分析问题,解决问题的能力

这点其实很综合,是前三点的掌握后,自己思考衍生出来的一种硬件设计方法和思维,需要一定的经验积累,也是专业技能和水平高低的综合体现。


单片机软件工程师

1,熟练掌握单片机C语言的运用

MFC和单片机C有一定的细微的差异,比如在变量定义时,单片机C语言,常用无符号变量类型,且变量类型的范围有明确的要求。

其他的部分,想学好单片机C语言编程,除了基本的语法外,最好学会结构体和指针的使用。指针结构体,结构体指针,指针数组,指针函数。这些如果能够掌握,那么C语言本身的语法就没有什么问题了。

2,熟练使用单片机开发环境,工程搭建,文件管理。

单片机编程,目前主流的是使用MDK,当然IAR也很常见,还有一些其他的品牌芯片自研的IDE,工程操作,.C与.H文件的划分为关联关系,多文件组成结构等,好的文件结构有助于代码调试和管理,也有助于代码移植。


3,能根据器件技术手册,完成基本驱动代码的编写。

单片机实现很多功能,需要外挂很多外部芯片,比如flash芯片,eeprom芯片,时钟芯片,AD芯片,触摸芯片,显示驱动芯片等,有各种不同的接口,有的是spi,有的是iic,还有其他的接口,所以需要有一个能够看懂资料,看懂时序逻辑,有很多资料是只有英文版本,所以还需要有点英文基础。


4,能够根据功能需求,完成基本项目功能代码的编写,仿真调试。

调试能力非常重要,写代码不可能一次就顺利,要通过相关的调试手段解决BUG,常见的是在线仿真,查看运行状态以及参数值,或者使用串口工具打印相关数据,进行分析再解决BUG。


这是单片机软件开发必须掌握的能力和要求


5 基本的模拟电路知识

对于单片机软件开发,只需要有基本的模拟电路基础即可。

概论总结

在很多企业,单片机软件工程师和单片机硬件工程师都是分开的两个岗位,分工明确,但也有很多企业,单片机软硬件都是同一个人来完成的,软硬件也会有相互衔接的地方,如果想全面发展,就需要将上述的专业基础都需要掌握。


我是科技电小二,一名嵌入式开发工程师,如果您觉得这篇文章对您有所帮助,那么点个赞,并加个关注吧。

科技电小二


作为一个电子信息工程毕业的过来人,简单的谈下自己的感受吧!

单片机说简单也简单,说复杂也复杂,要想玩转单片机,确实需要下一番功夫的。

接触单片机是从大二下学期的,开始也是一脸懵逼,到最后的爱上它也是经历过一般波折的。

单片机入门并不难,但还是需要有一点基础的,首先要有电路、模拟电路、数字电路、C语言等基础,一些基本的概念还是要知道的,前期不需要你去深入了解,也很难理解深刻,所以知道一些基本概率就好。

单片机最好的学习方法就是实践,买一块最简单的51开发板,从hello world开始,目前51开发板的资料很齐全,从视频讲解到文档一应俱全,边学习边自己动手尝试,查资料从点到面,很快你就可以入门了。

学习单片机自己DIY出作品,是很有成就感的一件事,也是对你最好的鼓励,会推动你不断前行。

通常单片机的学习路线是51->STM32->ARM,随着不断深入知识面会越来越广,基础知识也会越来越深,单片机最好的学习方法是理论和实践相结合,希望能帮助到你。


星空e剧


单片机是一门非常实用的专业技术,如今的电子产品众多,都离不开单片机,不管是消费类电子、工业电子还是汽车电子都需要用到单片机。如果能熟练的应用一款单片机可以找到一份待遇很不错的工作。单片机的设计开发从大类上可以分为硬件设计和软件设计,大多数的公司,硬件岗位和软件岗位都是分开的;也有很多公司中,硬件和软件是用一个岗位不分开。

1 学习单片机硬件电路设计

单片机的硬件电路设计主要包括硬件原理的设计、芯片选型、PCB-Layout等。在设计技术方案的过程中,需要根据不同的客户需求提出不同的技术方案,会用到各种各样的芯片,要熟悉各种产品的工作原理。所以,要涉及的内容比较多。可能会涉及到模拟电路、数字电路、微机原理、信号与系统、微机原理、传感器和控制器相关的基础知识,根据行业的不同、所开发产品的不同,还要懂很多行业的背景等。以传感器行业为例,需要了解各种传感器的工作原理、传感器产品相关的行标国标,需要熟悉单片机常用的外设电路如AD采样、UART通讯接口等。

2 学习单片机软件设计

单片机是可编程元器件,这大大简化了硬件逻辑电路的设计。单片机可以使用汇编语言和C语言进行编程。由于不同单片机的具体汇编指令不同,导致汇编语言在不同单片机平台上移植比较困难,汇编语句也比较难懂。所以,基本都用C语言编程。如果要学习单片机的编程,需要会C语言、能看懂单片机的数据手册、知道如何配置单片机的寄存器。可以不会汇编,但是需要能看懂,因为如何涉及到底层的话,会夹杂一少部分汇编代码。

总而言之,想要学习单片机,需要熟悉硬件和C语言编程。具体的行业经验可以在工作中慢慢积累。

以上就是这个问题的回答,感谢留言、评论、转发。更多电子设计、硬件设计、单片机等内容请关注本头条号:玩转嵌入式。感谢大家。

玩转嵌入式


需要学这些基础知识:

C语言、模拟电子技术、数字电子技术、计算机构成原理!

下面说一下这些知识都是干什么的。

C语言

C语言是必须要学的,你可以先把C语言学好了,如果还有精力,再去学习汇编,汇编这个不学也可以,因为目前的单片机可以完美的支持C语言了。

让单片机执行什么样的操作,都是通过C语言来实现的,但是单片机是不认识C语言的,在我们完成C语言之后,需要对其进行编译,编译成单片机机认识的语言。

模电

就单片机而言,模电用到的并不多,模电可以通过不同的结合方式,构成数电中的一些模块。

让大家学习模电主要是为以后搭建单片机的外围电路做准备,但是它对于单片机的深层次的原理涉及的不多。

数电

对于学习单片机而言,数电是重中之重,因为单片机中的这些模块就是对数电排列组合。

比如说最常听到的寄存器,它是怎么寄存一个数据的?这些答案都在数电里面可以找到。

还有触发器、RAM、ROM、ADC、译码器这些看似非常高深的东西全都在数电里面。

计算机构成原理

计算机构成原理是讲述怎么去构建一台电脑,包括总线、IO、各种外设的搭建。

往大了说它是讲述怎么搭建一台电脑,同样如果把它做的很小,就是我们的单片机。

单片机就是一台小型的电脑,学了这个课程对你了解单片机有很大的帮助!


爱上半导体


首先单片机就相当一台小型电脑,里面集成了算法,CPU,rom ram,所以学习我们需要具备以下知识

1:硬件这块我们需要数字电路,模拟电路知识,这些大学里面都学过,因为学习单片机数字模拟电路知识如果不知道的情况下,就非常扯淡,外面的电路IO点这些都是基本的电路常识!

2我们需要学习需要,像单片机我们一般用的是汇编语言,这些最基本的语言我们要回,这样才是一个合格的学习单片机的知识内容!

只有具备了以上两种能力再加上自己的努力,才能把单片机学好!我是悦爸工控,喜欢我就关注我,谢谢!



悦爸工控


至少要学精数电,因为至少要搞清什么叫数据(二进制、十六进制),而且从学习数电的过程中,学精的话,会体会到,思考问题的方式也发生了变化,变得更加逻辑化了(基础的与或非),到了后面你就会用逻辑的思维去解决实际问题了,因为编程关键就是要用逻辑的思维去看待问题,然后找出逻辑的思路,最后通过这个思路方案就可以正确的把程序编出来,所以一定要学好数字电子技术,模拟电子也不能忽视,因为单片机与数字电子只是说能实现了逻辑功能(也就是领导出来了,有了一个控制策略),现在得要手下的人去做事,这就是模拟电子,因为它是连接单片机与实际控制执行机构硬件(领导与一线工人)的桥梁,所以要学好数字电子和模拟电子,C语言跟单片机的汇编语言都是相通的(无论是什么语言,最终都是要说出某句话,只是说话的音不同罢了,这里的音就是语言),学好其中任何一个,都可以去学好其他的语言,而且上手很快,比如C很好,但JAVA不懂,没关系,有C的底子,JAVA一下子就能掌握。


憋出内伤


很高兴为你解答。

学习单片机需要以下基础知识:

1.数字电路、模拟电路知识。要能看懂电路图,元器件。

2.汇编语言。

3.C语言基础知识。

以上就是需要学习的基础知识,希望我的回答可以帮助到你。


就叫春哥


朋友们好,我是电子及工控技术,我来回答这个问题。单片机作为一种实践性非常强的技术,要想入门单片机就要有做一些准备,有一句话叫“兵马未动,粮草先行”,我们学习单片机技术也是这样,在学习前我们要做一些准备工作,根据我学习的经验,我认为学习单片机需要做如下的准备,下面和朋友们聊聊学习单片机的那些事。

学习单片机技术的知识储备

数电和模电知识

单片机的控制少不了外围电路的参与,在单片机的外围电路中以数字电路为主,同时还要辅助一定的模拟电路。比如外围电路的各种芯片都是以数字芯片为主例如译码芯片、锁存芯片、移位芯片等。所以掌握一定的数字电路知识和模拟电路知识是学习单片机必备的基础。另外还要学习一下传感器知识,因为在深入学习后要制作一些小项目,比如温度控制、遥控小车、红外遥控、PM2.5检测等都要传感器的参与才行。所以这些知识的储备非常重要。

操作技能知识的储备

要学好单片机就要“手脑并用”,要用到手就必须有扎实的焊接基本功,因为单片机就要靠不断的去焊接硬件、编写软件在“玩”的过程中学到了知识与技能,因此在学单片机之前要有一定的焊接技能和焊接理论也是分有帮助。

学习单片机物质的储备

硬件方面来说

有句话叫“工欲善其事,必先利其器”,所以在学习单片机之前有一套单片机学习板很有必要,我建议如果有了一定的焊接技能的话最好自己先焊接一套单片机电路板,起初先焊接最简单的,比如从单片机最小系统电路开始焊接,以后慢慢扩展,以模块化的方式进行拓展最好,这是硬件方面的准备。

软件方面来讲

由于单片机是一个软硬结合的技术,说以在软件的准备上也要做一下准备,比如常用的单片机编程软件也非常的多,我常用的是Keil软件非常好用,在学习之前可以准备一下,同时还要下载软件,我常用的时STC的一个下载软件,下载成功率挺高,可以安装试试。

操作工具方面

在操作工具上主要是准备一些下载线,主要用来“烧写”自己所编写的程序用的。下载线有串口的也有并口的,比如USB串口也可以用RS232串口。以上的学习成本都不大,最大头的是要准备一台笔记本或者台式电脑,这是学习单片机比不可少的,也是学习单片机主要的投入。

学习单片机思想上的准备

学习单片机最后一个方面是做好“打持久战”思想准备。因为单片机技术的学习不是一天两天就能学会的,要有坚持不懈的毅力和决心。要有坚持用“玩”的思想去学单片机技术,这样会给你带来学习的兴趣和动力!最后祝你早日学好单片机技术!

以上就是我对这个问题的建议。欢迎朋友们参与讨论,敬请关注电子及工控技术,感谢点赞。


电子及工控技术


数字电路和模拟电路方面的知识!如果只是爱好,稍微懂点或边学边做也可以玩的很好!本人就是非专业出生,稍微在学校里学过点模拟电路和数字电路方面的知识,结合后期自学C语言!现在也能把单片机玩转!但要精,可能就要下辈子了!


犟驴看世界


把单片机的知识学的半懂不懂之时,亲手搭建一个电路(接端口接一个二极管),用程序把它点亮你就入门了![微笑]


分享到:


相關文章: