关于清RAM问题

[复制链接]
2534|6
 楼主| jwwhy 发表于 2011-8-28 19:35 | 显示全部楼层 |阅读模式
RAM, FOR, IDC, ui, dc
大家好 ,想把 79F082a 的 RAM 256字节全部清0,下面是程序,感觉不对;

void clr_ram(void)
{
     
     INT8U i ;
     INT8U data *P;
     P = (INT8U*)0X00 ;   //把RAM的地址00H传给指针
     for(i=0;i<256;i++)
     {
      
  *P++ = 0x00;
     }
}
好像 死循环了 ;不知道哪里问题 ,请大家帮忙
老鱼探戈 发表于 2011-8-28 21:47 | 显示全部楼层
你定义的数据类型INT8U i ; 条件语句for(i=0;i<256;i++) 永远成立,怎么会不死循环
老鱼探戈 发表于 2011-8-28 21:49 | 显示全部楼层
这样写试试
for(i=0;i<255;i++)
     {
  *P++ = 0x00;
     }
*P++ = 0x00;
 楼主| jwwhy 发表于 2011-8-31 21:02 | 显示全部楼层
改了后,还是不行
lost1421 发表于 2011-9-1 15:11 | 显示全部楼层
void clr_ram(void)
{
     INT8U i ;
     INT8U data *P;

     P = (INT8U*)0XFF ;  
     for(i=255; i !=0; i--)
     {
         *P-- = 0x00;
     }
}

试试上面的程序
gongche 发表于 2011-9-1 15:28 | 显示全部楼层
5楼的楼主试了吗?咋样?
armfan 发表于 2011-9-1 16:14 | 显示全部楼层
你code 是在那里运行的?
如果是在这个ram 里面运行的话,那么必然不行
另外你机器有几个ram?要是只有一个的话,也必然不行的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

83

主题

281

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部