為什么串口發出的數據不是 修改了內存后的數據 0 1 2 3 4 5 6 ????
串口功能正常
void main (void)
{
unsigned char *ptr1;
unsigned char i=0;
unsigned char a=0;
init_mempool (0x2000,0x50); //內存池初始化,0x1000為起始地址,0x50為內存大小
HardWareInit();
EA = 1;
ptr1=malloc(7); //動態為指針變量分配長度為7字節的存儲空間
for(i=0;i<7;i++)
{
*(ptr1+i) = i;
a = *(ptr1+i);
Uart1_SendChar(a); //串口發送數據 ,觀察動態內存的修改情況
}
free(ptr1) ;
while (1);
} |