WinCE MMC空间分配

发布时间:2016-12-11 16:04:40 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"WinCE MMC空间分配",主要涉及到WinCE MMC空间分配方面的内容,对于WinCE MMC空间分配感兴趣的同学可以参考一下。

本来三星的MMC是这么做的: //SDMMC BSP Definition #define IMAGE_NK_SIZE (0x040E0000) #define FATFS_FOR_IMAGE (0x1000000) #define SECTOROFFATFS (FATFS_FOR_IMAGE / SDMMC_SECTOR_SIZE) #define IMAGESTARTSECTOR (MBRSTARTSECTOR+SECTOROFMBR) #define IMAGESIZE (IMAGE_NK_SIZE) //#define IMAGESIZE (0x10000000) // this value must be the same as Flash size in the memory.cfg.xml #define SECTOROFIMAGE (IMAGESIZE/(SDMMC_SECTOR_SIZE)) #define MBRSTARTSECTOR (TOCSTARTSECTOR+SECTOROFTOC+7) // 7 sector means tocsector+7, to align 8KB #define SECTOROFMBR (0x100) #define SECTOROFTOC (8) #define TOCSTARTSECTOR (AISSTARTSECTOR+SECTOROFAIS) // to align 8KB #define SECTOROFAIS (1) // Address Information Sector #define AISSTARTSECTOR (BOOTIMAGESTARTSECTOR+SECTOROFBOOTIMAGE+15) // to align 8KB #define SECTOROFBOOTIMAGE (0xA10) // bootimage means STEPLDR+IPL+EBOOT #define BOOTIMAGESTARTSECTOR (1) //#define STEPLDRBUFFER 0x50200000 //#define STEPLDRSTARTADDRESS 0x50000000 #define SECTOROFSTEPLDR (0x20) //16K #define STEPLDRSTARTSECTOR (1) #define SECTOROFEBOOT (0x600) #define EBOOTSTARTSECTOR (STEPLDRSTARTSECTOR+SECTOROFSTEPLDR) #define SECTOROFIPL (0x400) #define IPLSTARTSECTOR (EBOOTSTARTSECTOR+SECTOROFEBOOT) 然后我改成这样子: //SDMMC BSP Definition #define IMAGE_NK_SIZE (0x040E0000) #define FATFS_FOR_IMAGE (0x1000000) #define SECTOROFFATFS (FATFS_FOR_IMAGE / SDMMC_SECTOR_SIZE) #define IMAGESTARTSECTOR (MBRSTARTSECTOR+SECTOROFMBR) #define IMAGESIZE (IMAGE_NK_SIZE) //#define IMAGESIZE (0x10000000) // this value must be the same as Flash size in the memory.cfg.xml #define SECTOROFIMAGE (IMAGESIZE/(SDMMC_SECTOR_SIZE)) #define MBRSTARTSECTOR (LOGOSTARTSECTOR+SECTOROFLOGO) // 7 sector means tocsector+7, to align 8KB #define SECTOROFMBR (0x100) #define SECTOROFTOC (8) #define TOCSTARTSECTOR (AISSTARTSECTOR+SECTOROFAIS) // to align 8KB #define SECTOROFAIS (1) // Address Information Sector #define AISSTARTSECTOR (BOOTIMAGESTARTSECTOR+SECTOROFBOOTIMAGE+6) // to align 8KB #define SECTOROFBOOTIMAGE (0x421) // bootimage means STEPLDR+EBOOT #define BOOTIMAGESTARTSECTOR (1) //TOCSTARTSECTOR = 0x429 //AISSTARTSECTOR = 0x428 //SECTOROFBOOTIMAGE = 0x421 //LOGOSTARTSECTOR = 0x431 //BOOTIMAGESTARTSECTOR+SECTOROFBOOTIMAGE = 0x422 //#define STEPLDRBUFFER 0x50200000 //#define STEPLDRSTARTADDRESS 0x50000000 #define SECTOROFSTEPLDR (0x20) //16K #define STEPLDRSTARTSECTOR (1) #define SECTOROFEBOOT (0x400) #define EBOOTSTARTSECTOR (STEPLDRSTARTSECTOR+SECTOROFSTEPLDR) #define SECTOROFLOGO (0x3000) #define LOGOSTARTSECTOR (TOCSTARTSECTOR+SECTOROFTOC)   保留 Bootimage 对齐 AISS TOC MBR NK FAT     stepldr eboot ipl   起始扇区 0x0 0x1 0x21 0x621 0xA19 0xA20 0xA21 A30       长度 0x1 0x20 0x600 0x400 0xf 0x1 0x8 0x100                                 保留 Bootimage 对齐 AISS TOC LOGO MBR NK FAT   stepldr eboot 起始扇区 0x0 0x1 0x21 0x421 0x428 0x429 0x431 0x3431     长度 0x1 0x20 0x400 0x6 0x1 0x8 0x3000 0x100     三星的表格可能没处理详细,会有数字错误,这么做的原因是加上LOGO的分区,使得跟其他操作系统可以公用Logo

上一篇:delphi7如何读取excel文件
下一篇:Android学习笔记19:ImageView实现图片适屏与裁剪

相关文章

相关评论