初学者常见的51单片机

描述

说明:今天我们说的51单片机,主要针对初学者常见的AT和STC,大神们路过不要喷。

正文

对于初学单片机的小伙伴,绝大部分都是以51单片机开始的,刚接触单片机时,总认为51单片机就是一块芯片,大大的,40个引脚(那会肯定还不知道DIP40,也不知道还有个词叫做“封装”)。总觉得所有的单片机指的就是它了。

是的,就是它,上图左边是实物单片机图片,右边为话电路图时候的引脚定义,很多小伙伴大学的单片机课程学完了还是这样的认识。是的,很多大学现在还在用着这芯片教学,这不怪谁,因为实验设备是很久很久之前就生产的了。其实,殊不知单片机这名字可大了,今天小代就细细说一下初学者常见的51单片机。

1. AT89C51单片机

就是上面图片中这家伙,是ATMEL公司生产的8位单片机。ATMEL公司,1984年成立的一家美国公司。就在刚刚,小代想查一下AT89C51单片机是哪年发布的,但是没找到。知网搜了一下,也只能检索到2001年,但是在2001年,知网上就有很多很多的用AT89C51单片机做的设计发表。可想,那会这芯片就已经是风靡全球了,2001年是什么概念,20年前,在做的有多少小伙伴那会还只是个细胞。芯片行业,现在的速度是6个月迭代一次,20年前少说也是1-2年迭代一次吧,这样一想,这芯片真的算是古董级别的东西了,手上有的小伙伴,不要再用了,好好收藏起来吧,2007年AT公司已经停产这芯片了。

AT89C51单片机的命名规则

前缀 由字母“AT”组成,表示该器件是ATMEL公司的产品。

型号 由“89CXXXX”或“89LVXXXX”或“89SXXXX”等表示。 

89CXXXX”中,9是表示内部含 Flash存储器,C表示为 CMOS产品。 

89LVXXXX”中,LV表示低压产品。 

89SXXXX”中,S表示含有串行下载 Flash存储器。 

XXXX”表示器件型号数,如51、1051、8252等。

后缀中的第一个参数 X用于表示速度,它的意义如下: 

X=12,表示速度为12 MHz。                

X=20,表示速度为20 MHz。 

X=16,表示速度为16 MHz。                

X=24,表示速度为24 MHz。 

后缀中的第二个参数 X用于表示封装,它的意义如下: 

X=D,表示陶瓷封装。                      

X=Q,表示 PQFP封装。

X=J,表示 PLCC封装。                     

X=A,表示 TQFP封装。 

X=P,表示塑料双列直插 DIP封装。   

X=W,表示裸芯片。 

X=S,表示 SOIC封装。 

后缀中第三个参数 X用于表示温度范围,它的意义如下: 

X=C,表示商业用产品,温度范围为0~ 70℃。 

X=I,表示工业用产品,温度范围为-40~ 85℃。 

X=A,表示汽车用产品,温度范围为-40~ 125℃。 

X=M,表示军用产品,温度范围为-55~150℃。 

例如:有一个单片机型号为“AT89C51—12PI”,则表示意义为该单片机是 ATMEL公司生产的Flash单片机,内部是 CMOS结构,速度为12 MHz,封装为塑封 DIP,是工业用产品。

2.STC单片机

国产单片机,其内核还是外国人的8位单片机的内核,只是国内公司重新设计外设封装成的。STC公司(南通国芯微电子有限公司),是的,就是官网很丑很丑的那家了。人家要说,我们做技术的人就是这样不拘小节。我们不同是来吐槽的,我们是做技术的。现在STC已经占有了全球80%以上的51单片机的市场份额。

STC89C51单片机

图片来自STC89数据手册

就是它,看着就高级,是吧,常见的芯片和AT的没什么区别,还是黑黑的DIP40封装的一长条的芯片。STC89C51单片机应该是是STC比较早的产品,生产时间应该是在2004年左右,在资源上和AT没有太多的区别,而却还做到了pin-pin兼容AT芯片,但是在下载程序方式和程序下载次数上有了质的飞跃,AT89C51或者S51芯片都需要专门的烧写器才能下载程序,特别是C系列芯片,烧写次数只有1000次,厉害一点的小伙伴一个月就给写废了一片了,而STC89C51可以实现10万次的烧写程序,并且可以直接用串口就能下载程序,小代想啊,这也它能快速在高校中流行起来的主要原因,毕竟学习成本一下子降了很多很多。

命名规则

引脚

(图片来自STC89数据手册)

从上图中可以看出,其实就STC89这一系列就有很多芯片,每个芯片又对应4种封装形式,细想,这一系列的芯片每个型号,每种封装的整一片来,那也还是壮观啊。

在后续几年中,STC就全靠他了,直到了2010年左右,又推出了新的型号的单片机STC10/11芯片。

这里的10/11,其实就是推出的年份,后面几年的芯片也是这样的规则。

引脚

(图片来自STC11数据手册)

这一代的芯片和89系列没有太多的改进,只是增加了更低的工作电压,可以低到2.1V,增加了通用IO口的四种工作模式也是从这一代芯片出现的。紧跟着的2012年,有了大动作,可以说是51单片机的飞跃。

引脚

(图片来自STC12数据手册)

2012年生产的STC12单片机在运行速度提升,程序存储空间提升,工作电压放宽这些都不在话下了,从这一代芯片起,STC的单片机集成了内部的ADC转换,8路8位分辨率的ADC,还具有了PWM功能,拥有了第二个串口,4个16位的定时器。这些功能都是香的一逼啊,以至于小代在当年都自己做过好几块的开发板。

时隔3年,到了2015年,STC又推出了STC15系列芯片,在STC12的基础上再一次提升性能,ADC提升到了8路10位,8路PWM输出,4路串口,还可多引脚定义。也是从这一代芯片开始,采用了全新的引脚布局,和之前的所有STC芯片都不在是pin-pin兼容了,这一代芯片内部高可靠复位电路和高精度时钟真正的可用了,最小系统真正的就以芯片,供电就能运行,可用直接省去外部复位电路和晶振电路,再一次刷新了51单片机的认识。

引脚

(图片来自STC15数据手册)

2年后的2017年,STC再次推出STC8A/8H系列芯片。从命名上就可以看出,不再是之前的年份命名,采用了单片机的位数来明年,也是一个信号,STC想做16位或者32位的芯片了。

图片来自STC官网

小代找了一下STC官方网站的更新记录,在2020年11月24日的更新中,网站更新了STC-ISP下载软件版本,其中就提到新增了STC16F40K128系列芯片,说明是16位单片机。就在2020年的智能车赛上,已经看到有高校同学已经用STC16的芯片做的智能车赛了。

就按这样的节奏,后续STC出32位的单片机不是没有可能啊,我们就静等STC的32吧。

写在最后

今天小代写这个的目的其实很简单的,就是给初学单片机的小白介绍一下,不要说到单片机就理所当然的认为就只有一个芯片,一个型号。

好多时候小伙伴在群里问问题,有需要的时候小代会问一下用的什么芯片,很多小白回我一句“51单片机啊”,看完今天的介绍,不要再这样说了,51有很多很多具体型号,就STC来说,这些年发展下来,都小说几十种了啊,各个系列,各个型号还有不一样的地方,也许你的问题就出在这不一样的地方。

责任编辑:lq

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分