查看完全版本 : 先学51,还是PIC好?
我也说不准,我现在在学51,但是觉得PIC有很多优点,不知道要是我先学PIC,对51有什么感觉
51,世界上大的半导体厂商都有生产或生产它的增强品种,不会只有一两家厂生产,老的51在速度和品种上不如PIC,但现在已不一样了,品种非常齐全。
从价格和资料上讲还是先学51好,也容易学会,PIC除了速度和功耗好之外,也没有什么好的地方了,并且价格也高,编程器也贵。如果你要求速度高的话也可以学AVR的单片机,从性能价格比上来讲它都比同一级的PIC要好很多。
实际上我用不着多话了。确实应先学51,51可说是单片机领域的“微软”,PIC或其它再好的芯片也只能叫“苹果”。不知各位意见如何。
我推荐一个网站大家去看一下http://www.manley.com.cn
随便说说了:
我觉得51比较好。因为51是比较标准的复杂指令单片机,通过学习51可以比较全面掌握单片机和通用CPU知识,达到触类旁通的目的(Z80也不错,可惜有些过时了,开发工具也很落后)。而PIC是一种精简指令系统,虽然机器码好懂,但是局限性较大,就是说会过分偏重理解MicroChip的设计思想。其实全面掌握单片机技术较用精某一种芯片来得划算(不要被某一个公司捆住思想)。
类似PIC的芯片很多,比如AVR、MSP430、Z8等,掌握51的结构和指令系统之后理解这些单片机的原理就很容易。而反过来也许就要各个击破。
还有一些理由:
就芯片而言:51单片机有非常低廉的价格和数不胜数的衍生芯片系列,这些产品从低速(1MPS)到高速(30MPS)几乎涵盖整个自控领域。新芯片价格从5元到数百元都有,当然还有大量拆机片供应,很方便自学和自助实验。
就开发工具而言:51有完全免费的C语言编译器和实时任务系统,当然还有随手可得的大量评估版(包括D版)世界顶级开发工具,比如:KEIL / Tasking / HITech / Resonance / Franklin(Resonance前身)。当然在非盈利前提下领略这些大气的开发环境无疑对培养系统化的思维方式和细致入微的洞察能力有较大的帮助。
就调试工具而言:51系列的仿真器是最便宜的,也是种类最多的。
就PIC系列而言:
单一芯片的用途比较有限,受机器自身容量限制较大,即通用性稍差。这也是MicroChip的产品线非常长的原因。当然MicroChip的这一思想对商业运作十分有利,在成本/性能和量产方面与用户的结合点很好。
还有PIC的指令系统有一定的缺陷,常用户最有感觉,使人不得不陷入MicroChip的芯片选型迷宫,经常在小问题上犹豫不决。
在国内:PIC的价格也是阻碍其大量应用的致命原因,供货种类不够充足。
所以我觉得:
先学习通用单片机,就是51系列,然后结合具体应用需求选择学习其他常用单片机。做到灵活思考,灵活选择。比如当需要少量开关量资源时使用89C2051,需要简单A/D资源时选择PIC16F873,需要大量I/O时考虑89C52;需要低速时尽量考虑51系列,需要中速时考虑PIC系列,需要高速时考虑90S AVR系列,需要甚高速时返回来考虑51兼容的SOC系列。而需要低功耗时考虑MSP430系列。
顺便说一句,大家常说的PIC16F74/84完全可以用89C2051替代,因为一般的设计方案中都留有速度余量,且这几种芯片都没有A/D,其基本结构类似。而为了使用PIC就不得不使用纯汇编(编译器难寻),而用51系列就可以从容使用C代码,还有RTOS的支持。
最后建议一下:就速度而言,PIC不是最好的,AVR系列做到了类单周期指令和流水线操作,在同一功耗下AVR比PIC快得多,而价格便宜得多(当然比低档51系列稍贵),AVR是一种值得注意的新机型。
尽管做项目时应尽量使用C,但是为了用好C就必须先学习汇编,学完51系列规整的汇编体系后再领略各个小厂家自己的汇编环境真有游刃有余的感觉。我不得不佩服Intel在CPU技术方面的学识和规划能力,不愧是计算机界的巨人。
罗嗦半天不知所云,最后给个不负责任的比较吧:
芯片价格:51/AVR/PIC/MSP430
机器速度:51SOC/AVR/PIC/51 (MSP430是16位机,不便比较)
开发工具学习容易度:51/PIC/AVR/MSP430
免费编译器:51和AVR
高档开发器易寻找程度:51/AVR/PIC/MSP430
在线仿真容易度:MSP430/51/AVR/PIC
相信学习顺序已经出来了。有错误请指出,俺是信口胡言。
73!
:D
ecs-worker
2008-06-14, 22:11
好资料
还得看你要学来做什么用,将来要用到哪个就学哪个
还不知道要用什么就学51
szcharle
2008-06-15, 14:53
偶的看法是 比51和PIC强的 现在看 有很多 当然 51也在不断“变种”
偶不敢推荐了 本人最近打算学学STM32 Cortex M3架构的ARM 学这个总有一个感觉 或者一个新手 脑袋还空白的时候 干脆从新款的开始算了?
光看看那个看门狗 就知道啥叫“独立”看门狗了!
十几二十年前的技术 确实和今天的技术没法比
但是貌似国内资源最多的 大家最懂的 应该是51了
至于PIC EPE杂志上介绍的DIY 10个有9.9个是用PIC的
antforum
2008-08-20, 10:04
随便说说了:
我觉得51比较好。因为51是比较标准的复杂指令单片机,通过学习51可以比较全面掌握单片机和通用CPU知识,达到触类旁通的目的(Z80也不错,可惜有些过时了,开发工具也很落后)。而PIC是一种精简指令系统,虽然机器码好懂,但是局限性较大,就是说会过分偏重理解MicroChip的设计思想。其实全面掌握单片机技术较用精某一种芯片来得划算(不要被某一个公司捆住思想)。
类似PIC的芯片很多,比如AVR、MSP430、Z8等,掌握51的结构和指令系统之后理解这些单片机的原理就很容易。而反过来也许就要各个击破。
还有一些理由:
就芯片而言:51单片机有非常低廉的价格和数不胜数的衍生芯片系列,这些产品从低速(1MPS)到高速(30MPS)几乎涵盖整个自控领域。新芯片价格从5元到数百元都有,当然还有大量拆机片供应,很方便自学和自助实验。
就开发工具而言:51有完全免费的C语言编译器和实时任务系统,当然还有随手可得的大量评估版(包括D版)世界顶级开发工具,比如:KEIL / Tasking / HITech / Resonance / Franklin(Resonance前身)。当然在非盈利前提下领略这些大气的开发环境无疑对培养系统化的思维方式和细致入微的洞察能力有较大的帮助。
就调试工具而言:51系列的仿真器是最便宜的,也是种类最多的。
就PIC系列而言:
单一芯片的用途比较有限,受机器自身容量限制较大,即通用性稍差。这也是MicroChip的产品线非常长的原因。当然MicroChip的这一思想对商业运作十分有利,在成本/性能和量产方面与用户的结合点很好。
还有PIC的指令系统有一定的缺陷,常用户最有感觉,使人不得不陷入MicroChip的芯片选型迷宫,经常在小问题上犹豫不决。
在国内:PIC的价格也是阻碍其大量应用的致命原因,供货种类不够充足。
所以我觉得:
先学习通用单片机,就是51系列,然后结合具体应用需求选择学习其他常用单片机。做到灵活思考,灵活选择。比如当需要少量开关量资源时使用89C2051,需要简单A/D资源时选择PIC16F873,需要大量I/O时考虑89C52;需要低速时尽量考虑51系列,需要中速时考虑PIC系列,需要高速时考虑90S AVR系列,需要甚高速时返回来考虑51兼容的SOC系列。而需要低功耗时考虑MSP430系列。
顺便说一句,大家常说的PIC16F74/84完全可以用89C2051替代,因为一般的设计方案中都留有速度余量,且这几种芯片都没有A/D,其基本结构类似。而为了使用PIC就不得不使用纯汇编(编译器难寻),而用51系列就可以从容使用C代码,还有RTOS的支持。
最后建议一下:就速度而言,PIC不是最好的,AVR系列做到了类单周期指令和流水线操作,在同一功耗下AVR比PIC快得多,而价格便宜得多(当然比低档51系列稍贵),AVR是一种值得注意的新机型。
尽管做项目时应尽量使用C,但是为了用好C就必须先学习汇编,学完51系列规整的汇编体系后再领略各个小厂家自己的汇编环境真有游刃有余的感觉。我不得不佩服Intel在CPU技术方面的学识和规划能力,不愧是计算机界的巨人。
罗嗦半天不知所云,最后给个不负责任的比较吧:
芯片价格:51/AVR/PIC/MSP430
机器速度:51SOC/AVR/PIC/51 (MSP430是16位机,不便比较)
开发工具学习容易度:51/PIC/AVR/MSP430
免费编译器:51和AVR
高档开发器易寻找程度:51/AVR/PIC/MSP430
在线仿真容易度:MSP430/51/AVR/PIC
相信学习顺序已经出来了。有错误请指出,俺是信口胡言。
73!
:D
讲解的很好! 我用过 C51,pic, avr 和 高速的soc51, 确实是这么个情况。
antforum
2008-08-20, 10:05
偶的看法是 比51和PIC强的 现在看 有很多 当然 51也在不断“变种”
偶不敢推荐了 本人最近打算学学STM32 Cortex M3架构的ARM 学这个总有一个感觉 或者一个新手 脑袋还空白的时候 干脆从新款的开始算了?
光看看那个看门狗 就知道啥叫“独立”看门狗了!
十几二十年前的技术 确实和今天的技术没法比
但是貌似国内资源最多的 大家最懂的 应该是51了
至于PIC EPE杂志上介绍的DIY 10个有9.9个是用PIC的
因为是PIC EPE杂志 ,当然就只会说用pic的多了。
51入手,avr好处是编程方便下载器自己做成本极低,s51也可以。最近想学学pic,发现片子贵,还要用编程器,c编译器也没有免费的。不方便。
pic的c编译器连开源的都出来了。怎么说没免费的捏?倒是51,一直得用keilC~
直接AVR,51实在太老了,而且AVR难度和51差不多,为何不用AVR?
偶卖瓜的,这是5年前的贴子啊!羞死了!! :139: :139: :120: :120:
现在也是AVR用的多了,而且现在的AVR产品线复杂得要命,比PIC有过之无不及, :121: :121: 。
STC也不错,已经有不少人在跟进了我看。
mcuspirit
2008-08-24, 08:56
中国人喜欢51,美国人喜欢PIC
有同感,找制作资料,搜到的基本都是PIC的,老外通常连源程序、电路图都公开。
到北航出版社看看,什么书最多就知道形势了。
呵呵 上面说得好, 我也是直接学习AVR.....这个AVR很强大!!!!!
ecs-worker
2008-10-09, 20:29
兰州这里只有51系列的,AVR的只能邮购了.没有人卖!我用AT89S52做了一个流水灯之后,去图书馆借书,结果看到AVR才是应该学习应用的.只可惜这里没有!
楼主一个贴子以后再没有声音了,5年过去了楼主学有所成了吧,能介绍一下自己在单片机学习中的体会吗.
我认为51单片机资料多,器材方便,是初学的首选.掌握了一种其它就好学了.
vBulletin Version 3.0.7 Translated by
NewVBB.com™ 2008.
Translated and Hacked by:
Ztbbs