0 卖盘信息
BOM询价
您现在的位置: 首页 > 电子资讯 >基础知识 > 51单片机和52单片机区别?STC89LE52与89c51的区别是什么?

51单片机和52单片机区别?STC89LE52与89c51的区别是什么?

来源:
2023-12-22
类别:基础知识
eye 48
文章创建人 拍明芯城

1、51单片机和52单片机区别

51单片机和52单片机区别:

1、种类不同:51系列单片机是指51内核,stc89c5X基本都是51内核的种类。

2、大小不同:最后一个数字表示E2prom的大小,E2prom=X*4K,c51就是4K,c52就是8k。

3、配件不同:52还多了一个定时器,所以可以说52是51(这个51是指stc89c51,不是51内核)的增强型。

单片机(Single-ChipMicrocomputer)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。

1.png

51单片机

51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技术的发展,8004单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是51系列的单片机一般不具备自编程能力。

功能

·8位CPU·4kbytes程序存储器(ROM) (52为8K)

·128bytes的数据存储器(RAM) (52有256bytes的RAM)

·32条I/O口线·111条指令,大部分为单字节指令

·21个专用寄存器

·2个可编程定时/计数器·5个中断源,2个优先级(52有6个)

·一个全双工串行通信口

·外部数据存储器寻址空间为64kB

·外部程序存储器寻址空间为64kB

·逻辑操作位寻址功能·双列直插40PinDIP封装

·单一+5V电源供电

CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;

RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;

ROM:用以存放程序、一些原始数据和表格;

I/O口:四个8位并行I/O口,既可用作输入,也可用作输出

T/C:两个定时/记数器,既可以工作在定时模式,也可以工作在记数模式;

五个中断源的中断控制系统;

一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;

片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。最佳振荡频率为6M—12M。

区别

同样的一段程序,在各个单片机厂家的硬件上运行的结果都是一样的,如ATMEL的89C51(已经停产)、89S51, PHILIPS,和WINBOND等,我们常说的已经停产的89C51指的是ATMEL公司的 AT89C51单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由Flash(程序存储器的内容至少可以改写1000次)存储器取代了原来的ROM(一次性写入),AT89C51的性能相对于8051已经算是非常优越的了。

不过在市场化方面,89C51受到了PIC单片机阵营的挑战,89C51最致命的缺陷在于不支持ISP(在线更新程序)功能,必须加上ISP功能等新功能才能更好延续MCS-51的传奇。89S51就是在这样的背景下取代89C51的,89S51已经成为了实际应用市场上新的宠儿,作为市场占有率第一的Atmel公司已经停产AT89C51,将用AT89S51代替。89S51在工艺上进行了改进,89S51采用0.35新工艺,成本降低,而且将功能提升,增加了竞争力。89SXX可以向下兼容89CXX等51系列芯片。同时,Atmel不再接受89CXX的定单,大家在市场上见到的89C51实际都是Atmel前期生产的巨量库存而以。如果市场需要,Atmel当然也可以再恢复生产AT89C51。

89S51相对于89C51增加的新功能包括:

-- 新增加很多功能,性能有了较大提升,价格基本不变,甚至比89C51更低!

-- ISP在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。是一个强大易用的功能。

-- 最高工作频率为33MHz,大家都知道89C51的极限工作频率是24M,就是说S51具有更高工作频率,从而具有了更快的计算速度。

-- 具有双工UART串行通道。

-- 内部集成看门狗计时器,不再需要像89C51那样外接看门狗计时器单元电路。

-- 双数据指示器。

-- 电源关闭标识。

-- 全新的加密算法,这使得对于89S51的盗版变为不可能,程序的保密性大大加强,这样就可以有效的保护知识产权不被侵犯。

-- 兼容性方面:向下完全兼容51全部字系列产品。比如8051、89C51等等早期MCS-51兼容产品。也就是说所有教科书、网络教程上的程序(不论教科书上采用的单片机是8051还是89C51还是MCS-51等等),在89S51上一样可以照常运行,这就是所谓的向下兼容。

比较结果:就如同INTEL的P3向P4升级一样,虽然都可以跑Windows98,不过速度是不同的。从AT89C51升级到AT89S51 ,也是同理。和S51比起来,C51就要逊色一些,实际应用市场方面技术的进步是永远向前的。

51单片机和52单片机有什么区别

