关于《iBoard 电子学堂》的学习及进阶方式(精 转)
关于《iBoard 电子学堂》的学习及进阶方式
《iBoard 电子学堂》自发布以来,受到广大网友的热烈关注。虽然我前期设计我花了大量精力,但能得到大家的认可,我也非常欣慰。由于《iBoard 电子学堂》是从工程的角度来设计的综合学习板,所以很多同学拿到板子后,不知道从哪里入手,下面我谈谈我自己的想法。
一、切忌浮躁,做好打持久仗准备
不得不承认,现在的年轻人太浮躁了,包括我自己,整个大的环境就是这样。但是要做做好任何一件事,都是需要时间的。所谓细节决定成败。学习电子知识也一样,不花大量的精力,是不可能把每个细节都掌握的。
《iBoard 电子学堂》囊括了模拟电路、数字电路、ARM、51、FPGA、真彩液晶驱动等很多资源,甚至包含了一些起点较高的电子仪器的实现,所以需要花费很大精力也是正常的。一开始不明白不要着急,从基础做起,从点滴做起,注重长年累月的积累,逐步提高,这样才能把整个知识体系凝聚于心。第一点其实就是一句话,要坚持坚持,在坚持。
二、注重全面学习,不偏不向
目前国内电子行业,能做开发的不少,但是能从系统级统筹的却寥寥无几,很多都是你抄我的,我抄你的,最后拼价格打得头破血流,行业做坏了,大家也都没有饭吃;然而某些国外的设备,售价高几倍甚至几十倍,大家也不得不购买。这是为什么?这就是现在国内电子行业的现状。
《iBoard 电子学堂》设计初衷里面就包含了一个特征,那就是“注重全面学习,不偏不向”。从一个完整的电子系统,然后逐步的剖析出来“电源部分、微处理器及逻辑处理部分,模拟电路部分,人机界面及接口部分”等几个大的方向,然后逐个的去分析其特征和重要性,最后再把它们有机的结合到一起,这就是一个完成的产品。一个电子产品的组成也符合木桶原理,任何一个方面做不好,他都会“装不了太多的水”。然而目前大家接触的市面上的开发板、学习板,大多数都是针对一种CPU,一种结构;而大家都在津津有味的谈论这个CPU 有多强,那个CPU 外设有多丰富,CPU 在整个系统中固然重要,但是它不是全部。喜欢的部分,大家会去学习,不喜欢或者不感兴趣大部分,大家硬着头皮也要去学,跟吃饭一样,不能挑食。
三、注重软硬结合
大家可能看到很多企业的招聘单上,写的都是“急招软件工程师 xx 名”,“急招硬件工程师 xx 名”。我们千万不要被他们这种模式误导了,一个合格的嵌入式软件工程师,可能不去做硬件,但是得懂;一个合格的硬件工程师,可能不去写微处理器的程序,但是您也得懂,得有能力去评估系统的合理性。
《iBoard 电子学堂》包含了很多软件代码,仅仅 DEMO 代码,就达 1 万多行。想一下子理解了并不容易,但是学习过程中必须要积累,即使工作过程中做“硬件工程师”,也得懂软件。同样的道理,软件工程师也得懂硬件,不然设计软件的时候,将会有很大的局限性。
四、注重规范,养成良好设计习惯
规范性是初学者最容易忽略的问题,甚至很多学者、电子著作的作者也会忽略这个问题。电子工程师设计的规范性是一个非常重要的技能;具有规范性的设计,会使得工作过程中的协同变得简单,能减少电子产品设计过程的出错率。而且习惯都是从初学的时候养成的,人一旦形成一种习惯则很难改变,所以规范性非常重要。
具体的来讲,电子工程师设计规范性包含了工程管理规范性、原理图的规范性、编码的规范性、文档的规范性等等。《iBoard 电子学堂》公布的资料大家可以看出,我们具有良好的软、硬件设计及文档规范。
五、注重提问的方法
1、多思考,少怀疑
从书本到工程实践是一次跳跃,过程中产生疑问是很正常的事,遇到问题我们首先应该做的是思考,并且假设我们学习的知识是正确的,在自己不了解的情况下,不要轻易怀疑;我遇到很多初学者,程序写不出来或者功能不对,总怀疑是硬件或者说是芯片的问题,也许硬件或者芯片存在某种问题,但是如果一个初学者都能发现,那么这个芯片就不要在市场上流通了。
2、做好提问的准备
技术是一层窗户纸,很多东西都是一点即破,结果别人是可以告诉你,但是过程必须自己亲身体会。很多朋友问的问题,让别人无法回答,例如有人就去问,ARM怎么去学?这样的问题实在难回答。在我心中,衡量一个问题的提问是否恰当,就看你的提问和对方的回答字数的对比,提问的一方一定要让别人好回答,易回答,拿出自己的诚意。大家遇到的时候,一定要竭尽所能地自己去解决,包括自己去查资料,去搜索引擎搜索,去论坛查看是否有类似的问题等等。实在想不通,自己把窗户纸准备好,拿出来让老师或者网友帮你捅一下,这样不但加深自己的记忆,也不会太占用别人的时间。
3、最好通过论坛提问
一个人索取的时候,也能够对别人做贡献,岂不是两全其美的事?我们在论坛发帖,不但可以让更多的人理解所问的问题,更能够为自己一步步的成长画出一个轨迹,而且不管对提问者或者回答问题者,都预留充分的思考时间。相反,通过即时消息的形式提问其实是一种转瞬即逝的过程,提问者记忆不深刻,回答者也只能一对一的浪费精力,还不能更好地分享,所以除非特殊原因,请大家多去论坛提问。
六、《iBoard 电子学堂》并不是完美的
说实话,我只能保证尽量的完美,但是它的确不完美。通过 999 的价格,我们不但实现了 51 / FPGA / ARM / CPLD / 真彩液晶与 GUI的学习功能,更是实现了许多很多实用化的仪器。但是为了减低大家的成本压力,我们不能拿《iBoard 电子学堂》与商业化的仪器相比。那些仪器设备的价格大家也略有所闻,少则几千,多则几万甚至几十万。
更重要的是,我通过开源的方式,让大家从头到尾了解到设计一个设备的过程,这是任何商业化的仪器不能比拟的,他们对知识产权的保护力度可谓是里三层外三层,有的甚至打磨芯片。所以《iBoard 电子学堂》并不完美,但是至少很实用。
我的店铺:ccjt.taobao.com
关于《iBoard 电子学堂》的学习及进阶方式(精 转)的更多相关文章
- 【iBoard电子学堂】【iCore双核心板】资料光盘A盘更新,版本号为A6
_____________________________________ 深入交流QQ群: A: 204255896(1000人超级群,可加入) B: 165201798(500人超级群,满员) C ...
- 【iBoard电子学堂开发板例程】【12个 stm32 例程发布】
_____________________________________ 深入交流QQ群: A: 204255896(1000人超级群,可加入) B: 165201798(500人超级群,满员) C ...
- Android学习笔记进阶之在图片上涂鸦(能清屏)
Android学习笔记进阶之在图片上涂鸦(能清屏) 2013-11-19 10:52 117人阅读 评论(0) 收藏 举报 HandWritingActivity.java package xiaos ...
- PHP学习笔记 - 进阶篇(11)
PHP学习笔记 - 进阶篇(11) 数据库操作 PHP支持哪些数据库 PHP通过安装相应的扩展来实现数据库操作,现代应用程序的设计离不开数据库的应用,当前主流的数据库有MsSQL,MySQL,Syba ...
- PHP学习笔记 - 进阶篇(10)
PHP学习笔记 - 进阶篇(10) 异常处理 抛出一个异常 从PHP5开始,PHP支持异常处理,异常处理是面向对象一个重要特性,PHP代码中的异常通过throw抛出,异常抛出之后,后面的代码将不会再被 ...
- PHP学习笔记 - 进阶篇(9)
PHP学习笔记 - 进阶篇(9) 图形图像操作 GD库简介 GD指的是Graphic Device,PHP的GD库是用来处理图形的扩展库,通过GD库提供的一系列API,可以对图像进行处理或者直接生成新 ...
- PHP学习笔记 - 进阶篇(8)
PHP学习笔记 - 进阶篇(8) 日期与时间 取得当前的Unix时间戳 UNIX 时间戳(英文叫做:timestamp)是 PHP 中关于时间与日期的一个很重要的概念,它表示从 1970年1月1日 0 ...
- PHP学习笔记 - 进阶篇(7)
PHP学习笔记 - 进阶篇(7) 文件操作 读取文件内容 PHP具有丰富的文件操作函数,最简单的读取文件的函数为file_get_contents,可以将整个文件全部读取到一个字符串中. $conte ...
- PHP学习笔记 - 进阶篇(6)
PHP学习笔记- 进阶篇(6) 会话控制(session与cookie) 当前的Cookie为: cookie简介 Cookie是存储在客户端浏览器中的数据,我们通过Cookie来跟踪与存储用户数据. ...
随机推荐
- nyoj 199-无线网络覆盖 (ceil())
199-无线网络覆盖 内存限制:64MB 时间限制:3000ms 特判: No 通过数:4 提交数:13 难度:3 题目描述: 我们的乐乐同学对于网络可算得上是情有独钟,他有一个计划,那就是用无线网覆 ...
- 【algo&ds】8.最小生成树
1.最小生成树介绍 什么是最小生成树? 最小生成树(Minimum spanning tree,MST)是在一个给定的无向图G(V,E)中求一棵树T,使得这棵树拥有图G中的所有顶点,且所有边都是来自图 ...
- 【集合系列】- 深入浅出的分析IdentityHashMap
一.摘要 在集合系列的第一章,咱们了解到,Map 的实现类有 HashMap.LinkedHashMap.TreeMap.IdentityHashMap.WeakHashMap.Hashtable.P ...
- jdbc-mysql测试例子和源码详解
目录 简介 什么是JDBC 几个重要的类 使用中的注意事项 使用例子 需求 工程环境 主要步骤 创建表 创建项目 引入依赖 编写jdbc.prperties 获得Connection对象 使用Conn ...
- 京东物流出问题了?褥了30块羊毛 & 浅析系统架构
本人亲身经历,但后续的流程分析都是个人猜测的,毕竟没有实际做过这块的业务. 订单物流阻塞经过 火热的双11刚刚退去,截止今日,我在京东购买的矿泉水终于到货啦,下单两箱还只收到了一箱 :( ,从下单到收 ...
- Android中常见的设计模式
前言: Android开发的设计模式,基本设计思想源于java的设计模式,java的设计模式有N多种,据不完全统计,迄今为止,网络出现最频繁的大概有23种.Java只是一门开发语言,学会并掌握这门语言 ...
- Base系列编码浅析【base16 base32 base64 base85 base36 base 58 base91 base 92 base62】
Base系列编码浅析 [base16 base32 base64 base85 base36 base 58 base91 base 92 base62] base编码 ...
- day 36 初始前端 html语言
参考博客https://www.cnblogs.com/majj/p/9056951.html进行学习 html标签 特征: .空白折叠现象 .对空格和换行不敏感 .标签要严格封闭 p标签的嵌套 多注 ...
- c# 基于DataTable的Compute方法的扩展
DataTable.Compute(String, String) 方法 定义 命名空间:System.Data 程序集:System.Data.dll, netstandard.dll, Syste ...
- 【Android - 控件】之MD - NavigationView的使用
NavigationView是Android 5.0新特性——Material Design中的一个布局控件,可以结合DrawerLayout使用,让侧滑菜单变得更加美观(可以添加头部布局). Nav ...