解答:单片机是啥,如何学好单片机
novakon2015/11/06电子技术 IP:江西
算起来,已经写了3年单片机了,几乎写烂了。准备了一些意见给初学者,各路大侠高抬贵手。


1. 什么是单片机
单片机的本质,就是芯片内的处理器+芯片内集成的外设,单片机的工作原理,和计算机系统的工作原理是一致的。如今的计算机处理器,和当年冯诺依曼提出的模型,其基本原理是一样的:一个机器按照纸条上标记的步骤,去读写纸条本身。这就需要有存储状态的元件,称为寄存器;需要有判断执行的元件,称为运算器;需要有移动纸带的过程,称为寻址……这些概念在单片机里都是存在的,因此在学习单片机技术之前,有必要先了解计算机的工作原理,以达到事半功倍的效果。
除了处理器之外,计算机要实现其预定功能,还少不了外设。所谓外设,就是帮助计算机处理器与外界交流的设备。对于个人计算机来说,这些外设包括USB、声卡、显卡、磁盘控制器等等;对于单片机也是一样,单片机的外设包括总线、通讯端口、存储器控制器、定时信号发生器等等。由于在一个芯片内集成了诸多外设,大家将其称为单片机。在单片机时代之前,处理器和外设是采用分立的电路元件实现的,通常放在同一块电路板中,称为单板机。单片机的出现极大地减少了实现同样功能所需的电路板面积,提高了设备的集成度,降低了系统的设计复杂度。而利用单片机进行开发,实际上就是要通过设计一定的程序,让单片机操纵其自带外设,向外部输出信号以控制一个系统,最终实现其既定功能,因此单片机又有个学名叫做微控制器(Microcontroller)。


2. 单片机能做什么
欲使用单片机实现一定的功能,可以将单片机的工作过程分成三个步骤,分别是输入、处理、输出。单片机通过其外设,获取外部信号输入;对外部输入信号,作运算、判断等处理;将处理结果,以合适的形式,通过外设输出。除上述三项外,单片机什么也做不了。因此,若要评估一种单片机的性能,也可以先看这三个步骤:该单片机支持以哪些方式输入/输出信号(模拟电压、PWM、PPM、通讯协议等);该单片机支持哪些类型的运算/判断、指令处理速度有多快。很多刚学单片机的同学问,单片机能干什么用?这个时候就应该研究一下手头的单片机其上述能力的高低,答案自然就明了了。比如某单片机的处理核心可以进行高速浮点数运算,那么这款单片机就可以用于数字电源控制,因为数字电源的控制环路运行频率很高,需要这种高速高精度计算能力。


3. 如何学好单片机
首先当然是如上所述,在了解原理的基础上,多动手实践。其次,由于众所周知的原因,我国的网络环境日益恶化,很多同学只能参考墙内的中文资料学习单片机,与相关领域的前沿技术严重脱轨。单片机生产厂家众多,只有多逛厂家网站、多看厂家技术资料(包括规格书、参考手册、应用手册等),才能保证与时俱进;沉迷于过时的网络教程,拘泥于具体的型号配置,只会越学越死,而无法学成一技之长。
最后,要多为具体需求编程,多在具体应用中编程,而不要为虚拟的需求、无意义的应用编程。典型的反面教材是光立方、电子钟、八音盒。


4. 单片机的应用领域
单片机是微型计算机的缩水再缩水版本。
当某个具体应用需要高速模数混合信号的输入及输出、逻辑/数学规则复杂的信号处理、低成本低功耗小尺寸以及重复可编程易调试特性时,单片机通常是第一选择。
也正是因为这样,要用好单片机,只学习单片机程序设计是远远不够的。优秀的单片机工程师必须通晓算法与数据结构、模拟与数字电路、仿真与调试技术、通信原理、自动控制技术等一系列主题,以应对随时变化的需求。
来自:电子信息 / 电子技术
25
已屏蔽 原因:{{ notice.reason }}已屏蔽
{{notice.noticeContent}}
~~空空如也
金坷居士
9年3个月前 IP:澳大利亚
796518
单片机这个 学会一个之后搞其他的都很好上手
窝最开始鼓捣STC和51 之后接触了stm8 基本一个星期的功夫就差不多了
半年前上手stm32 也是没有废特别大力气
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
bg8npk
9年2个月前 IP:广东
796635
非电子相关的人,第一次玩单片机根本不懂如何输入外面的信号进入单片机,后来接触了arduino,随后跟着叉学了stm8,算是入门
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
菜田怪圈
9年0个月前 IP:广东
806385
有点小错误:“一个机器按照纸条上标记的步骤,去读写纸条本身”

