查看: 980|回复: 0
打印 上一主题 下一主题

使用STemWin ,数据缓冲区使用外部的2MByte 的 sdram

[复制链接]
跳转到指定楼层
沙发
发表于 2015-9-17 08:17:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教下,使用STemWin ,数据缓冲区使用外部的2MByte 的 sdram ,现在想吧外部的最后100KByte 分配给 emwin使用,程序功能是实现了,  

#define  EXT_SRAM_ADDR    0x68000000
          static U32 *aMemory = (U32 *)(EXT_SRAM_ADDR + (((2*1024*1024) - (100*1024) ) / 4)  ) ;        // 把外部2MByte的最后100KByte 字节分配给 STemWin 使用

            GUI_ALLOC_AssignMemory((U32 *)aMemory, (100*1024)/4);   

            GUI_ALLOC_SetAvBlockSize(GUI_BLOCKSIZE);
这样更改后是可以,但是我不明白的是 怎么要除以 4啊,还有 除以4后,那地址就变少了啊???

按照字节计算的花,外部2m的地址为 0x200000那么加上 基地址就是 0x6800 0000 + 0x0020 0000 = 0x68200 0000

如果 /4 后,就得 aMemory = 0x68079C00 这个地址范围岂不是少了很多了 ???
转载

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入中科因仑

本版积分规则

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