小样儿老师:我的嵌入式学习之路(一)

•    微博: 小样儿老师2015

关于

严格来说,本文题目应该是我的单片机、DSP和ARM+Linux学习之路,但这个写法实在太绕口——况且嵌入式往往暗指MCU,DSP,ARM等微处理器加上嵌入式操作系统,所以我认为本文题目是合理的。

这篇文章讲了什么?

•    我这些年学单片机、DSP和ARM+Linux的总结。

•    一些不错的书籍和教程。

初学

第一次接触单片机是在大一下学期,当时和一同学脑洞大开要做一个世界上最轻的可折叠便携电动车——折叠好放在包里扛着就走的那种,靠着扯犊子的本事通过了学校的创新创业项目立项,还给拨了经费,分了实验室,实验室的指导老师让学习51单片机,由于当时正忙着给淘宝开放平台开发一个给淘宝卖家使用的平台软件,天天抱着一堆PHP开发的书再看,老师的话被傻逼的我扔在了一边。

直到后来电动车项目要开始动手——而且经过前一段时间的折腾证明了我以后还得靠嵌入式混饭吃,恍然发现我对于它的了解几乎为零,于是我给自己制定了一个类似于建国初期五年计划的读书学习计划,向当时我认为很牛的学长和大神请教,选择了一些靠谱的书籍和教程

新概念51单片机C语言教程


新概念51单片机C语言教程是我学习单片机的第一本书,从网上找了十天学会51单片机的视频,怀着激动的心情开始了学习,看了一周发现完全没有效果,并且书里一直在讲一定要有硬件平台进行练习,要亲自动手去做,花了100多块大洋买了和视频书籍配套的学习板,开始把书中讲解的代码依次敲了一边,编译调试无错误,下载进学习板看现象,不理解的地方就反复研读,有错误就反复调试,上网找解决办法,后来证明很多错误都是不细心造成的输入错误。通过这本书和配套视频的学习,单片机总算是入了门。

新编MCS-51单片机应用设计


新编MCS-51单片机应用设计是用汇编写的一本书,可以当做工具书来用,查询配置51单片机常用的一些寄存器。通俗点说它用更易于初学者理解的语言讲解了51单片机的数据手册。曾经有人问我学单片机有没有必要学汇编,我的答案是完全没必要,C语言就够了,现在技术的发展已经有支持高级语言C++开发的编译器了,并且使用汇编开发的效率极低,可移植性差。

单片机典型模块设计实例导航

如果说新概念51单片机C语言教程是用于入门的书籍,那单片机典型模块设计实例导航可作为单片机进阶的书籍来看,书中的很多实例可以拿来直接使用于项目中。并且此书还提供源码供参考,提高自己的工程应用水平,此书值得一读。我的电动车项目中用到的一部分源码就是来源于此。

  借助这个读书学习成长计划,我出色的完成了创新项目,作品被学校买走收藏,并且被系主任邀请进入他的创新实验室,当然这是后话。

编程语言的学习

嵌入式的学习是以C语言为核心的,无论是裸机程序,驱动程序,还是嵌入式操作系统,都是使用C语言进行的开发,少数涉及到使用C++,深厚的C语言功底是学习嵌入式必不可少的。

8051系列单片机C程序设计完全手册


用于嵌入式开发的C语言跟通常使用的C语言还是有一点点区别的,但都大同小异8051系列单片机C程序设计完全手册除了能让你了解用于单片机C语言之外,还讲解了所有应用于单片机的库函数,合理的使用库函数能提升开发效率。

C和指针

C语言的精华所在就是指针,对于C语言初学者,最难得概念不仅仅是指针和数组,还有指向数组的指针和指向指针的指针,C和指针花了大量的篇幅和图示来把这些难懂的概念讲的清清楚楚。

C 陷阱与缺陷


书如其名,这本书介绍了 C 语言中常见的坑和一些稀奇古怪的编程“技巧”,不少刁钻的C语言面试题都源自这本小册子。

C专家编程


不要被标题中的“专家”吓到,这实际是一本很轻松的书籍,它既包含了大量 C 语言技术细节和编程技巧,也包含了很多有趣的编程轶事。

学习设计PCB

做嵌入式开发,硬件平台的设计是第一步,学习PCB设计没有什么好办法,看书,然后必须大量练习,画板,投板,在实践中去慢慢理解体会,初次接触做PCB是进入创新实验室,根据学长留下的视频教程算是入了门,使用的软件是Altium Desigder 09,但是视频教程讲解的是DXP2004,Altium Desigder 09是DXP2004的升级版本软件,视频作为入门还是足够用的。我会在下面放上视频的连接,可自行下载。