一般我们称51单片机是指8031指令系统的单片机,8031指令系统的单片机型号有很多个,比如AT89C51,AT89C52,STC89C51,STC89C52,STC89C58,STC15W408,STC11F04E等等。

芯片内核(CPU)都是一样的,不同的地方是IO脚有多有少,中断有多有少,内存RAM,ROM大小不同之类的。

就好像我问你AMD CPU与速龙CPU有什么不一样,其实速龙CPU也是AMD品牌的产品之一。

你应该说具体型号如:AT89C51与AT89C52有啥不一样。你自已下载规格书对比两者内部资源多少吧

最后一个数字表示E2prom的大小,E2prom=最后一个数字*4K,c51就是4K,c52就是8k。 另外ram也不同,52多了一个定时器2,在串行通信中可以设置更高的波特率,定时器2的功能与其他两个定时器也不一样。 52是51的增强型,S52比C51,定时器多一个T2(这个东东强悍的很),RAM多128B,ROM多4K,中断多2个,多一个看门狗,在掉电、数据指针等方面还有一些改进。 S52的最高外接晶振可以达到33MHz,C51大概只有24MHz。 现在市面上,C51都差不多淘汰了,价格两者接近(可能一样),要买的话,摊主一般会推荐你买S52。

51单片机和51单片机完全一样,就是内部ROM程序存储器 大小区别 ROM:是程序存放指令代码和一些固定数值,程序运行后不可改动;RAM用于程序运行中数据的随机存取,掉电后数据消失。 51 内部ROM存储器 :4kB RAM :128 52 内部ROM存储器 :8k RAM :256 54 内部ROM存储器 :16k RAM: 512

52多个定时器,RAM 51是128,52是256。

最后一个数字表示E2prom的大小,E2prom=最后一个数字*4K,c51就是4K,c52就是8k。

另外ram也不同,52多了一个定时器2,在串行通信中可以设置更高的波特率,定时器2的功能与其他两个定时器也不一样。

52是51的增强型,S52比C51,定时器多一个T2(这个东东强悍的很),RAM多128B,ROM多4K,中断多2个,多一个看门狗,在掉电、数据指针等方面还有一些改进。

S52的最高外接晶振可以达到33MHz,C51大概只有24MHz。

现在市面上,C51都差不多淘汰了,价格两者接近(可能一样)

51单片机各种型号的区别

8031的特点

8031片内不带程序存储器ROM,使用时用户需外接程序存储器和一片逻辑电路373,外接的程序存储器多为EPROM的2764系列。用户若想对写入到EPROM中的程序进行修改,必须先用一种特殊的紫外线灯将其照射擦除,之后再可写入。写入到外接程序存储器的程序代码没有什么保密性可言。

8051的特点

8051片内有4k ROM,无须外接外存储器和373,更能体现“单片”的简练。但是你编的程序你无法烧写到其ROM中,只有将程序交芯片厂代你烧写,并是一次性的,今后你和芯片厂都不能改写其内容。

8751的特点

8751与8051基本一样,但8751片内有4k的EPROM,用户可以将自己编写的程序写入单片机的EPROM中进行现场实验与应用,EPROM的改写同样需要用紫外线灯照射一定时间擦除后再烧写。

由于上述类型的单片机应用的早,影响很大,已成为事实上的工业标准。后来很多芯片厂商以各种方式与Intel公司合作,也推出了同类型的单片机,如同一种单片机的多个版本一样,虽都在不断的改变制造工艺,但内核却一样,也就是说这类单片机指令系统完全兼容,绝大多数管脚也兼容;在使用上基本可以直接互换。人们统称这些与8051内核相同的单片机为“51系列单片机”。对于学习者来说,学了其中一种,便会所有的51系列。

AT89C51、AT89S51的特点

在众多的51系列单片机中,要算 ATMEL 公司的AT89C51、AT89S51更实用,因他不但和8051指令、管脚完全兼容,而且其片内的4K程序存储器是FLASH工艺的,这种工艺的存储器用户可以用电的方式瞬间擦除、改写,一般专为 ATMEL AT89xx 做的编程器均带有这些功能。显而易见,这种单片机对开发设备的要求很低,开发时间也大大缩短。写入单片机内的程序还可以进行加密,这又很好地保护了你的劳动成果。再着,AT89C51、AT89S51目前的售价比8031还低,市场供应也很充足。

AT89S51、52是2003年ATMEL推出的新型品种,除了完全兼容8051外,还多了ISP编程和看门狗功能。我们也专门为这种新片设计了一款 编程、学习、实验板。

