i和timeout的值是怎么出来的?

2019-07-25 15:07发布

Uint16        ChipErase(void)
                {
                        Uint16        Data;
                        Uint32        TimeOut,i;                                
                        *(FlashStart + 0x5555) = 0xAAAA;
                        *(FlashStart + 0x2AAA) = 0x5555;
                        *(FlashStart + 0x5555) = 0x8080;
                        *(FlashStart + 0x5555) = 0xAAAA;
                        *(FlashStart + 0x2AAA) = 0x5555;
                        *(FlashStart + 0x5555) = 0x1010;        
                        i = 0;
                        TimeOut = 0;
                        while(i<5)
                                {
                                        Data = *(FlashStart +  0x3FFFF);
                                        if        (Data == 0xFFFF)        i++;
                                        else        i=0;
                                        if ( ++TimeOut>0x1000000)                   //0x1000000地址值1M容量
                                                return (TimeOutErr);
                                }
                        for        (i=0;i<0x40000;i++)        
                                {
                                        Data = *(FlashStart + i);
                                        if (Data !=0xFFFF)        return (EraseErr);
                                }
                        return  (EraseOK);                                                                                       
                                                                                       
                }
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
lzwying
1楼-- · 2019-07-26 08:36
Data = *(FlashStart +  0x3FFFF);这句为什么要加0x3FFFF,搞不明白
smilingangel
2楼-- · 2019-07-26 09:57
楼主那个程序的不算复杂的,好理解的
firstblood
3楼-- · 2019-07-26 14:57
 精彩回答 2  元偷偷看……
firstblood
4楼-- · 2019-07-26 15:05
这个采用If判断语句的,达到该条件了,就自动加1的,,这两个自累加的还是有点区别的,一个是先调用再加的,另一个相反。
vivilzb1985
5楼-- · 2019-07-26 15:42
这个看来是跟存储状态的相关系的

一周热门 更多>