链接:

https://pan.baidu.com/s/1jInXl5s 密码: ui2q

 Altium Designer PCB画板速成


Altium Designer PCB画板速成是由一线的PCB工程师写的一本书,实践性极强,可作为PCB设计的进阶书籍来使用。

Altium Designer Winter 09电路设计与仿真教程


Altium Designer Winter 09电路设计与仿真教程也是一本PCB进阶书籍,入了门之后的路就只能靠自己了,常言道师傅领进门,修行在个人。多看书,多实践。考研复试时曾吹嘘自己懂PCB设计以至于读研期间导师让我承包了实验室大部分PCB设计的工作。

如何看数据手册Datasheet

学会看芯片手册是嵌入式工程师必备的技能,不管什么芯片手册,英文的还是中文的,都只是使用说明书而已。而说明书一个最显著的特点就是必须尽可能地使用通俗易懂的语句,向使用者交代清楚该产品的特点、功能以及使用方法。如果是英文手册,运用在大学里所学到的那些英文知识去分析这些手册,足矣。

Datasheet阅读步骤及要领

①先看看芯片的特性(Features)、应用场合(Applications)以及内部框图。先做一个宏观的了解,此时需要弄清楚该芯片的一些比较特殊的功能,充分利用芯片的特殊功能,对整体电路的设计,将会有极大的好处。比如AD9945可以实现相关双采样(CDS),这可以简化后续信号调理电路,并且抵抗噪声的效果还好

②重点关注芯片的参数,同时可以参考手册给出的一些参数图(如AD9945的TPC

1,TPC2等),这是我们是否采用该芯片的重要依据。像AD9945,可关注采样率(maximum clock

rate)、数据位数(AD converter)、功耗(Power

consumption)、可调增益范围(gain range)等

③选定器件后,研究芯片管脚定义、推荐的PCB layout,这些都是在硬件设计过程中必须掌握的。所有管脚中,要特别留意控制信号引脚或者特殊信号引脚,这是将来用好该芯片的前提。比如AD9945的SHP、SHD、PBLK、CLPOB等

④认真研读芯片内部寄存器,对寄存器的理解程度,直接决定了你对该芯片的掌握程度。比如AD9945就有4个寄存器:Operation、Control、Clamp

Level和VGA gain,对于这些寄存器,必须清楚它们上电后的初始值、所能实现的功能、每个bit所代表的含义这些基本情况

⑤仔细研究手册给出的时序图,这是对芯片进行正确操作的关键。单个信号的周期、上升时间、下降时间、建立时间、保持时间,以及信号之间的相位关系,所有这些都必须研究透彻。像AD9945的Figure

8 和Figure 9 就很值得花费时间去仔细研究

特别提示:

凡是芯片数据手册中的“note”,都必须仔细阅读,一般这都是能否正确使用、或能否把芯片用好的关键之所在。

归纳:

第一:先找个有中文版本手册的芯片,把中英文对照着看,熟悉英文手册的描述风格

第二:仔细看看芯片的原理框图,弄明白他的内部结构,都哪些功能电路,该芯片能实现哪些功能

第三:重点关注芯片的参数,这是你是否选用该芯片的重要参考

第四:选定器件后,看看管脚定义、推荐的PCB layout,这是在作硬件电路设计时必须掌握的

第五:认真研读芯片内部寄存器,对寄存器的理解程度,直接决定了你对该芯片的掌握程度

(未完待续………..)

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

推荐阅读更多精彩内容

  • 姓名:吴兆阳 学号:14020199009 转自韦东山 嵌牛导读:对嵌入式初学者,没有足够的视野选择一个合适投入方...
    吴兆阳阅读 2,375评论 0 4
  • 漫谈可编程芯片 - 单片机DIY制作 单片机论坛 写在前面:很多朋友都问我做的是什么东西,我说单片机,但是大部分人...
    augustar阅读 2,674评论 0 5
  • 学习stm32gpio 学习linux 程序员的三大方向 程序员的方向,一般可以分为3类:专业领域、业务领域、操作...
    王公民阅读 723评论 0 3
  • 出来混的,迟早要还的。——大栗致自己 毕业季即将到来。又是一年求职时啊。每一个求职者都对面试过程中谈薪水这件事不太...
    有杕之杜阅读 718评论 7 8
  • 和朋友唱K 最核心的事就是分享各自的歌曲 然后讨论每个歌手的境况 因为也无法安静的聊天 一直喝酒也不是办法 专注于...
    米有人先森阅读 102评论 0 0