AT89C2051、AT89C1051等的特点

ATMEL公司的51系列还有AT89C2051、AT89C1051等品种,这些芯片是在AT89C51的基础上将一些功能精简掉后形成的精简版。AT89C2051取掉了P0口和P2口,内部的程序FLASH存储器也小到2K,封装形式也由51的P40脚改为20脚,相应的价格也低一些,特别适合在一些智能玩具,手持仪器等程序不大的电路环境下应用;AT89C1051在2051的基础上,再次精简掉了串口功能等,程序存储器再次减小到1k,当然价格也更低。

对2051和1051来说,虽然减掉了一些资源,但他们片内都集成了一个精密比较器,别小看这小小的比较器,他为我们测量一些模拟信号提供了极大的方便,在外加几个电阻和电容的情况下,就可以测量电压、温度等我们日常需要的量。这对很多日用电器的设计是很宝贵的资源。

ATMEL的51、2051、1051均有多种封装,如AT89C(S)51有PDIP、PLCC和PQFP/TQFP等封装;2051/1051有PDIP和SOIC封装等。下图是部分封装实物。

由于51系列单片机的内核都一样,所以在51单片机教材方面目前仍然沿用Intel MCS 8051单片机的书籍。开发软件和工具也是一样,我们统称为8051开发系统、环境、等等,如我们网站介绍的汇编程序ASM51、Keil C51、MedWin 等均是针对8051内核单片机的开发软件。

单对AT89C51、AT89S51来说,在实际电路中可以直接互换8051\8751,替换8031只是第31脚有区别,8031因内部没有ROM,31脚需接地(GND),单片机在启动后就到外面程序存储器读取指令;而8051/8751/89c51因内部有程序存储器,31脚接高电平(VCC),单片机启动后直接在内部读取指令。也就是51芯片的31脚控制着单片机程序从内部读取还是从外部读取,31脚接电源,程序从内部读取,31脚接地,程序从外部读取。其他无须改动。另外,AT89C51、AT89s51替换8031后因不用外存储器,不必安装原电路的外存储器和373芯片。

89S51与89C51的区别

很多初学51单片机的网友会有这样的问题:AT89S51是什么?书上和网络教程上可都是8051,89C51等!没听说过有89S51?!

这里,初学者要澄清单片机实际使用方面的一个产品概念,MCS-51单片机是美国INTE公司于1980年推出的产品,典型产品有 8031(内部没有程序存储器,实际使用方面已经被市场淘汰)、8051(芯片采用HMOS,功耗是630mW,是89C51的5倍,实际使用方面已经被市场淘汰)和8751等通用产品,一直到现在, MCS-51内核系列兼容的单片机仍是应用的主流产品(比如目前流行的89S51、89C51等),各高校及专业学校的培训教材仍与MCS-51单片机作为代表进行理论基础学习。

有些文献甚至也将8051泛指MCS-51系列单片机,8051是早期的最典型的代表作,由于MCS-51单片机影响极深远,许多公司都推出了兼容系列单片机,就是说MCS-51内核实际上已经成为一个8位单片机的标准。

其他的公司的51单片机产品都是和MCS-51内核兼容的产品而以。同样的一段程序,在各个单片机厂家的硬件上运行的结果都是一样的,如ATMEL的89C51(已经停产)、89S51, PHILIPS(菲利浦),和WINBOND(华邦)等,我们常说的已经停产的89C51指的是ATMEL公司的 AT89C51单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由Flash(程序存储器的内容至少可以改写1000次)存储器取带了原来的ROM(一次性写入),AT89C51的性能相对于8051已经算是非常优越的了。

不过在市场化方面,89C51受到了PIC单片机阵营的挑战,89C51最致命的缺陷在于不支持ISP(在线更新程序)功能,必须加上ISP功能等新功能才能更好延续MCS-51的传奇。89S51就是在这样的背景下取代89C51的,现在,89S51目前已经成为了实际应用市场上新的宠儿,作为市场占有率第一的Atmel目前公司已经停产AT89C51,将用AT89S51代替。89S51在工艺上进行了改进,89S51采用0.35新工艺,成本降低,而且将功能提升,增加了竞争力。89SXX可以像下兼容89CXX等51系列芯片。同时,Atmel不再接受89CXX的定单,大家在市场上见到的89C51实际都是Atmel前期生产的巨量库存而以。如果市场需要,Atmel当然也可以再恢复生产AT89C51。

