迪文科技论坛

 找回密码
 立即注册
搜索
12
返回列表 发新帖
楼主: huojidu

【提问】请问怎样才会导致溢出的ram操作?

[复制链接]

15

主题

115

回帖

1910

积分

金牌会员

Rank: 6Rank: 6

积分
1910
发表于 2023-5-16 10:48:55 | 显示全部楼层
huojidu 发表于 2023-5-16 10:31
请问是这样添加吗?

void Write_Dgusii_Vp(unsigned int addr,unsigned char *buf,unsigned int len){
        unsigned char i;
//        bit EA_Bak;
//        EA_Bak = EA;
//        EA = 0;
        i = (unsigned char)(addr & 0x01);
        addr = addr / 2;
        ADR_H = 0x00;
        ADR_M = (unsigned char)(addr >> 8);
        ADR_L = (unsigned char)(addr);
        ADR_INC = 0x01;
        RAMMODE = 0x8F;
        while(APP_ACK == 0);
        if(i && len > 0){
                RAMMODE = 0x83;
                DATA1 = *buf++;
                DATA0 = *buf++;
                APP_EN = 1;
                while(APP_EN == 1);
                len--;
        }
        RAMMODE = 0x8F;
        while(len >= 2){
                DATA3 =* buf++;
                DATA2 =* buf++;
                DATA1 =* buf++;
                DATA0 =* buf++;
                APP_EN = 1;
                while(APP_EN == 1);
                len = len - 2;
        }
        if(len){
                RAMMODE = 0x8C;
                DATA3 =* buf++;
                DATA2 =* buf++;
                APP_EN = 1;
                while(APP_EN == 1);
        }
        RAMMODE = 0x00;
//        EA = EA_Bak;
}
回复

使用道具 举报

194

主题

442

回帖

2745

积分

金牌会员

Rank: 6Rank: 6

积分
2745
 楼主| 发表于 2023-5-16 12:03:36 | 显示全部楼层
cuijia 发表于 2023-5-16 10:48
void Write_Dgusii_Vp(unsigned int addr,unsigned char *buf,unsigned int len){
        unsigned char i;
//         ...

直接全部COPY?
回复

使用道具 举报

15

主题

115

回帖

1910

积分

金牌会员

Rank: 6Rank: 6

积分
1910
发表于 2023-5-16 13:13:10 | 显示全部楼层

对啊,用我这个
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|迪文科技论坛 ( 京ICP备05033781号-1 )

GMT+8, 2025-7-12 16:56 , Processed in 0.033846 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表