嵌入式学习推送第一篇——单片机入门

简介
作为嵌入式学习推送的第一弹,这篇小推送呢可以说是货真价实(价值一般)。对大家而言,本篇而已只是引导大家学习,对于那些有在单片机一定基础的同学,稍微看下,然后敬候我的第二篇就OK了。

一、前言

1、绪论

讲道理呢其实也只是浅谈,说是嵌入式,其实反倒是讲一些入门嵌入式需要做好的准备工作。文章可能并没有各位大佬那么鞭辟入里,但也希冀能给曾经和我一样迷茫着、困惑着找不到方向的同学一点点小的建议。

2、推送安排

就我目前的推送安排的话,会以连载的形式做3~4的推送,都是涉及一部分技术的小文章,讲述的也大都是我自己从学习51到学习嵌入式板子的经历的反思,希望读者能在我的经历中得到一点启迪吧,内容大体安排就是三篇:一篇51单片机(单片机入门阶段),一篇STM32(单片机进阶和提升阶段),一篇ITOP4412(三星A9开发板,也就是嵌入式入门开发板)。
下面做一些关于这几篇连载的说明。以后的这几篇帖子看似是技术贴,其实也就是方向引导帖,旨在给初学者搭出一个框架,在学习的时候知道为什么学以及以后的路在哪。

3、文章针对对象

这几篇推送适用的对象:喜欢微型计算机或者处理器,主要学习方向在于硬件逻辑的实现。
对嵌入式学习方向分类的话,我个人喜欢分成三个大的方向:底层硬件电路的设计以及实现、底层软件驱动以及协议的编写和上层系统裁剪以及软件的开发。这几篇文章主要针对的对象就是第二类方向,即底层软件驱动以及协议的编写,但也只是一个大的方向,说到底都是硬件逻辑的实现。至于硬件电路的设计实现和我们的关系不大,所以不会涉及。而上层系统的裁剪以及软件的开发问题,我们有可能会会稍稍涉及,但是如果一开始是想做系统层面的开发的话,就没必要过分的学习底层知识了。因为系统层面的知识体系才是根本,底层的知识只是你学习的加分项,千万不要舍本逐末。
至此,我们可以开始我们的第一篇推送了。

二、单片机的选型

goto title1;

title1:emmm,开个玩笑,下面好好讲话。

正如大部分人所说的那边,学单片机亘古不变的起步就是学习51单片机。为何要从51开始学习呢,理由如下:
1、51单片机网上资料相当多,作为一个行业里已经被用烂,在学校里却有着不小受众的单片机,他拥有着及其丰富的资源。作为一款简易落后的单片机,毫无疑问,他大部分的坑都被前人踩过无数遍了,因为在遇到问题时,甚至都不用翻墙查阅外网资料,看两个百度搜索链接就把问题解决了。
2、51单片机入门的时候,平台搭建简易,代码容易实现和看懂。对于大部分初学者而言,C语言的基础约等于0,直接接触高级的单片机势必就要接触到厂家提供的函数包,里面丰富的函数定义、指针、引用、结构等等稍微看起来有点高级的语法,让初学者目瞪口呆,望而却步。
3、最重要的一个原因:便宜,入手价格20元左右的核心板就可以开始学习,开发板的话100块以内就能买一个很不错的板子了。
讲道理原因不是什么特别重要的东西,你只需要记得51单片机适合新手学习就OK了。当然了,有一定的编程能力并且对C语言有一定的了解的同学,想跳过51单片机,直接学习后面的32位的单片机,我觉得问题也不太大,只要需要付出更多的时间罢了。如果有一定的C语言基础和编程能力,强烈推荐学习STM32等Cortex---M系列的单片机,51只是对于C语言能力不足的妥协,毕竟51已经落后于时代潮流很久了,精不精通意义不大。但是是直接向上Cortex-A系列单片机的同学,我只想说:请开始的你的表演。

三、单片机的学习

1、学习的方法

学习51单片机的方法一般都是通过书、文献类PDF或者视频。对于学习能力较差的同学,我推荐你跟着视频学习,视频讲解的十分细致,会告诉你哪里需要学,哪里跳过。但是对于大部分学生来说,我更推荐的是利用书或者是文献。买开发板的同学一般卖家都会给你一大堆资料,里面有对应的学习文献,对应他的章节进行学习即可。卖家给的资料如果质量很差甚至没有的同学,推荐大家看51行业的老大哥:郭天祥的《新概念51单片机C语言教程》,至于老大哥的板子并不推荐大家购买,老大哥的板子有点贵,所以不如大家在淘宝挑一个其他牌子的51单片机。
小结下,最普遍的学习方法就是对照着郭天祥的51单片机教程,买一个单片机,按照他的教程进行学习。在过程中会遇到板子和书不匹配带来的代码移植问题,但是我觉得都是非常小的问题,百度搜索几条链接就能解决。

2、重要信息的获取

