|

楼主 |
发表于 2020-11-6 09:18:16
|
显示全部楼层
本帖最后由 hpdell 于 2020-11-6 10:15 编辑
我目前移植后大概测试了一下,貌似效果还不错,不过程序里面还有几处可以优化一下,当然不优化也没有什么关系
/*
**************************************************************************************************************
内存申请,释放测试
_sdram_addr1 = 0xC0600008
_sdram_addr2 = 0xC0900034
_sdram_addr3 = 0xC0900034
_sdram_addr4 = 0xC090143C
_sdram_addr1 = 0xC0600008
---------------------------------------------------
_sram1_addr1 = 0x30000008
_sram1_addr2 = 0x30000C10
_sram1_addr3 = 0x30000C10
_sram1_addr4 = 0x30002018
_sram1_addr1 = 0x30000008
---------------------------------------------------
_dtcm_addr1 = 0x20000008
_dtcm_addr2 = 0x20000C10
_dtcm_addr3 = 0x20000C10
_dtcm_addr4 = 0x20002018
_dtcm_addr1 = 0x20000008
---------------------------------------------------
**************************************************************************************************************
*/
void bsp_memory_demo(void)
{
uint8_t *_sdram_addr1=0;
uint8_t *_sdram_addr2=0;
uint8_t *_sdram_addr3=0;
uint8_t *_sdram_addr4=0;
uint8_t *_sram1_addr1=0;
uint8_t *_sram1_addr2=0;
uint8_t *_sram1_addr3=0;
uint8_t *_sram1_addr4=0;
uint8_t *_dtcm_addr1=0;
uint8_t *_dtcm_addr2=0;
uint8_t *_dtcm_addr3=0;
uint8_t *_dtcm_addr4=0;
{
_sdram_addr1 = (uint8_t *)mymalloc(SDRAMEX, 1024*1024*3+35);
_sdram_addr2 = (uint8_t *)mymalloc(SDRAMEX, 1024*1024*4+57);
TX_MemoryDebug("_sdram_addr1 = 0x%X \r\n", _sdram_addr1);
TX_MemoryDebug("_sdram_addr2 = 0x%X \r\n", _sdram_addr2);
myfree(SDRAMEX,_sdram_addr2) ;
_sdram_addr3 = (uint8_t *)mymalloc(SDRAMEX, 1024*5);
_sdram_addr4 = (uint8_t *)mymalloc(SDRAMEX, 1024*5);
TX_MemoryDebug("_sdram_addr3 = 0x%X \r\n", _sdram_addr3);
TX_MemoryDebug("_sdram_addr4 = 0x%X \r\n", _sdram_addr4);
myfree(SDRAMEX,_sdram_addr1) ;
myfree(SDRAMEX,_sdram_addr3) ;
myfree(SDRAMEX,_sdram_addr4) ;
_sdram_addr1 = (uint8_t *)mymalloc(SDRAMEX, 1024*1024*3+36);
TX_MemoryDebug("_sdram_addr1 = 0x%X \r\n", _sdram_addr1);
TX_MemoryDebug("\r\n---------------------------------------------------\r\n");
}
{
_sram1_addr1 = (uint8_t *)mymalloc(SRAM1, 1024*3);
_sram1_addr2 = (uint8_t *)mymalloc(SRAM1, 1024*32+65);
TX_MemoryDebug("_sram1_addr1 = 0x%X \r\n", _sram1_addr1);
TX_MemoryDebug("_sram1_addr2 = 0x%X \r\n", _sram1_addr2);
myfree(SRAM1,_sram1_addr2) ;
_sram1_addr3 = (uint8_t *)mymalloc(SRAM1, 1024*5);
_sram1_addr4 = (uint8_t *)mymalloc(SRAM1, 1024*5);
TX_MemoryDebug("_sram1_addr3 = 0x%X \r\n", _sram1_addr3);
TX_MemoryDebug("_sram1_addr4 = 0x%X \r\n", _sram1_addr4);
myfree(SRAM1,_sram1_addr1) ;
myfree(SRAM1,_sram1_addr3) ;
myfree(SRAM1,_sram1_addr4) ;
_sram1_addr1 = (uint8_t *)mymalloc(SRAM1, 1024*3);
TX_MemoryDebug("_sram1_addr1 = 0x%X \r\n", _sram1_addr1);
myfree(SRAM1,_sram1_addr1) ;
TX_MemoryDebug("\r\n---------------------------------------------------\r\n");
}
{
_dtcm_addr1 = (uint8_t *)mymalloc(DTCMSRAM, 1024*3);
_dtcm_addr2 = (uint8_t *)mymalloc(DTCMSRAM, 1024*32+57);
TX_MemoryDebug("_dtcm_addr1 = 0x%X \r\n", _dtcm_addr1);
TX_MemoryDebug("_dtcm_addr2 = 0x%X \r\n", _dtcm_addr2);
myfree(DTCMSRAM,_dtcm_addr2) ;
_dtcm_addr3 = (uint8_t *)mymalloc(DTCMSRAM, 1024*5);
_dtcm_addr4 = (uint8_t *)mymalloc(DTCMSRAM, 1024*5);
TX_MemoryDebug("_dtcm_addr3 = 0x%X \r\n", _dtcm_addr3);
TX_MemoryDebug("_dtcm_addr4 = 0x%X \r\n", _dtcm_addr4);
myfree(DTCMSRAM,_dtcm_addr1) ;
myfree(DTCMSRAM,_dtcm_addr3) ;
myfree(DTCMSRAM,_dtcm_addr4) ;
_dtcm_addr1 = (uint8_t *)mymalloc(DTCMSRAM, 1024*3);
TX_MemoryDebug("_dtcm_addr1 = 0x%X \r\n", _dtcm_addr1);
myfree(DTCMSRAM,_dtcm_addr1) ;
TX_MemoryDebug("\r\n---------------------------------------------------\r\n");
}
}
|
|