为什么串口发出的数据不是 修改了内存后的数据 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);
} |