89S51相对于89C51增加的新功能包括:

-- 新增加很多功能,性能有了较大提升,价格基本不变,甚至比89C51更低!

-- ISP在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。是一个强大易用的功能。

-- 最高工作频率为33MHz,大家都知道89C51的极限工作频率是24M,就是说S51具有更高工作频率,从而具有了更快的计算速度。

-- 具有双工UART串行通道。

-- 内部集成看门狗计时器,不再需要像89C51那样外接看门狗计时器单元电路。

-- 双数据指示器。

-- 电源关闭标识。

-- 全新的加密算法,这使得对于89S51的**变为不可能,程序的保密性大大加强,这样就可以有效的保护知识产权不被侵犯。

-- 兼容性方面:向下完全兼容51全部字系列产品。比如8051、89C51等等早期MCS-51兼容产品。也就是说所有教科书、网络教程上的程序(不论教科书上采用的单片机是8051还是89C51还是MCS-51等等),在89S51上一样可以照常运行,这就是所谓的向下兼容。

比较结果:就如同INTEL的P3向P4升级一样,虽然都可以跑Windows98,不过速度是不同的。从AT89C51升级到AT89S51 ,也是同理。和S51比起来,C51就要逊色一些,实际应用市场方面技术的进步是永远向前的。

2、STC89LE52与89c51的区别是什么?

89LE52表示是89系列,LE表示低工作电压(3.3V)52表示是51系列单片机,且片内程序存储空间是2X4=8KB

而89C51就是普通的5V工作电压,片内程序存储空间是1X4=4KB的51单片机

STC89C51RC系列

特性:

增强型8051单片机,6时钟/机器周期和12时钟/机器周期可任意选择,指令代码完全兼容传统8051

工作电压:5.5V - 3.3V (5V单片机) / 3.8V - 2.0V (3V单片机)

工作频率范围:0~40MHz,相当于普通8051的 0~80MHz,实际工作频率可达48MHz.

用户应用程序空间:4K / 8K / 13K / 16K / 32K / 64K字节

片上集成1280字节或512字节RAM

通用I/O口(35/39个),复位后为:P1/P2/P3/P4是准双向口/弱上拉(普通8051传统I/O口);P0口是开漏输出,作为总线扩展用时,不用加上拉 电阻,作为I/O口用时,需加上拉电阻

ISP(在系统可编程)/ IAP(在应用可编程),无需专用编程器,无需专用仿真器 可通过串口(RxD/P3.0, TxD/P3.1)直接下载用户程序, 数秒即可完成一片

有EEPROM功能

看门狗

内部集成MAX810专用复位电路(HD版本和90C版本才有),外部晶体20M以下时,可省外部复位电路。

共3个16位定时器/计数器,其中定时器0还可以当成2个8位定时器使用。

外部中断4路,下降沿中断或低电平触发中断,PowerDown模式可由外部中断低电平触发中断方式唤醒。

通用异步串行口(UART),还可用定时器软件实现多个UART

工作温度范围:-40 ~ +85℃(工业级) / 0 ~ 75℃(商业级)

封装:LQFP-44,PDIP-40,PLCC-44,PQFP-44.

1.png

3、keil 软件中没有找到 STC90c516RD+怎么办啊

我来回答:

其实,STC大部分的单片机都是51内核或是52内核的。所以在选芯片的时候,只要选一款51体系的芯片就可以。我们用STC的时候,选的都是89C51的芯片。

但有一个问题要注意的就是:  在KEIL  仿真的时候,要注意区别,什么可以仿真,什么不可以仿真,这个就要求对51体系很懂。但如果你的水平足够高,可以通过分析程序和借助串口来判断,就没事。不要求仿真。、

还有一个问题就是。大部分的STC的芯片,虽是51体系,但在51基础上做了很大的改动。比如说,指令系统,虽没有增减指令个数,但是,在时序上改动特别大。有些指令1个系统时针就完成了。这在延时,和外围的接口,方面都要特别注意。一定要仔细看宏晶官网的资料。

当然,官网上提供的资料,有些示例程序,不一定就是最好的。很的程序,都写得很一般。甚至说很烂。不过,思路是对是。所以,示例程序,只是对你起一个指导做用。如果想写出好的程序,大部分的功能,最好是都要经过测试。

