打印
[ZLG-MCU]

P80C32和P89V51RD2的区别都有哪些?

[复制链接]
2324|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
eric|  楼主 | 2008-2-4 08:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我这有一种10多年前老外做的设备,现在还在生产,用的8032X2单片机,程序是汇编写的,有35K左右(晕)。设备还算稳定可靠,最近想更换成带FALSH的51单片机,由于程序是汇编写的,有很大,所以打算直接用HEX文件。想换P89V51RD2单片机,可是换上之后,大部分程序运转正常,只有初始化参数部分有些问题,想在想找找问题在哪里,看看8032X2和P89V51RD2差别在哪里?
先说说我设备的配置:
40脚DIP接口MCU接口,8K外部SRAM,64K外部EPROM。
我用P89V51RD2时,把EA拉高,用外部8K SRAM,内部64K Flash。
P80C32X2和P89V51RD2的区别:
1、P80C32X2:0K EPROM,256K RAM
   P89C51RD2:64K Flash,1K RAM
2、P89C51RD2比P80C32X2寄存器多
3、P89C51RD2增加了内部768字节RAM,并增加了切换内部和外部低768字节RAM的开关。
4、P89C51RD2增加ISP和IAP功能
不知道是哪一部分差别会影响我程序的运行呢?

相关帖子

沙发
zlgmcu| | 2008-2-15 17:21 | 只看该作者

re

1、P80C32X2:0K EPROM,256K RAM
   P89C51RD2:64K Flash,1K RAM
2、P89C51RD2比P80C32X2寄存器多
3、P89C51RD2增加了内部768字节RAM,并增加了切换内部和外部低768字节RAM的开关。
4、P89C51RD2增加ISP和IAP功能
不知道是哪一部分差别会影响我程序的运行呢?


V51默认上电以后运行芯片内容的1kB RAM.如果超过1kB,则使用外部RAM,P0,P2会动作.


建议先找出是哪个功能不正常,再进一步分析.


使用特权

评论回复
板凳
eric|  楼主 | 2008-2-18 10:52 | 只看该作者

通过分析,感觉不同的是读取24C02部分程序。

用80C32的时候可以正常运行,外部24C02未初始化的时候,采用编程时的默认参数,即FLASH中的参数。
采用89V51的时候,如果外部24C02已经初始化,有参数,则程序运行正常,如果外部24C02未初始化,则程序运行不正常。
24C02的接口用P1.6和P1.7,感觉不是I2C接口控制的问题
感觉象是内部FALSH参数或是RAM中参数的问题?
是不是那768内部RAM搞的?
由于程序是十几年前用汇编写的,有三十多K,读起来困难死了。
通过读手册,感觉内部的768字节RAM和外部RAM的地址逻辑上是统一的,物理上是分开的,不应该影响程序,倒是那中间的128字节RAM和寄存器空间重叠,会不会出现问题。
至于多出来的那些寄存器,未使用的默认设置好像都是关闭的吧,不影响程序。
就是那个内部RAM开关默认是用内部RAM。

使用特权

评论回复
地板
zlgmcu| | 2008-2-18 13:47 | 只看该作者

re

根据您的描述,情况出现在 
V51从24C02读数据,
将读到的数据保存、判断
这2个环节上。

1,建议先测试24C02读数据.

2,中间的128B RAM称之为idata,indirect data的简写,间接寻址的意思。
您可以到网上查查idata的应用,正规地对其操作是不会影响寄存器空间的(我们平时对寄存器空间操作方式是直接寻址)

使用特权

评论回复
5
zcq30| | 2008-2-22 13:21 | 只看该作者

EXTRAM = 1;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

36

帖子

0

粉丝