最近用24FJ64GA004的芯片搞了个东东,代码量超过78%,编译就通不过!用C30的编译器!<br /><br />开了优化代码之后,就没有问题了,为什么,郁闷....<br />//================================<br />以下是没有开优化的代码:<br />Program Memory Usage<br /><br />section address length (PC units) length (bytes) (dec)<br />------- ------- ----------------- --------------------<br />.reset 0 0x4 0x6 (6)<br />.ivt 0x4 0xfc 0x17a (378)<br />.aivt 0x104 0xfc 0x17a (378)<br />.text 0x200 0x5d74 0x8c2e (35886)<br />.const 0x5f74 0x2670 0x39a8 (14760)<br />.dinit 0x85e4 0x16 0x21 (33)<br />.isr 0x85fa 0x2 0x3 (3)<br /><br /> Total program memory used (bytes): 0xc8f4 (51444) 78%<br /><br /><br />Data Memory Usage<br /><br />section address alignment gaps total length (dec)<br />------- ------- -------------- -------------------<br />.nbss 0x800 0 0x24c (588)<br />.ndata 0xa4c 0 0xa (10)<br /><br /> Total data memory used (bytes): 0x256 (598) 7%<br /><br /><br />Dynamic Memory Usage<br /><br />region address maximum length (dec)<br />------ ------- ---------------------<br />heap 0 0 (0)<br />stack 0xa56 0x1daa (7594)<br /><br /> Maximum dynamic memory (bytes): 0x1daa (7594)<br /><br />C:Program FilesMicrochipMPLAB C30inpic30-coff-ld.exe: Error: Not enough contiguous memory for section .const.<br />//================================<br />开优化之后的编译结果:<br />Program Memory Usage<br /><br />section address length (PC units) length (bytes) (dec)<br />------- ------- ----------------- --------------------<br />.reset 0 0x4 0x6 (6)<br />.ivt 0x4 0xfc 0x17a (378)<br />.aivt 0x104 0xfc 0x17a (378)<br />.text 0x200 0x40f2 0x616b (24939)<br />.const 0x42f2 0x2670 0x39a8 (14760)<br />.dinit 0x6962 0x16 0x21 (33)<br />.isr 0x6978 0x2 0x3 (3)<br /><br /> Total program memory used (bytes): 0x9e31 (40497) 61%<br /><br /><br />Data Memory Usage<br /><br />section address alignment gaps total length (dec)<br />------- ------- -------------- -------------------<br />.nbss 0x800 0 0x24c (588)<br />.ndata 0xa4c 0 0xa (10)<br /><br /> Total data memory used (bytes): 0x256 (598) 7%<br /><br /><br />Dynamic Memory Usage<br /><br />region address maximum length (dec)<br />------ ------- ---------------------<br />heap 0 0 (0)<br />stack 0xa56 0x1daa (7594)<br /><br /> Maximum dynamic memory (bytes): 0x1daa (7594)<br /><br />Executing: "C:Program FilesMicrochipMPLAB C30inpic30-bin2hex.exe" "zzky.cof"<br />Loaded E:hengzhoucodeLCDzzky.cof.<br />BUILD SUCCEEDED: Fri Nov 23 14:23:01 2007<br /> |
|