打印

P89C51与P89V51兼容的问题

[复制链接]
4389|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
高个|  楼主 | 2009-8-11 21:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现在板子上用的芯片是P89C51RC2FBC,由于停产,供应商推荐了P89V51RC2FBC替换,查看资料显示都是基于51内核,引脚定义也是相同,但是我将以前的P89C51的程序直接写进P89V51后,P89V51输出波形和P89C51不相同。我也写了一个简单的输出方波程序如下:
ORG 0000H
LJMP  0020H
MOV P2,#0FFH
HERE:MOV A,#00H
        MOV P2,A
        MOV A,#0FFH
        MOV P2,A
       JNZ HERE
END
但是P89V51输出波形和我预期的也不相同,而且输出波形不连续,即2ms波形,20ms左右的高电平。有没有人用过P89V51,能不能解释这种现象啊?供应商给了8个样品,我试了4片都有问题,我现在初步怀疑是这批芯片坏掉了。

相关帖子

沙发
itelectron| | 2009-8-11 21:27 | 只看该作者
没有感觉不同 我们也换了

使用特权

评论回复
板凳
高个|  楼主 | 2009-8-11 21:35 | 只看该作者
你们的程序有没有改动?我刚才在百度上看到有人也换了,他们说在编程器烧写芯片的时候有个细节没注意,但是是什么细节他没有说,我用编程器烧写芯片的时候,选择型号是“P89V51RC2”。你们选什么啊?

使用特权

评论回复
地板
chunyang| | 2009-8-11 22:00 | 只看该作者
跟芯片配置有关,仔细看器件手册。

使用特权

评论回复
5
YouSelf| | 2009-8-12 11:09 | 只看该作者
有一个需要注意的地方就是V51RD2默认是12Clock ,而C51RD2应该默认是6Clock的。

使用特权

评论回复
6
高个|  楼主 | 2009-8-12 12:17 | 只看该作者
应该不是这个问题,我用的是C51RC2,这个默认也是12CLOCK。C51RD2没有用过。

使用特权

评论回复
7
高个|  楼主 | 2013-8-6 17:09 | 只看该作者
4年前的帖子,今天来回下。
对于P89V51的引导程序bootload是可以通过写片机覆盖掉的,为防止该现象,烧写时选择自己需要烧写的FLASH块,但是这样烧写完后如果焊到板上还是不能运行,我们采取的方法是烧写完程序后,再将程序全部读出(含bootload),然后再把读出的程序写入,这样就可以正常运行。
而且读出的程序还可以保存起来,下此次烧写时直接烧写改程序即可,烧写完后也不用再读出。就算覆盖掉原bootload也没关系,因为这个程序中已经含有bootload了

使用特权

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

本版积分规则

4

主题

36

帖子

1

粉丝