初学者常见的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来说,这些年发展下来,都小说几十种了啊,各个系列,各个型号还有不一样的地方,也许你的问题就出在这不一样的地方。


MiniLED是什么?有怎样的发展前景
如何给一颗芯片加上指纹?
国产首款四摄手机金立S10怎么样?
智能驾驶的“ChatGPT时刻”在哪?一套通用的智驾方案,足以迎来智驾的“ChatGPT时刻”
ARM Neoverse系列服务器CPU研究分析
初学者常见的51单片机
sumif函数的使用技巧
OLCD——柔性显示器的未来
如何强调Pcb测试
Stability AI推出迄今为止更小、更高效的1.6B语言模型
治理大气环境污染,扬尘在线监测系统在行动!
SAP携手新松将为中国企业提供软件与硬件相结合的智能制造解决方案
特斯拉自动驾驶添新功能 自动识别红绿灯并提示停车位置
食用农产品合格证检测打印一体机的介绍
什么是游戏设备
2021年Mini LED背光电视规格战开启
安泰ATA-4011B高压功率放大器在超声换能器医疗超声研究中的应用
三星有望全球首发自发光的QLED电视
三星失势的主要原因在于失去了我国的中低端智能手机市场
欧盟组织呼吁对任天堂Switch Joy-Con漂移问题进行调查