打印

还是单片机写片外RAM的事……(已经解决)

[复制链接]
1711|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
飞言走笔|  楼主 | 2009-4-19 09:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
俺想用单片机写一组数据到片外的ram中,单片机就是普通的AT89C51,片外的RAM用的AT28C64,写了数据后,又用编程器把RAM中的数据读出来以验证是否正确。编程器是TOP2007,具有读写RAM的功能。
想法是从0x0000开始写数据,地址有规律的加1,数据也是有规律的加1……
下面是单片机的代码:
#include<reg51.h>
unsigned char v;          //要存入片外存储器的数据
unsigned char xdata *addr;//片外ram地址指针

void delay200ms(void)//延时
{
unsigned char i,j,k;
for(i=5;i>0;i--)
for(j=132;j>0;j--)
for(k=150;k>0;k--);
}

void WriteRam(void)
{
    unsigned char i;
    addr = 0x0000;
    v = 0x00;
    for(i=0;i<=100;i++)
    {
        *addr = v;
        addr++;
        v++;    
        delay200ms();
    }
}

void main(void)
{
    WriteRam();
    while(1);
}

下面是TOP2007从RAM中读出来的数据,感觉写得很乱,好像又有规律- -!

相关帖子

沙发
飞言走笔|  楼主 | 2009-4-19 09:41 | 只看该作者

这是咋米一会事,请教高手……

- -!

使用特权

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

本版积分规则

16

主题

858

帖子

0

粉丝