AT89S5X系列 与 STC89C5X系列单片机的差别

我刚刚开始接触单片机,但是单片机的种类繁多,我最后选择了一块
STC89C52RC作入门,但是我们的课本上讲的是AT89S5X的开发方法

我想问一下,它们二者的区别很大吗,特别是在管脚,内部电路,编程指令上的差别

各位大虾能跟我详细解释一下吗,回答满意者追加50分,万分谢谢
二楼的三楼的四楼的兄弟,你们说指令系统一样,那是否就意味着一个程序比如在装有AT89S51的开发板里能成功“作用”,这里的“作用”是指有效,比如一个数码管显示程序能实现正常显示,那也能在STC89C52RC里面正常显示呢,比如我有下面的程序:
#include<REG52.H> //只在这里我做了改动,原来是AT89S51.h

void delay()
{
unsigned int i,j;
for(i=0;i<255;i++)
for(j=0;j<255;j++);
}

#define uchar unsigned char
char code tab[]={0x2a,0x1c,0xbc,0xbc,0x88,0x7f};
void main()
{
uchar i,a=5;
SCON=0;
for(;;)
{
for(i=0;i<6;i++)
{
SBUF=tab[a];
a--;
while(!TI);
TI=0;
}
delay();
a=5;
}
}
除了所包含的头文件做了改动外,其它都是照抄的,在keil c里能够正常编译运行,并且生成一个HEX文件,但是就是不能正常显示,是什么原因呢??

差别不大,一般可以把AT89S5X系列当成基本部件,其他的51CPU当成扩展,STC89C5X包括AT89S5X的全部,且多出一些特殊应用需求的部分.多了写部件内部电路当然不一样,不过你和内部电路不打交道,只需要关心他们的引脚定义和电气特性,编程指令上也是兼容的,某些会多出写增强指令,在不使用这些指令时可以说他们就是一样的.查芯片资料到这里查,非常全.
http://www.alldatasheet.com

若是c51代码就更不必关心指令集了,甚至你不用改动#include<REG52.H>,在不用特殊指令,无非是存储空间大小的差异,在如上简短代码中存储空间大小差异也忽略不计了,那只是让你无法直接用别名访问一些寄存器罢了.

数码管显示和具体硬件设计相关,COPY不一定和你的硬件设计的相同,数码管电器特性连接方式影响数码管的显示编码(共阴共阳,段码线连接方式),中间的电路决定了你编码控制的方式,有像现在这样通过串口输出,外部移位锁存控制显示多个数码管.也可以直接控制段码输出,片选信号的.这个和硬件相关很大,不是任意程序都能用的.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-09-11
找到一些。下面是关于STC89C52RC的一些基本参数:最高工作频率80MHz(@5V),8KB FLASH,512B SRAM,低EMI,2KB EEPROM,支持ISP和IAP,对于PLCC44封装的还有P4口。

和AT89S5X相比,STC89C52RC的P0口和P1口多出了第二功能;但常规的引脚定义,内部结构和AT89S8252系列大同小异,指令系统和普通的MCS51指令系统相同,因此不必考虑开发环境的问题。

在STC的中文网站上能找到一些资料,下面的地址就是一个,但写的相当潦草,将就着看吧……还好是中文的。
http://www.mcu-memory.com/datasheet/stc/STC-AD-PDF/STC89C51RC-RD+_GUIDE-CHINESE.pdf

补充回答:STC89C52RC的英文原版资料几乎找不到了,我也无法在确认芯片的某些新特性。但在分析中文资料时,发现文中提到STC单片机中已经固化了ISP引导程序,如果使用通用编程器去写入用户程序,造成的结果就是损坏ISP引导程序,以后在使用ISP编程时就会出大问题!并且对STC单片机进行ISP编程,还需要STC自行设计的ISP计算机软件配合才能正确的把程序写入单片机——我想您的程序写入方式值得商榷,是不是使用编程器烧录程序的?STC建议不要使用编程器对STC单片机编程!

当然,你把烧录好的STC单片机放到你的AT89S51的开发板上试试,看运行是否正常;另外,STC单片机的SFR区多出了一些新的寄存器,一些与原有的寄存器的一些位也有新的定义,所以在定义头文件时就不要照搬了,具体情况具体分析吧!我先说这么多。
第2个回答  2007-09-17
有不同的地方就是管脚不一样.其它的都差不多.
不过你要写程序的话.就得按数据手册中提到的参数来写.和你学的一样的.都是通用的..只是你定义管脚的时候不能按原来的.要按数据手册上面写的..
第3个回答  2007-09-11
刚开始学,不要管那么多,都是51系列的,指令肯定是一样的,管脚的基本功能肯定也是一样的(可能会一些新加的功能不一样),内部电路基本功能也是一样的,但又各有其特点.
总之一句话,刚开始学,把它们当普通的51单片机来学就是了,等到基本的学会了,再去考虑那些新加的功能,新加的功能厂家不同,肯定是有点不同的.
相似回答