单片机的选择
PIC、MSP430都比8051强大。再加上以8051系列单片机入门的图书很多,如以AT89C51、STC89C52之类的单片机或开发板入门的书几乎占了一大半的书架。所以大部分爱好者选择8051来入门,同时也自然而然的意识到学完最简单的8051之后还要学习更“高级”的AVR、ARM、PIC、MSP430之类的单片机。认为只有学会了这些才是一个提升的过程,会用AVR和ARM,就成为了单片机高手了。
这种观念的形成主要是没有得到正确的引导,因为大部分入门教程都是没有作者主见的纯技术知识的堆积,读者从书中得不到学习方式、方法的引导,所以会产生一大堆错误的观念。当错误的观念形成的多了,久而久之在更多的人群中,错误的观念慢慢好像变得“正确”了。而且爱好者的圈子里一般都是仅讨论纯技术,而不去交流行业和相关的非技术内容,使的更多的人不断进入观念错误的循环。而且很难把他们转变过来。就好像来过我网站的人都说我的制作有创意,其实不是我的能力强,而是大家都是在研究技术上的实现,而不是考虑如何创新,就算想创新了,也没有花上足够的时间去构想、实验。这与图书的作者只想着把知识点放到书里,却没有研究怎么有主见的引导读者的正确观念的道理是一样的。
以上就是我所分析的原因,如果您认同我的说法则请继续阅读下面我所讲的所谓的正确观念。如果您不认同我以上所说,那就请停止阅读,不要浪费您的时间。
在说正确的观念之前,我们来看一看单片机真正的用途是什么。虽然电子爱好者可以用它来制作各种好玩的电子制作,但再怎么制作每个人也用不上100片单片机,仅靠电子制作是无法支撑单片机市场的。那么最大的需求者是谁呢?说白了,他们就是成批量生产电子产品的厂家。例如他们有用单片机来制作每个公司门口都会用到的门禁系统、考勤机。仅中国大大小小的公司无计其数,需要的单片机数量自然是如繁星一般了。还有消费类电子产品,工业控制设备、安防设备、小家电、公办自动化产品,还有大大小小特殊需要的定制产品。这些需求,就是单片机最主要的市场了。如此之大的市场需求,生产单片机的厂商自然盯大的眼睛想着怎么多卖多赚钱了。单片机厂商的竞争和我们日常所见的各品牌手机、菜市场中各摊位的竞争没有什么区别。
怎么才能占据更多的市场份额呢?那就要看单片机产品的开发者关注什么东西了。谁是单片机产品的开发者?就是那些门禁系统、考勤机设计公司的老板和工程师们。如果你是设计公司的老板兼工程师,你会需要怎么样的单片机?首先要能满足我制作门禁系统、考勤机的功能需要,然后是价格便宜,性能稳定,容易开发,采购方便,有同类替代产品。大家注意,在以上的需求中没有要求功能强大,因为这并不重要。如果我只需要4个I/O接口,而单片机却有着40个I/O接口,这对产品的价值提升并没有什么意义,而且通常功能越多,价格也越高。如果一款单片机非常便宜,却只有2个I/O接口也是不行的,因为它再便宜也不能满足我们需要4个I/O接口的目的。所以单片机的选择是适用就好,而不是走价格和性能的极端。
那么8051、AVR、ARM、PIC等单片机就是在这种市场环境中出现的,换句话说,这些单片机就是为了满足这种市场需求而被生产出来的。从这个角度上看,8051、AVR、ARM就没有什么高、低、贵、贱之分了,大家都是为了满足这个不同电子产品应用需要的大市场。并没有说8051就是下贱的,ARM就是高级的,大家都是靠销量说话的。用8051去开发多媒体产品和用ARM去开发简单的流水灯都是非常白痴的行为了。不过,虽然我们除去了高贵与低贱的歧视,可是又不得不承认,不同的单片机的开发难度是不同的。有一些是系统复杂所带来的难度,还有一些是因为单片机开发相关软硬件功能的落后再导致的。还有一小部分是学习者本身智商程度所产生的难度。不管怎么样,任何的开发难度都会变成这款单片机推广销售的不利因素,谁也不希望学习困难的东西。当然,还有一些人就是愿意学习难学的东西,非要学难学的单片机,费大力气研究难懂的数据手册。这种情况多出现在不是工程开发人员的单片机爱好者身上,因为他们不用承担实际的项目,不用考虑学习的时间、开发风险和项目开发中的各种困难与压力。所以他们并不认为学习某款单片机的困难是单片机生产厂商做的工作不足,而是把原因归到自己身上,认为自己不如别人聪明,非要把这款单片机学会才能证明自己的智商。
我所说的,正是许多人要学习AVR的迷局。除了出于天真的想法去学习难学的单片机,还有一个原因是没有真正了解这些单片机的性能、应用以及它
单片机开发工具仿真调 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)