这个计算机模型其实是图灵提出来。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
novakon作者
9年0个月前 IP:广东
806401
引用 菜田怪圈:
有点小错误:“一个机器按照纸条上标记的步骤,去读写纸条本身”

这个计算机模型其实是图灵提出来。
是的,谢谢指正。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
806836
stm8的资料都还没搞懂,现在手头上的事却要用到stm32,又没开发板来学习练习,我也是醉了。其实这学电子本人感觉最难的就是对那些电路、各种元器件和其内在的结构联系有感性的认识,不然埋头看资料搞懂原理是很费劲的。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
806839
引用 SamZLim燹灵:
stm8的资料都还没搞懂,现在手头上的事却要用到stm32,又没开发板来学习练习,我也是醉了。其实这学电子本人感觉最难的就是对那些电路、各种元器件和其内在的结构联系有感性的认识,不然埋头看资料搞懂原理是很费劲的。
就像对学c的编程初学者,不理解操作系统,理解线程,进程,内存,指针什么的就有一定的困难,就像当初学C的我一样,问题解决不了,弄得很抓狂,以至于之后很长一段时间内我都对编程无比惧怕,暑假的时候有人让我写程序,我都是迟迟不敢动手的。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
806842
引用 SamZLim燹灵:
stm8的资料都还没搞懂,现在手头上的事却要用到stm32,又没开发板来学习练习,我也是醉了。其实这学电子本人感觉最难的就是对那些电路、各种元器件和其内在的结构联系有感性的认识,不然埋头看资料搞懂原理是很费劲的。
之所以很少女生会对电子感兴趣,我想女生对电子缺乏感性认识就是很重要的原因之一,看什么数据手册应用手册规格书还不如看散文诗歌小说来的有趣吸引人,逛淘宝买各种元器件还不如逛淘宝买衣服鞋子来得开心,看各种高大上的有关技术的视频,还不如看韩剧看帅哥来得养眼。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
陈忠俊
9年0个月前 IP:四川
806871
引用 SamZLim燹灵:
就像对学c的编程初学者,不理解操作系统,理解线程,进程,内存,指针什么的就有一定的困难,就像当初学C的我一样,问题解决不了,弄得很抓狂,以至于之后很长一段时间内我都对编程无比惧怕,暑假的时候有人让我写程序,我都是迟迟不敢动手的。
没有啊,我们都是先学c++,后面才学操作系统。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
806872
引用 陈忠俊:
没有啊,我们都是先学c++,后面才学操作系统。
弱弱地问一下,如果先学操作系统再学cpp您举得效果会是怎样的?个人感觉无论先学什么,最重要的都是对它有一定的感性认识,能正确理解其内在的联系和规律,能在脑海中形成一定的知识系统。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
novakon作者
9年0个月前 IP:广西
806876
引用 SamZLim燹灵:
弱弱地问一下,如果先学操作系统再学cpp您举得效果会是怎样的?个人感觉无论先学什么,最重要的都是对它有一定的感性认识,能正确理解其内在的联系和规律,能在脑海中形成一定的知识系统。
“内在联系和规律”居然成了“感性认识”,我觉得你不是很适合科创,尽早注销账号可能是比较好的选择。在技术贴内谈超理是严重违规行为。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
806880
引用 novakon:
“内在联系和规律”居然成了“感性认识”,我觉得你不是很适合科创,尽早注销账号可能是比较好的选择。在技术贴内谈超理是严重违规行为。
所谓感性认识就是觉得它是有很强的内在联系和规律性,而不是凌乱不堪的,这种内在联系和规律性激发人的好奇心和求知欲,进而不断探索其内在联系和规律。换句通俗点的话就是发现美,产生兴趣吧。哎!怪我语文没学好咯,说句话居然能让人理解成:“内在联系和规律”居然成了“感性认识”对等关系。也怪我语文没学好没读懂在论坛技术贴内谈超理是严重违规行为。请问如何注销账号?
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
806881
引用 菜田怪圈:
有点小错误:“一个机器按照纸条上标记的步骤,去读写纸条本身”