学习51单片机最忌讳的就是按照高中的那套,将所有的内容记下来,一本书几百页,并不是所有内容对你都是有用的。学习单片机最需要思考的是:你需要掌握的内容是什么。单片机对于大部分人来说只是一个工具,就初学者而言并没有什么算法可言,就是功能的实现,所以有时候会用比理解要简单多,对于初学者而言,应该先学会用起来,然后慢慢的理解。
其次还要注意,不是书上所有的内容都是你需要去记忆的。就比如郭天祥书上的第一章,会讲很多的内容,但是大部分内容是只需要你了解,并不需要你去记忆的东西,比如:51单片机型号命名的原则、封装、引脚以及引脚功能之类的,这类内容你并不需要去记忆,当你需要的时候直接去翻阅书籍就OK了,而且也很少会被用到。你应该学习的是编程语言和功能实现的能力。
编程语言在单片机里面主要是指C语言,书很多,入个门没什么难度,功能实现而言在前面几章都是很容易实现的,但是后面难度上来了,往往容易让人萌生放弃的想法,其实讲道理,无论你学习什么都会遇到这种情况,在开始阶段很容易解决,越往后越耗费精力。其实,每次你觉得来了一个比较大困难时,时候就是能力发生突变的关键点,因为你遇到了挑战你原本能力范围的困难,但一旦将困难啃下来,能力将发生一个飞跃。
至于功能实现的部分,主要指的是底层寄存器的配置。51单片机功能的实现都是通过底层寄存器来实现的,寄存器数量不多,也没必要记每个寄存器的功能和对应的位含义,可以自己整理成一个文档,当然也可以直接每次需要的时候翻书。寄存器的配置难度其实也不大,就是一些常规讨论,把对应寄存器位填写数据即可。

3、学习单片机的忌讳

忌讳一:疯狂看书不写代码者。不写代码的阶段各不相同,有的人一开始就不写代码,只是单纯的看书,觉得看懂了就和这本书就此别过,有的人在前面几次还会动手写写代码,随着渐渐代码量上来了,就不愿意动手写代码了。怕麻烦肯定学不好编程,理论要和实践并驾齐驱,就算是做理论研究的,也不可能脱离实际做科研。一般代码量小的同学,在遇到一个工程时,需要花费的时间是经常写这类代码的同学的几倍,甚至可能还解决不了问题,即使你觉得你会了。看了和理解了是一个层次,理解了和能写出来是另一个层次。难度系数自己实践下就知道了。
忌讳二:一瓶不响,半瓶晃荡。万不可学习了一星半点之后就自我满足、自我膨胀。从书上敲两行代码,就敢说自己会了,自己学的很棒棒。那么学习到什么程度算是学习的比较好呢。所有的功能配置会通过代码实现,可以自己独立编写小的工程。(网上还有一些51单片机的外包单,如果能做出来就算水平很高了,会写简单的驱动,可以实现4,5个功能集成的工程,也算可以了)
四、51单片机学习的本质
讲道理51单片机真的只是用来入个门,它只是一个工具。在学习51的过程中最重要的是提升代码的编程能力(主要是C语言的学习能力),其次是会配置寄存器,平台熟悉后,能够独立编写一些工程时,开始学习32位的单片机问题也不大。学习51单片机只是为了后面学习嵌入式打下一点基础,如果C语言基础过关,懂一点寄存器的知识,只需要大体了解下单片机是什么,就可以直接上32位的单片机。
五、结尾的XJB扯淡
随便谈谈人生,讲讲理想。单片机只是工具,只是加分项,并不是你的核心生产力。对单片机功能配置熟悉以后就很膨胀的话其实是一种很蠢的行为,因为只是实现了一些基础且没有太大意义的东西,这种东西人人简单学习后都会。问题多了解决的方法就多了,并不可能就只用一个工具打天下,用一块51就能掌控世界显然也是不现实的。编程的核心是算法,平台变了,解决问题的思想和逻辑却没有变,舍本逐末的去过分的炫耀平台使用的能力,还不如踏踏实实学点基础理论的知识。至于知识体系的问题,考虑到篇幅,就放到下次的推送里面讲吧。
最后一点建议,就是课内知识很重要,别为了获得解决问题的工具,放弃了解决问题的方法。即使你想做的和本专业无关,那就把相关专业的基础课学学好。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342

推荐阅读更多精彩内容

  • 姓名:吴兆阳 学号:14020199009 转自韦东山 嵌牛导读:对嵌入式初学者,没有足够的视野选择一个合适投入方...
    吴兆阳阅读 2,375评论 0 4
  • 姓名:屈彦维 学号:16020610026 引自:http://lw.3edu.net/qrs/lw_46788....
    怀光_ee48阅读 1,959评论 0 0
  • 前言 正在写作这篇文章的笔者是一名大四的软件工程学生,因为实习工作的需要,奉命研究单片机开发,所以我所扯的内容可能...
    兔子泽阅读 5,514评论 18 57
  • 秦艽 别名:大叶龙胆、大叶秦艽、西秦艽 基源植物:龙胆科植物大叶秦艽、麻花秦艽、粗茎秦一和小秦艽的干燥根, 拉丁学...
    本草园丁阅读 1,749评论 0 2
  • 回顾总结 老师观察很透彻,对演讲者的剖析让我们学到很多。 演讲者的套路其实也很让人喜欢。 教师培训不应该只是为了证...
    行走的小米阅读 494评论 0 0