刚看了一下STC90c516RD+   这芯片的功能并不是很强,只是FLASH达到了61K。当然,如果用到它增强方面的功能的话。就必须会定义特殊功能寄存器。下面附带了。

二, reg51.头文件剖析

我们平时写单片机应用程序的时候,所使用的头文件大多都是用的的reg51.h或是用reg52.h。会写C51的人都会用,但对其头文件内部的定义有所了解的人确并不多。

下面对其内部做详细解释,方便读者作进一步的了解,并能运用各类型号的单片机。因为增强型号的单片机的增强功能都是通过特殊功能寄存器控制。

打开   reg52.h  头文件,会发现是由大量的 sfr ,sbit的声明组成,甚至于还有sfr16.其实这样的声明都是与单片机内部功能寄存器(特殊功能寄存器)联系起来的,下面对其做出详细解释

sfr:  声明变量

SFR 声明一个变量,它的声明与其它的C变量声明基本相同,唯一的区别,SFR在声明的同时为其指定特殊功能寄存器作为存储地址,而不同于C变量声明的整型,字符型等等由编译器自动分配存储空间。

如reg52.h头文件,第一条声明就是sfr P0    = 0x80;

此处声明一个变量P0,并指定其存储地址为特殊功能寄存器0x80;,在加入reg52.h头文件后。编写应用程序时P0就可以直接使用而无需定义,对P0的操作就是,对内部特殊功能寄存器(0x80对应用MCU的P0口)的操作,可进行读写操作。

如果将第一条声明改为sfr K0    = 0x80; 那么,如果要把单片机的P0口全部拉低,则不能写P0=0x00;而应保存后再在应用程序中写成K0=0x00;否则编译器会提示“P0为未定义标识符”

使用方法:

sfr  [variable]  =  [address]   //为变量分配一个特殊功能寄存器。

1  等号右边,只能是十进制,十六进制整型的数据常量,,不允许带操作符的表达式

经典的8051内核支持的SFR地址从0x80H~0xFF 飞利浦80C51MX系列0x180H~0x1FF

2  SFR不能声明于任何函数内部,包括main函数。只能声明于函数外。

3  用SFR声明一个变量后,不能用取地址运算符&获取其地址, 编译无法通过,编译器会提示非法操作。

4  有一点须特别注意,51内核0x80~0xff,为特殊功能寄存器地址区间,但并不是所有的地址都有定义,如果说你所用的MCU芯片上对于某个地址没有定义,那么用sfr在定义变量的时候,不要把变量的地址分配到未定义的特殊功能寄存器上,虽然编译时能通过,用KEIL仿真时貌似是没有问题,但下载到芯片里运行时,是会出问题的。比如说,向一个未定义的特殊功能寄存器执行读操作,读出来的就是一个未知的数。(读者可自行测试,先把串口通信调通,然后做一个简单的人机交互。读出一个数后,再发给计算机,用串口调试助手或是串口监控查看。这用方法在仿真的时候很有用。)所以具体那些特殊功能寄存器能够用,就要查看你使用的芯片手册。

5

若遇到增强性的单片机,只要知道其扩展的特殊功能寄存器的地址,用SFR定

就可以很方便进行编程。

sbit:  声明变量

sbit 同样是声明一个变量,和SFR 使用方法类似,但是SBIT是用来声明一个位变量,因为,在51系列的应用中,非常有必要对SFR的单个位进行存取,而通过bit 数据类型,使其具备位寻址功能。

如,在reg52.h中有如下声明

所以,对EA的操作即是对IE最高位的操作。

但如果想让 SP   DPL  DPH   PCON   TMOC  TL0  TL1  TH0  TH1  SBUF这些特殊功能寄存器具备位寻址,采用上述如IE类似的定义,是不行的,虽然修改后,在编译的时候不会出现错误,但只要用到你定义的位变量名时就会出错。原因是,只有特殊功能寄存器的地址是8的倍数(十六进制以0或8结尾)才能进行位寻址。

打开reg52.h头文件可以看到,所有用sbit声明了的特殊功能寄存器的地址均是以0或8结尾

如硬要达到上述要求,可用带参的宏定义来完成。此处不做详细说明(意义并不大)。

下面对sbit的使用做详细介绍:

随着8051的应用,非常有必要对特殊功能寄存器的单个bit位进行存取,C51编译器通过sbit 数据类型,提供了对特殊功能寄存器的位操作。

以下是sbit的三种应用形式:

一,

sbit  name = sfr-name^bit-position;

二,

