不定义任何数据下编译工程 查看 map ,双击下图标记处
由 map 可知
REG BANK 0 占用 8Byte
STACK 占用 1Byte
定义数据下编译工程定义数据如下 #ifndef _UART_H_#define _UART_H_#define RX_Len 20#define TX_Len 20extern char RX_DataBuff[RX_Len];extern char TX_DataBuff[TX_Len];extern char rec_flag;void UART1_Init();void Send_Byte(unsigned char Data);void Send_String(char *String);#endifmap 图
上述文件中
第二行明显看出定义数据占用 41 Byte,但是 map 中显示占用 42 Byte (最终发现 51 的中断函数中的static数据会占用 1 Byte)
第三行是函数void Send_String(char *String)占用 3 Byte
|