这个计算机模型其实是图灵提出来。
此模型拿纸条作为形象的说明其效果之一就是让人对模型产生更多的感性认识,对某些人来说虽然暂时难以真正理解,但起码觉得这种方式好像是可以接受的。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
806891
所以解答:单片机是啥,如何学好单片机,站在理性的角度,的确可能就是如楼主所言,但如何学好它,最最关键的是对它产生兴趣,喜欢它,爱上它,甚至把学好它当成使命,九死尤未悔,否则遇到困难是很容易退缩的。曾经师父说过,只有极致的兴趣才能做出极致的作品,那一刻我很开兴听师父这么说,因为我真正感受到兴趣对学习的重要性,而不只是学电子能赚钱,也许某一天足够有钱了,电子就抛到九霄云外了。本帖虽然是技术贴,但在评论中加点看起来并不理性的话应该不至于严重违规吧,大家的出发点都是帮人学好单片机嘛。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
虎哥
9年0个月前 IP:四川
806898
有些话因为过于正确,所以形同废话,比如要产生兴趣。而这些话如果在一个讨论中说出来,他就不仅仅是废话,而是会将本可以深入梳理的话题表象化、口号化。在任何讨论中,呼喊政治正确的口号都是不利的,本帖就是一个鲜活的例子。
没兴趣,没某一方面的天赋,肯定学不好,如果能学“好”,也只是“技术”好。要论绘画技艺,现在随便从美院找一个人出来都比梵高强,但他们绝大多数永远也画不出能够流传后世的作品。兴趣是在与实践的互动中强化的,许多人是在误打误撞的学习中有了兴趣,然后发现原来还有那么一点天赋。强调先有兴趣是在时间、步骤上设置枷锁,不是聪明的办法。不论是什么原因要学习一个东西,合理的入门方法都是很重要的。楼主是介绍入门知识,默认就是给“对这个话题有点兴趣”的人所看,没兴趣看个卵,所以没有任何不妥。
(敬请燹灵女士不要回复我的帖子)
我接触单片机是在将近20年前,那时候要扩展某退役军用电台的频率。当时的方法是把电台里面的EPROM焊下来,读出来,又到图书馆去找到了intel在80年代初出版的手册(实际上从未有人借阅过),进行人工反编译。我曾经很熟悉汇编甚至机器码编程,但是由于应用实在太困难(包括缺少天赋),除了最开头觉得神奇,新鲜了一阵,在后来就逐渐放弃了。这是个失败的例子,当年如果有现在这样丰富的条件,也许我就真的会玩单片机了。所以我觉得龙少真的是极有天赋,可惜没有跟上最新的手段,如果不做改观,也会像我一样荒废掉的。
后来我的兴趣转移到构架和系统工程,所以现在我能协助程序员以最合理的方法实现我们希望的功能和性能。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
806908
我觉得自己也没啥天赋,stm8s都还没学会,编程学得差点就成敌人了,没人教没人带,stm32就更困难了。既然有经验的虎哥如此说,那弱弱地问一句,您觉得我该如何跟董事长请辞呢?
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
陈忠俊
9年0个月前 IP:四川
806926
引用 SamZLim燹灵:
弱弱地问一下,如果先学操作系统再学cpp您举得效果会是怎样的?个人感觉无论先学什么,最重要的都是对它有一定的感性认识,能正确理解其内在的联系和规律,能在脑海中形成一定的知识系统。
没有最基本的编程基础,是没法进行操作系统原理的学习的,源代码你根本看不懂。不过那会儿操作系统原理和嵌入式开发还有分布式计算都是一个学期同时进行的课。and编程也可以有感性认识,可以去看看编程之禅那套书,很不错。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
陈忠俊
9年0个月前 IP:四川
806927
引用 SamZLim燹灵:
我觉得自己也没啥天赋,stm8s都还没学会,编程学得差点就成敌人了,没人教没人带,stm32就更困难了。既然有经验的虎哥如此说,那弱弱地问一句,您觉得我该如何跟董事长请辞呢?
告诉董事长,世界那么大,你想出去看看。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
806929
引用 陈忠俊:
告诉董事长,世界那么大,你想出去看看。
非常感谢!
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
806930
另外还请虎哥去掉“女士”一次,一个人在一栋大楼里感觉怪怪的。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
806931
引用 陈忠俊:
告诉董事长,世界那么大,你想出去看看。
弱弱地再问您一个问题,您觉得猎奇心理跟兴趣有什么区别呢?
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
806932
引用 陈忠俊:
没有最基本的编程基础,是没法进行操作系统原理的学习的,源代码你根本看不懂。不过那会儿操作系统原理和嵌入式开发还有分布式计算都是一个学期同时进行的课。and编程也可以有感性认识,可以去看看编程之禅那套书,很不错。
貌似《编程之禅》是三部之一呦。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
eason
9年0个月前 IP:湖南
807261
刚入门,关于单片机原理有几个问题:整个单片机运行就是,外部输入到内部储存,然后处理后再输出对吗?是的话,那么内部处理又是怎么理解呢?就像数字电路的逻辑运算一样的?
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
SamZLim燹灵
9年0个月前 IP:广东
807485
引用 eason:
刚入门,关于单片机原理有几个问题:整个单片机运行就是,外部输入到内部储存,然后处理后再输出对吗?是的话,那么内部处理又是怎么理解呢?就像数字电路的逻辑运算一样的?
您的情况用我师父的话来说就是:看得少而且看得不求甚解。当时我回应说我对网络学习缺少认识。事实上不怕各位笑话,本人由于特殊的成长经历和背景,在上大学前连百度都没听说过,知道有一天,在班群里我的助班师姐说“找度娘啊”,我问她度娘是谁,她告诉我就是百度....我才知道百度的存在,但我一直没用过百度,因为大一的时候上不了网。直到快学期结束时有人截了两张图(一张百度搜素,一张谷歌搜素)给我对比时我才见到百度的真面目,但我依旧对网络没有多少清晰的认识,顶多需要下载什么东西的时候,借一下别人的账号上一下别人告诉我的谷歌,潜意识里一直都觉得学习上遇到问题解决不了时除了问别人似乎就没有其他什么途径了,所以当遇到问题解决不了时,我很抓狂,以至于放弃最终遗忘在记忆的角落。还有一次在群里听说什么单片机值得买,我就用手机上了一下淘宝,一搜就搜出来几张图片而没有别人说的东西,问了才知道阿里不像谷歌有那么多的代码处理很多搜素的关键字。事实上像我这样对网络没有多少清晰认识的情况在某些人群中尤其是女生堆里是很普遍的。前不久,我跟我一位舍友说:不要用百度了,百度搜出来的东西很多都是假的,没多少用。我的舍友没有问我不用百度用什么?还有什么更好用的东西吗?....之类的问题,却毫不客气地跟我说:起码比你有用....我瞬间无言以对,然后,然后就再也没有然后了。也许在某些人的意识里,网络就是有问题找度娘,有空看个电影电视剧,刷个淘宝,用PS劈张靓照,用wps写个文档弄个ppt,下个仿真软件、codeblocks完成下作业,下个电脑版qq和微信聊个天就没啥了。但您应该不至于跟我一样连百度都不认识吧。这单片机入门我想应该是不需要虎哥说的天赋,不缺钱的话,往往需要的是耐心吧。尔等有条件之人是国家之栋梁,民族之未来,虽然有些东西可能跟我是八竿子打不着的关系,但我很期待各位能做出伟大的作品,像师父一样心怀改变世界的伟大梦想。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
平静推窗
8年11个月前 修改于 8年11个月前 IP:贵州
811502
学这些东西最大的困难就是这个行业的男女比例,好像付出了很多努力,结果换来的是这样一种生活这样一种环境。即便达到了一个很高的高度,对于感情也没有用
工科男生的处境非常尴尬,就算不管什么原因男生被认为“适合”吧结果对于“被看好”男生有什么好处吗,很喜欢这样的环境吗?这是一个好过的工作吗?
首先是人际,对于学习生活的交际圈基本就局限在实验室,然而实验室都是男的
再一个就是时间安排,因为除了工作学习时间之外,还需要很多额外的时间去学东西,去看资料。再加上经常看书的人往往比较内敛,所以在所谓的“下班、放学后”也没有办法去扩充人际
于是就造成了不论学得再好,只是在导师同学的眼里还不错,但并不是女生认为还不错,在评价指标上有了偏差
所以会对平时的生活学习都造成困惑,对于这样有没有意义长期处于矛盾心态
这在生活中每天都会体现,于是就有不自信、不敢和女生说话等等问题出现

再就是很多女生并没有想过将来会做科研,做研发,做学者
带来的问题就是对这样一种生活完全不感兴趣,自己不想做,也不会想和别人过这样的生活
所以容易出现的一个状况就是科研人员即便水平再高,也并非是被女生所欣赏的,竞赛获奖、发表论文、申请专利的效果可能还不如你去参加个什么社团
有没有女生喜欢科学?有没有人喜欢工科成绩出众的男生?有的,但是前提是处在同一个环境层次,才能够对这方面的能力欣赏
如果说本专业,甚至本校都没有,那就只能去外校或者其他乱七八糟的社交途径去找
但是这样认识的女生,基本是对科研无感的
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

所属专业
上级专业
同级专业
novakon
学者 机友 笔友
文章
1256
回复
8386
学术分
16
2008/03/29注册,2年11个月前活动

已走,勿送

主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:未同步
插入公式
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
收藏
取消收藏
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
管理提醒
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}