sbit  name= sft-address^bit-position;

三,

sbit  name= sbit-address;

现对上述三种形式的声明做必要的说明

第一种形式sbit  name = sfr-name^bit-position;如sbit   OV= PSW^2;  当中的这个特殊功能寄存器必须在此之前已经用sfr 定义,否则编译会出错。

bit-position范围从0~7;

第二种形式  sbit  name= sft-address^bit-position如sbit  OV =0xD0^2;  与第一种形式不同之外在于,此处直接使用PSW的地址.第一种形式须先定义PSW

第三种形式.  sbit  name= sbit-address  如sbit  OV =0xD2 是直接用的OV的地址

OV的地址计算方式,是OV所在的寄存器地址加上OV的bit-position

注意:

不是所有的SFR都可位寻址。只有特殊功能寄存器的地址是8的倍数(十六进制以0或8结尾)才能进行位寻址,并且sbit声明的变量名,虽可以是任意取,但是最好不要以下划线开头,因为以下划线开头的都保留给了C51的头文件做保留字。

sfr16: 声明变量

许多8051的派生型单片机,用两个连续地址的特殊功能寄存器,来存储一个16bit的值。例如,8052就用了0xCC和0xCD来保存定时/计数寄存器2的高字节和低字节。编译器提供sfr16这种数据类型,来保存两个字节的数据。虚拟出一个16bit的寄存器。

如下:

存储方面为小端存储方式,低字节在前,高字节在后。定义时,只写低字节地址,如上,则定义T2为一个16位的特殊功能寄存器。 T2L= 0CCh, T2H= 0CDh

使用方法:

1  等号右边,只写两个特殊功能寄存器的低地址,且只能是十进制,十六进制的整型数据常量,不允许带操作符的表达式

2  SFR不能声明于任何函数内部,包括main函数。只能声明于函数外。

3  用SFR声明一个变量后,不能用取地址运算符&获取其地址, 编译无法通过,编译器会提示非法操作。

4 当你向一个sfr16写入数据的时候,KEIL CX51 编译器生成的代码,是先写高字节,后写低字节,(可通过返汇编窗口查看)在有些情况下,这并非我们所想要的操作顺序。使用时,须注意。

5 当你所要写入sfr16的数据,当是高字节先写还是低字节先写非常重要的时候,就只能用sfr 这个关键字来定义,并且任意时刻只保存一个字节,这样操作才能保证写入正确。

4、AT89C5152与STC89C5152的单片机有什么区别,

一、字节系统不同

1、AT89C51/52:是一种带4K字节FLASH存储器的低电压、高性能CMOS 8位微处理器。

2、STC89C51/52:是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K字节系统可编程Flash存储器。

二、技术不同

1、AT89C51/52:采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

2、STC89C51/52:使用经典的MCS-51内核,但是做了很多的改进使得芯片具有传统的51单片机不具备的功能。

三、特点不同

1、AT89C51/52:4k字节Flash闪速存储器,256字节片内数据存储器,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

2、STC89C51/52:8K字节程序存储空间;512字节数据存储空间;内带4K字节EEPROM存储空间。

来源:百度百科-STC89C52

来源:百度百科-AT89C51

5、stc89c51和stc89c52的区别是什么

有以下区别:

1、两者都是直流供电电压单片机,STC89C51电压为4.5V-5.5V,STC89LE52的电压为2.0V-3.8V;

2、STC89c51/52的存储器不一样,51有4K,52有8K;内部FLASH变大:AT89C51有 4K 字节的内部 FLASH PERAM,而。AT89C52的内部FLASH PERAM 增加1倍,达到8K。

3、52还多了一个定时器,所以可以说52是51(这个51是指stc89c51,不是51内核)的增强型;

4、中断源增加:AT89C52除了具备AT89C51的定时器/计数器 T0 和定时器/计数器 T1,还额外增加了一个定时器/计数器 T2。

单机片:

注意点:

1、区分集成电路芯片的引脚。我们观察单片机的表面(如右图),有一个凹进去的半圆缺口,它所对应的左边第一个脚就是这个芯片的脚1。然后按逆时针的方向数下去,依次为2,3,•••,40(如左图)。

2、电容、晶振离单片机越近越好,因为晶振的频率非常高,易受影响。

3、单片机应该安在锁紧座上,而不是直接焊在板上。

4、单片机P0口要接上10kΩ的上拉电阻。


责任编辑:David

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

相关资讯