From ac2841a24bf4c5b09e84cdf25e9bd13ad2d889f1 Mon Sep 17 00:00:00 2001 From: a7458969 <290198252@qq.com> Date: Wed, 4 Mar 2020 00:37:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0arduino=E5=9B=BA=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 11 + arduino/arduino/arduino.ino | 36 + arduino/arduino/stepper.ino/stepper.ino.ino | 57 + c51/relay_controller/main.__i | 1 - c51/relay_controller/relay.M51 | 458 ------- c51/relay_controller/relay.hex | 69 - .../9G/PWM_DeadZone/KEIL/PWM_DeadZone.uvoptx | 208 --- .../9G/PWM_DeadZone/KEIL/PWM_DeadZone.uvprojx | 470 ------- .../OLED/M451/OLED_TEST/Listings/OLED.map | 232 ++-- .../m451/OLED/M451/OLED_TEST/Objects/OLED.axf | Bin 310272 -> 310176 bytes .../m451/OLED/M451/OLED_TEST/Objects/OLED.lnp | 6 +- .../Listings/roboticarm_controller.map | 1211 ----------------- .../Objects/roboticarm_controller.axf | Bin 319924 -> 0 bytes nuvoton/m451/roboticarm_controller/main.c | 12 +- 14 files changed, 229 insertions(+), 2542 deletions(-) create mode 100644 arduino/arduino/arduino.ino create mode 100644 arduino/arduino/stepper.ino/stepper.ino.ino delete mode 100644 c51/relay_controller/main.__i delete mode 100644 c51/relay_controller/relay.M51 delete mode 100644 c51/relay_controller/relay.hex delete mode 100644 nuvoton/m451/9G/PWM_DeadZone/KEIL/PWM_DeadZone.uvoptx delete mode 100644 nuvoton/m451/9G/PWM_DeadZone/KEIL/PWM_DeadZone.uvprojx delete mode 100644 nuvoton/m451/roboticarm_controller/Listings/roboticarm_controller.map delete mode 100644 nuvoton/m451/roboticarm_controller/Objects/roboticarm_controller.axf diff --git a/.gitignore b/.gitignore index b8b4cf1..d01e5e8 100644 --- a/.gitignore +++ b/.gitignore @@ -28,3 +28,14 @@ *.SearchResults *.sisc *.iex +c51/relay_controller/relay_net.lnp +c51/relay_controller/relay_net.Uv2 +c51/relay_controller/relay_net +9G/PWM_DeadZone/KEIL/obj/PWM_DeadZone.txt +9G/PWM_DeadZone/KEIL/obj/PWM_DeadZone.axf +c51/relay_controller/relay_net.Opt +c51/relay_controller/relay_net.M51 +9G/PWM_DeadZone/KEIL/obj/PWM_DeadZone.lnp +9G/PWM_DeadZone/KEIL/obj/PWM_DeadZone.bin +c51/relay_controller/relay_net.plg +9G/PWM_DeadZone/KEIL/lst/PWM_DeadZone.map diff --git a/arduino/arduino/arduino.ino b/arduino/arduino/arduino.ino new file mode 100644 index 0000000..03850ce --- /dev/null +++ b/arduino/arduino/arduino.ino @@ -0,0 +1,36 @@ + + +int incomedate = 0; + +void setup() { + // put your setup code here, to run once: + pinMode(13, OUTPUT); + Serial.begin(9600); //设置串口波特率9600 + Serial.println(78, BIN);// "1001110" + Serial.println(78, OCT);// "116" + Serial.println(78, DEC);// "78" + Serial.println(78, HEX);// "4E" + Serial.println(1.23456, 0);// "1" + Serial.println(1.23456, 2);// "1.23" + Serial.println(1.23456, 4);// "1.2346" + Serial.println('N');// "N" + Serial.println("Hello world.");// "Hello world." + +} + +void loop() { + // put your main code here, to run repeatedly: + digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level) + delay(1000); // wait for a second + digitalWrite(13, LOW); // turn the LED off by making the voltage LOW + delay(1000); // wait for a second + if (Serial.available() > 0)//串口接收到数据 + { + incomedate = Serial.read();//获取串口接收到的数据 + if (incomedate == 'H') + { + Serial.println("Good Job!"); + } + } + +} diff --git a/arduino/arduino/stepper.ino/stepper.ino.ino b/arduino/arduino/stepper.ino/stepper.ino.ino new file mode 100644 index 0000000..35af2db --- /dev/null +++ b/arduino/arduino/stepper.ino/stepper.ino.ino @@ -0,0 +1,57 @@ +/* + Stepper Motor Control - one revolution + This program drives a unipolar or bipolar stepper motor. + The motor is attached to digital pins 8 - 11 of the Arduino. + The motor should revolve one revolution in one direction, then + one revolution in the other direction. + Created 11 Mar. 2007 + Modified 30 Nov. 2009 + by Tom Igoe + */ +#include +#include + +const int stepsPerRevolution = 20; // change this to fit the number of steps per revolution +// for your motor +Servo myservo; // create servo object to control a servo + +// initialize the stepper library on pins 8 through 11: + +#define CLK 10 +#define CW 9 +#define EN 8 + +void setup() { + // set the speed at 60 rpm: + pinMode(CLK,OUTPUT); + pinMode(CW,OUTPUT); + pinMode(EN,OUTPUT); + // initialize the serial port: + Serial.begin(115200); + digitalWrite(EN,LOW); + myservo.attach(12); // attaches the servo on pin 9 to the servo object +} + +void loop() { + char data[20] = {0}; + digitalWrite(EN,LOW); + + // step one revolution in one direction: + if(Serial.available()){ //if number of bytes (characters) available for reading from { + Serial.readBytes(data,20); + Serial.print("I received:"); //print I received + Serial.write(data); //send what you read + String strInt = data; // string to hold input + int ints = strInt.toInt(); + Serial.print(ints); //print I received + myservo.write(ints); // sets the servo position according to the scaled value + for(int cnt = 0;cnt < ints;cnt++){ + delay(100); + digitalWrite(EN,LOW); + delay(100); + digitalWrite(EN,HIGH); + + } + ints = 0; + } +} diff --git a/c51/relay_controller/main.__i b/c51/relay_controller/main.__i deleted file mode 100644 index a083318..0000000 --- a/c51/relay_controller/main.__i +++ /dev/null @@ -1 +0,0 @@ -"main.c" BROWSE DEBUG OBJECTEXTEND \ No newline at end of file diff --git a/c51/relay_controller/relay.M51 b/c51/relay_controller/relay.M51 deleted file mode 100644 index 3632ff9..0000000 --- a/c51/relay_controller/relay.M51 +++ /dev/null @@ -1,458 +0,0 @@ -BL51 BANKED LINKER/LOCATER V6.22 02/02/2020 01:51:01 PAGE 1 - - -BL51 BANKED LINKER/LOCATER V6.22, INVOKED BY: -D:\PROGRAMS\C51\C51\BIN\BL51.EXE STARTUP.obj, main.obj TO relay RAMSIZE (256) - - -MEMORY MODEL: SMALL - - -INPUT MODULES INCLUDED: - STARTUP.obj (?C_STARTUP) - main.obj (MAIN) - D:\PROGRAMS\C51\C51\LIB\C51S.LIB (?C_INIT) - D:\PROGRAMS\C51\C51\LIB\C51S.LIB (?C?CLDPTR) - D:\PROGRAMS\C51\C51\LIB\C51S.LIB (?C?MEMSET) - - -LINK MAP OF MODULE: relay (?C_STARTUP) - - - TYPE BASE LENGTH RELOCATION SEGMENT NAME - ----------------------------------------------------- - - * * * * * * * D A T A M E M O R Y * * * * * * * - REG 0000H 0008H ABSOLUTE "REG BANK 0" - DATA 0008H 0003H UNIT ?DT?_SENDWIFI?MAIN - DATA 000BH 0003H UNIT _DATA_GROUP_ - 000EH 0012H *** GAP *** - BIT 0020H.0 0000H.6 UNIT ?BI?MAIN - BIT 0020H.6 0000H.2 UNIT _BIT_GROUP_ - DATA 0021H 0033H UNIT ?DT?MAIN - IDATA 0054H 0001H UNIT ?STACK - - * * * * * * * C O D E M E M O R Y * * * * * * * - CODE 0000H 0003H ABSOLUTE - 0003H 0020H *** GAP *** - CODE 0023H 0003H ABSOLUTE - 0026H 07DAH *** GAP *** - CODE 0800H 00DBH UNIT ?PR?UART_ISR?MAIN - CODE 08DBH 008CH UNIT ?C_C51STARTUP - CODE 0967H 0063H UNIT ?PR?MAIN?MAIN - CODE 09CAH 0058H UNIT ?CO?MAIN - CODE 0A22H 0045H UNIT ?C?LIB_CODE - CODE 0A67H 0034H UNIT ?C_INITSEG - CODE 0A9BH 002CH UNIT ?PR?_SENDSTRING?MAIN - CODE 0AC7H 0029H UNIT ?PR?CALLBACKUART?MAIN - CODE 0AF0H 001DH UNIT ?PR?UART_INIT?MAIN - CODE 0B0DH 001BH UNIT ?PR?_SENDWIFI?MAIN - CODE 0B28H 000FH UNIT ?PR?DELAY3020MS?MAIN - CODE 0B37H 000FH UNIT ?PR?DELAY500MS?MAIN - CODE 0B46H 000DH UNIT ?PR?_SENDDATA?MAIN - CODE 0B53H 0009H UNIT ?PR?DELAY1020US?MAIN - CODE 0B5CH 0007H UNIT ?PR?P1_UART?MAIN - CODE 0B63H 0004H UNIT ?PR?P3_UART?MAIN - - - -OVERLAY MAP OF MODULE: relay (?C_STARTUP) - - - BL51 BANKED LINKER/LOCATER V6.22 02/02/2020 01:51:01 PAGE 2 - - -SEGMENT BIT_GROUP DATA_GROUP - +--> CALLED SEGMENT START LENGTH START LENGTH ------------------------------------------------------------------- -?C_C51STARTUP ----- ----- ----- ----- - +--> ?PR?MAIN?MAIN - +--> ?C_INITSEG - -?PR?MAIN?MAIN 0020H.6 0000H.2 ----- ----- - +--> ?PR?DELAY3020MS?MAIN - +--> ?PR?UART_INIT?MAIN - +--> ?PR?P1_UART?MAIN - +--> ?PR?DELAY1020US?MAIN - +--> ?CO?MAIN - +--> ?PR?_SENDSTRING?MAIN - +--> ?PR?CALLBACKUART?MAIN - -?PR?_SENDSTRING?MAIN ----- ----- 000BH 0003H - +--> ?PR?DELAY1020US?MAIN - +--> ?PR?_SENDDATA?MAIN - -?PR?CALLBACKUART?MAIN ----- ----- ----- ----- - +--> ?PR?P3_UART?MAIN - +--> ?PR?_SENDSTRING?MAIN - +--> ?PR?P1_UART?MAIN - -*** NEW ROOT *************************************************** - -?PR?UART_ISR?MAIN ----- ----- ----- ----- - +--> ?CO?MAIN - - - -SYMBOL TABLE OF MODULE: relay (?C_STARTUP) - - VALUE TYPE NAME - ---------------------------------- - - ------- MODULE ?C_STARTUP - C:08DBH SEGMENT ?C_C51STARTUP - I:0054H SEGMENT ?STACK - C:0000H PUBLIC ?C_STARTUP - D:00E0H SYMBOL ACC - D:00F0H SYMBOL B - D:0083H SYMBOL DPH - D:0082H SYMBOL DPL - N:0000H SYMBOL IBPSTACK - N:0100H SYMBOL IBPSTACKTOP - N:0080H SYMBOL IDATALEN - C:08DEH SYMBOL IDATALOOP - N:0000H SYMBOL PBPSTACK - N:0100H SYMBOL PBPSTACKTOP - N:0000H SYMBOL PDATALEN - N:0000H SYMBOL PDATASTART - N:0000H SYMBOL PPAGE - N:0000H SYMBOL PPAGEENABLE - D:00A0H SYMBOL PPAGE_SFR - D:0081H SYMBOL SP - BL51 BANKED LINKER/LOCATER V6.22 02/02/2020 01:51:01 PAGE 3 - - - C:08DBH SYMBOL STARTUP1 - N:0000H SYMBOL XBPSTACK - N:0000H SYMBOL XBPSTACKTOP - N:0000H SYMBOL XDATALEN - N:0000H SYMBOL XDATASTART - C:0000H LINE# 126 - C:08DBH LINE# 133 - C:08DDH LINE# 134 - C:08DEH LINE# 135 - C:08DFH LINE# 136 - C:08E1H LINE# 185 - C:08E4H LINE# 196 - ------- ENDMOD ?C_STARTUP - - ------- MODULE MAIN - C:0000H SYMBOL _ICE_DUMMY_ - C:0A13H PUBLIC AT_SendData - D:0092H PUBLIC P1M0 - C:0B5CH PUBLIC P1_Uart - D:0091H PUBLIC P1M1 - D:0080H PUBLIC P0 - D:0090H PUBLIC P1 - C:0B63H PUBLIC P3_Uart - D:00A0H PUBLIC P2 - D:00B0H PUBLIC P3 - D:00C0H PUBLIC P4 - B:0020H.2 PUBLIC recv_flag_global - D:00C8H PUBLIC P5 - B:00A8H.7 PUBLIC EA - C:0A9BH PUBLIC _SendString - C:0B46H PUBLIC _SendData - D:00A8H PUBLIC IE - C:0AF0H PUBLIC Uart_Init - B:00A8H.4 PUBLIC ES - D:00B8H PUBLIC IP - C:0B28H PUBLIC Delay3020ms - D:0026H PUBLIC index - B:0098H.0 PUBLIC RI - B:0098H.1 PUBLIC TI - C:0B0DH PUBLIC _SendWifi - C:0B53H PUBLIC Delay1020us - D:00D8H PUBLIC CCON - C:0967H PUBLIC main - C:0800H PUBLIC Uart_Isr - D:0099H PUBLIC SBUF - D:0087H PUBLIC PCON - D:0027H PUBLIC gSendbuf - D:0098H PUBLIC SCON - D:0089H PUBLIC TMOD - D:0088H PUBLIC TCON - B:0020H.3 PUBLIC connected_flag - D:008EH PUBLIC AUXR - C:09EAH PUBLIC AT_Connect - B:0020H.4 PUBLIC busy - D:00E0H PUBLIC ACC - B:00A8H.3 PUBLIC ET1 - D:008DH PUBLIC TH1 - BL51 BANKED LINKER/LOCATER V6.22 02/02/2020 01:51:01 PAGE 4 - - - D:0035H PUBLIC index_tmp - C:0AC7H PUBLIC callbackUart - D:0036H PUBLIC recv_buf - D:008BH PUBLIC TL1 - B:0088H.6 PUBLIC TR1 - B:0098H.4 PUBLIC REN - C:0B37H PUBLIC Delay500ms - C:09CCH PUBLIC AT_SetUp - D:00A2H PUBLIC AUXR1 - B:0020H.5 PUBLIC overflow_flag - D:00D0H PUBLIC PSW - ------- PROC P1_UART - C:0B5CH LINE# 49 - C:0B5CH LINE# 50 - C:0B5FH LINE# 51 - C:0B62H LINE# 52 - ------- ENDPROC P1_UART - ------- PROC P3_UART - C:0B63H LINE# 53 - C:0B63H LINE# 54 - C:0B66H LINE# 55 - ------- ENDPROC P3_UART - ------- PROC DELAY3020MS - ------- DO - D:0007H SYMBOL i - D:0006H SYMBOL j - D:0005H SYMBOL k - ------- ENDDO - C:0B28H LINE# 56 - C:0B28H LINE# 57 - C:0B28H LINE# 60 - C:0B29H LINE# 61 - C:0B2AH LINE# 62 - C:0B2CH LINE# 63 - C:0B2EH LINE# 64 - C:0B30H LINE# 66 - C:0B30H LINE# 68 - C:0B30H LINE# 69 - C:0B32H LINE# 70 - C:0B34H LINE# 71 - C:0B36H LINE# 72 - ------- ENDPROC DELAY3020MS - ------- PROC DELAY500MS - ------- DO - D:0007H SYMBOL i - D:0006H SYMBOL j - D:0005H SYMBOL k - ------- ENDDO - C:0B37H LINE# 73 - C:0B37H LINE# 74 - C:0B37H LINE# 77 - C:0B38H LINE# 78 - C:0B39H LINE# 79 - C:0B3BH LINE# 80 - C:0B3DH LINE# 81 - C:0B3FH LINE# 83 - C:0B3FH LINE# 85 - BL51 BANKED LINKER/LOCATER V6.22 02/02/2020 01:51:01 PAGE 5 - - - C:0B3FH LINE# 86 - C:0B41H LINE# 87 - C:0B43H LINE# 88 - C:0B45H LINE# 89 - ------- ENDPROC DELAY500MS - ------- PROC DELAY1020US - ------- DO - D:0007H SYMBOL i - D:0006H SYMBOL j - ------- ENDDO - C:0B53H LINE# 91 - C:0B53H LINE# 92 - C:0B53H LINE# 95 - C:0B55H LINE# 96 - C:0B57H LINE# 98 - C:0B57H LINE# 99 - C:0B59H LINE# 100 - C:0B5BH LINE# 101 - ------- ENDPROC DELAY1020US - ------- PROC UART_INIT - C:0AF0H LINE# 102 - C:0AF0H LINE# 103 - C:0AF3H LINE# 104 - C:0AF6H LINE# 105 - C:0AF9H LINE# 106 - C:0AFCH LINE# 107 - C:0AFFH LINE# 108 - C:0B02H LINE# 109 - C:0B05H LINE# 110 - C:0B08H LINE# 111 - C:0B0AH LINE# 112 - C:0B0CH LINE# 113 - ------- ENDPROC UART_INIT - ------- PROC CALLBACKUART - C:0AC7H LINE# 115 - C:0AC7H LINE# 116 - C:0ACDH LINE# 117 - C:0AD0H LINE# 118 - C:0AD9H LINE# 119 - C:0AE8H LINE# 120 - C:0AEAH LINE# 121 - C:0AECH LINE# 122 - C:0AEFH LINE# 123 - C:0AEFH LINE# 124 - ------- ENDPROC CALLBACKUART - ------- PROC MAIN - ------- DO - D:0007H SYMBOL i - B:0020H.6 SYMBOL flag1 - B:0020H.7 SYMBOL flag2 - ------- ENDDO - C:0967H LINE# 125 - C:0967H LINE# 126 - C:0967H LINE# 127 - C:0969H LINE# 128 - C:096BH LINE# 129 - C:096DH LINE# 130 - BL51 BANKED LINKER/LOCATER V6.22 02/02/2020 01:51:01 PAGE 6 - - - C:0970H LINE# 132 - C:0973H LINE# 133 - C:0976H LINE# 134 - C:0979H LINE# 136 - C:097BH LINE# 137 - C:097EH LINE# 140 - C:0980H LINE# 141 - C:0982H LINE# 142 - C:0984H LINE# 143 - C:0987H LINE# 144 - C:098AH LINE# 147 - C:098DH LINE# 149 - C:098EH LINE# 150 - C:0997H LINE# 151 - C:099BH LINE# 152 - C:099BH LINE# 153 - C:099EH LINE# 154 - C:09A0H LINE# 155 - C:09A9H LINE# 156 - C:09ACH LINE# 158 - C:09ACH LINE# 159 - C:09AFH LINE# 160 - C:09B5H LINE# 161 - C:09B7H LINE# 162 - C:09C0H LINE# 163 - C:09C3H LINE# 164 - C:09C5H LINE# 166 - C:09C5H LINE# 167 - C:09C8H LINE# 168 - ------- ENDPROC MAIN - ------- PROC UART_ISR - ------- DO - D:0021H SYMBOL last_byte - D:0022H SYMBOL sec_last_byte - D:0023H SYMBOL trd_last_byte - D:0024H SYMBOL four_last_byte - B:0020H.0 SYMBOL flag_recv - B:0020H.1 SYMBOL flag_need_read - D:0025H SYMBOL recv_cnt - ------- ENDDO - C:0800H LINE# 178 - C:0809H LINE# 188 - C:080FH LINE# 189 - C:080FH LINE# 190 - C:0811H LINE# 191 - C:0825H LINE# 194 - C:0825H LINE# 195 - C:082CH LINE# 196 - C:082EH LINE# 197 - C:0831H LINE# 198 - C:0834H LINE# 199 - C:0837H LINE# 200 - C:083AH LINE# 201 - C:083DH LINE# 203 - C:083DH LINE# 204 - C:0851H LINE# 205 - C:0851H LINE# 206 - BL51 BANKED LINKER/LOCATER V6.22 02/02/2020 01:51:01 PAGE 7 - - - C:0853H LINE# 207 - C:0856H LINE# 208 - C:0856H LINE# 211 - C:0859H LINE# 212 - C:0862H LINE# 213 - C:0864H LINE# 214 - C:0866H LINE# 215 - C:086DH LINE# 216 - C:086FH LINE# 217 - C:0872H LINE# 218 - C:0875H LINE# 219 - C:0878H LINE# 220 - C:087BH LINE# 221 - C:087EH LINE# 222 - C:087EH LINE# 223 - C:087EH LINE# 225 - C:0880H LINE# 226 - C:0887H LINE# 227 - C:088AH LINE# 228 - C:0893H LINE# 229 - C:089BH LINE# 230 - C:089BH LINE# 231 - C:08A4H LINE# 232 - C:08ACH LINE# 233 - C:08ACH LINE# 234 - C:08B5H LINE# 235 - C:08BDH LINE# 236 - C:08BDH LINE# 238 - C:08BFH LINE# 239 - C:08C8H LINE# 240 - C:08CBH LINE# 241 - C:08CDH LINE# 242 - C:08CDH LINE# 243 - C:08CDH LINE# 244 - C:08D0H LINE# 245 - C:08D0H LINE# 246 - C:08D2H LINE# 247 - C:08D4H LINE# 248 - C:08D4H LINE# 249 - ------- ENDPROC UART_ISR - ------- PROC _SENDDATA - D:0007H SYMBOL dat - C:0B46H LINE# 256 - C:0B46H LINE# 257 - C:0B46H LINE# 258 - C:0B4AH LINE# 259 - C:0B4BH LINE# 261 - C:0B4DH LINE# 262 - C:0B4FH LINE# 263 - C:0B52H LINE# 264 - ------- ENDPROC _SENDDATA - ------- PROC _SENDSTRING - D:000BH SYMBOL s - C:0A9BH LINE# 271 - C:0AA1H LINE# 272 - C:0AA1H LINE# 273 - C:0AACH LINE# 274 - BL51 BANKED LINKER/LOCATER V6.22 02/02/2020 01:51:01 PAGE 8 - - - C:0AACH LINE# 275 - C:0AAFH LINE# 276 - C:0AC4H LINE# 277 - C:0AC6H LINE# 278 - ------- ENDPROC _SENDSTRING - ------- PROC _SENDWIFI - D:0008H SYMBOL dat - C:0B0DH LINE# 279 - C:0B13H LINE# 280 - C:0B1CH LINE# 281 - C:0B1FH LINE# 282 - ------- ENDPROC _SENDWIFI - ------- ENDMOD MAIN - - ------- MODULE ?C?CLDPTR - C:0A22H PUBLIC ?C?CLDPTR - ------- ENDMOD ?C?CLDPTR - - ------- MODULE ?C?MEMSET - C:0A3BH PUBLIC ?C?MEMSET - ------- ENDMOD ?C?MEMSET - -*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS - SEGMENT: ?PR?DELAY500MS?MAIN - -*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS - SEGMENT: ?PR?_SENDWIFI?MAIN - -****************************************************************************** -* RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT; USED: 02A7H BYTE (33%) * -****************************************************************************** - -Program Size: data=67.0 xdata=0 code=877 -LINK/LOCATE RUN COMPLETE. 2 WARNING(S), 0 ERROR(S) diff --git a/c51/relay_controller/relay.hex b/c51/relay_controller/relay.hex deleted file mode 100644 index f92379b..0000000 --- a/c51/relay_controller/relay.hex +++ /dev/null @@ -1,69 +0,0 @@ -:030000000208DB18 -:0C08DB00787FE4F6D8FD758153020922F5 -:1009CA000000415445300D0A0000000000000000FC -:1009DA00000000000000000000000000000000000D -:1009EA0041542B43495053544152543D225443508D -:1009FA00222C223139322E3136382E322E313038ED -:100A0A00222C383038300D0A0041542B43495053B8 -:080A1A00454E443D350D0A0074 -:100A6700C103C102C1051E360000000000000000DE -:100A7700000000000000000000000000000000006F -:100A8700000000000000012600013500C100C1017F -:030A970001250036 -:070B5C0053A27F43A2802297 -:040B630053A27F22F8 -:0E0B280000007F7F7EE97D94DDFEDEFCDFFABB -:010B3600229C -:0E0B370000007F167E037DE3DDFEDEFCDFFAAC -:010B4500228D -:080B53007F0B7EF6DEFEDFFCE5 -:010B5B002277 -:100AF00053877F759850438E40538EFE53890F4322 -:0D0B00008920758BFD758DFDC2ABD28E2254 -:100AC700200203300522120B637B007A007936126D -:100AD7000A9B7E007F1E7D007B007A007936120A12 -:090AE7003BC202C205120B5C22A5 -:10096700E4FFC206C207120B28120B28120B28122B -:100977000AF0F59175923FD2ACD2AFD29C120B5CC4 -:10098700120B53120B53FFEF04FE74272FF8A60622 -:100997000FBF0DF320060ED2067BFF7A0979CC1222 -:1009A7000A9B120B28120AC7300613200710D2071A -:1009B7007BFF7A0979EA120A9B120B28D203120AE3 -:0309C700C780D115 -:03002300020800D0 -:09080000C0E0C0D075D000C000BA -:100809002098030208CDC298E521640D7026E59968 -:10081900B40A21E5266401601B20031874372526D4 -:10082900F87600D20275260075220075210075231D -:1008390000752400E521B43A14E522B4350FE52307 -:10084900B42C0AE524B44405D201752505300125E7 -:10085900D3E52564809480400415258018743725D4 -:1008690026F876CAD2027526007522007521007510 -:100879002300752400C29874362526F8A69985990F -:1008890021D3E52664809480400874352526F8E64E -:10089900F522D3E52664809481400874342526F82E -:1008A900E6F522D3E526648094824008743425262F -:1008B900F8E6F5220526D3E5266480949D40057562 -:0B08C9002600D205309904C299C20439 -:0708D400D000D0D0D0E032CB -:0D0B460030040122EFD204F5992004FD22B5 -:100A9B008B0B8A0C890DAB0BAA0CA90D120A2260C9 -:100AAB001A120B53AB0B050DE50DAA0C7002050CBE -:0C0ABB0014F9120A22FF120B4680DB2205 -:100B0D008B088A09890A7BFF7A0A7913120A9B12CC -:0B0B1D000B28AB08AA09A90A020A9BDA -:1008E700020967E493A3F8E493A34003F68001F2B7 -:1008F70008DFF48029E493A3F85407240CC8C33312 -:10090700C4540F4420C8834004F456800146F6DFE0 -:10091700E4800B0102040810204080900A67E47EFF -:10092700019360BCA3FF543F30E509541FFEE493D5 -:10093700A360010ECF54C025E060A840B8E493A39C -:10094700FAE493A3F8E493A3C8C582C8CAC583CAC7 -:10095700F0A3C8C582C8CAC583CADFE9DEE780BE7F -:010A9A00005B -:100A2200BB010689828A83E0225002E722BBFE02D2 -:090A3200E32289828A83E4932205 -:100A3B00EF4E6012EF60010EEDBB010B89828A83D2 -:100A4B00F0A3DFFCDEFA2289F05007F709DFFCA9DF -:0C0A5B00F022BBFEFCF309DFFCA9F02236 -:00000001FF diff --git a/nuvoton/m451/9G/PWM_DeadZone/KEIL/PWM_DeadZone.uvoptx b/nuvoton/m451/9G/PWM_DeadZone/KEIL/PWM_DeadZone.uvoptx deleted file mode 100644 index 755f406..0000000 --- a/nuvoton/m451/9G/PWM_DeadZone/KEIL/PWM_DeadZone.uvoptx +++ /dev/null @@ -1,208 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - 0 - - - - 0 - 0 - - - - PWM_DeadZone - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - 0 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 0 - 0 - 1 - - 6 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 0 - 0 - 7 - - - - - - - - - - - NULink\Nu_Link.dll - - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0M451_AP_256 -FS00 -FL040000 -FP0($$Device:M453VG6AE$Flash\M451_AP_256.FLM)) - - - - - 0 - - - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - 0 - 0 - 0 - - - - - - - - - - - - - User - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - ..\main.c - main.c - 0 - 0 - - - - - ::CMSIS - 0 - 0 - 0 - 1 - - - - ::Device - 1 - 0 - 0 - 1 - - -
diff --git a/nuvoton/m451/9G/PWM_DeadZone/KEIL/PWM_DeadZone.uvprojx b/nuvoton/m451/9G/PWM_DeadZone/KEIL/PWM_DeadZone.uvprojx deleted file mode 100644 index 17242d0..0000000 --- a/nuvoton/m451/9G/PWM_DeadZone/KEIL/PWM_DeadZone.uvprojx +++ /dev/null @@ -1,470 +0,0 @@ - - - - 2.1 - -
### uVision Project, (C) Keil Software
- - - - PWM_DeadZone - 0x4 - ARM-ADS - 5060750::V5.06 update 6 (build 750)::ARMCC - 0 - - - M453VG6AE - Nuvoton - Nuvoton.NuMicro_DFP.1.2.0 - http://www.nuvoton.com/hq/enu/Documents/KEILSoftwarePack - IRAM(0x20000000,0x8000) IROM(0x00000000,0x40000) CPUTYPE("Cortex-M4") FPU2 CLOCK(12000000) - - - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0M451_AP_256 -FS00 -FL040000 -FP0($$Device:M453VG6AE$Flash\M451_AP_256.FLM)) - 8196 - $$Device:M453VG6AE$Device\M451\Include\M451Series.h - - - - - - - - - - $$Device:M453VG6AE$SVD\Nuvoton\M451_v1.svd - 0 - 0 - - - - - - - 0 - 0 - 0 - 0 - 1 - - .\obj\ - PWM_DeadZone - 1 - 0 - 0 - 1 - 1 - .\lst\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 1 - 1 - fromelf --bin ".\obj\@L.axf" --output ".\obj\@L.bin" - fromelf --text -c ".\obj\@L.axf" --output ".\obj\@L.txt" - 0 - 0 - 0 - 0 - - 1 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - - DARMCM1.DLL - - SARMCM3.DLL - - TARMCM1.DLL - - - - - 1 - 0 - 0 - 0 - 16 - - - - - 1 - 0 - 0 - 1 - 1 - 4096 - - 1 - BIN\UL2CM3.DLL - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - "Cortex-M4" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 2 - 0 - 0 - 0 - 8 - 0 - 0 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0x8000 - - - 1 - 0x0 - 0x40000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x40000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0x8000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 2 - 0 - 0 - 0 - 0 - 0 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - - - - - ..\..\..\..\Library\Device\Nuvoton\M451Series\Include;..\..\..\..\Library\StdDriver\inc;..\..\..\..\Library\CMSIS\Include - - - - 1 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 0 - 0 - 0 - 0 - 1 - 0 - 0x00000000 - 0x20000000 - - - - - --map --first='startup_M451series.o(RESET)' --datacompressor=off --info=inline --entry Reset_Handler - - - - - - - - User - - - main.c - 1 - ..\main.c - - - - - ::CMSIS - - - ::Device - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - RTE\Device\M453VG6AE\retarget.c - - - - - - - - RTE\Device\M453VG6AE\startup_M451Series.s - - - - - - - - RTE\Device\M453VG6AE\system_M451Series.c - - - - - - - - - -
diff --git a/nuvoton/m451/OLED/M451/OLED_TEST/Listings/OLED.map b/nuvoton/m451/OLED/M451/OLED_TEST/Listings/OLED.map index cf53d28..04a42f1 100644 --- a/nuvoton/m451/OLED/M451/OLED_TEST/Listings/OLED.map +++ b/nuvoton/m451/OLED/M451/OLED_TEST/Listings/OLED.map @@ -41,31 +41,6 @@ Section Cross References ssd1306.o(i.print_C) refers to ssd1306.o(.data) for F8X16 ssd1306.o(i.print_Line) refers to ssd1306.o(i.print_C) for print_C ssd1306.o(i.print_Line) refers to strlen.o(.text) for strlen - retarget.o(.emb_text) refers to retarget.o(i.Hard_Fault_Handler) for Hard_Fault_Handler - retarget.o(i.Hard_Fault_Handler) refers to noretval__2printf.o(.text) for __2printf - retarget.o(i.Hard_Fault_Handler) refers to retarget.o(i.stackDump) for stackDump - retarget.o(i.SendChar) refers to retarget.o(i.SendChar_ToUART) for SendChar_ToUART - retarget.o(i._ttywrch) refers to retarget.o(i.SendChar) for SendChar - retarget.o(i.fgetc) refers to retarget.o(i.GetChar) for GetChar - retarget.o(i.fputc) refers to retarget.o(i.SendChar) for SendChar - retarget.o(i.stackDump) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent - retarget.o(i.stackDump) refers to _printf_x.o(.ARM.Collect$$_printf_percent$$0000000C) for _printf_x - retarget.o(i.stackDump) refers to _printf_hex_int.o(.text) for _printf_longlong_hex - retarget.o(i.stackDump) refers to noretval__2printf.o(.text) for __2printf - startup_m451series.o(STACK) refers (Special) to heapauxi.o(.text) for __use_two_region_memory - startup_m451series.o(HEAP) refers (Special) to heapauxi.o(.text) for __use_two_region_memory - startup_m451series.o(RESET) refers (Special) to heapauxi.o(.text) for __use_two_region_memory - startup_m451series.o(RESET) refers to startup_m451series.o(STACK) for __initial_sp - startup_m451series.o(RESET) refers to startup_m451series.o(.text) for Reset_Handler - startup_m451series.o(RESET) refers to retarget.o(.emb_text) for HardFault_Handler - startup_m451series.o(RESET) refers to main.o(i.I2C0_IRQHandler) for I2C0_IRQHandler - startup_m451series.o(.text) refers (Special) to heapauxi.o(.text) for __use_two_region_memory - startup_m451series.o(.text) refers to system_m451series.o(i.SystemInit) for SystemInit - startup_m451series.o(.text) refers to __main.o(!!!main) for __main - startup_m451series.o(.text) refers to startup_m451series.o(HEAP) for Heap_Mem - startup_m451series.o(.text) refers to startup_m451series.o(STACK) for Stack_Mem - system_m451series.o(i.SystemCoreClockUpdate) refers to system_m451series.o(i.CLK_GetPLLClockFreq) for CLK_GetPLLClockFreq - system_m451series.o(i.SystemCoreClockUpdate) refers to system_m451series.o(.data) for PllClock clk.o(i.CLK_DisableCKO) refers to clk.o(i.CLK_DisableModuleClock) for CLK_DisableModuleClock clk.o(i.CLK_EnableCKO) refers to clk.o(i.CLK_EnableModuleClock) for CLK_EnableModuleClock clk.o(i.CLK_EnableCKO) refers to clk.o(i.CLK_SetModuleClock) for CLK_SetModuleClock @@ -99,6 +74,31 @@ Section Cross References uart.o(i.UART_SelectIrDAMode) refers to uart.o(.constdata) for .constdata uart.o(i.UART_SetLine_Config) refers to uart.o(i.CLK_GetPLLClockFreq) for CLK_GetPLLClockFreq uart.o(i.UART_SetLine_Config) refers to uart.o(.constdata) for .constdata + retarget.o(.emb_text) refers to retarget.o(i.Hard_Fault_Handler) for Hard_Fault_Handler + retarget.o(i.Hard_Fault_Handler) refers to noretval__2printf.o(.text) for __2printf + retarget.o(i.Hard_Fault_Handler) refers to retarget.o(i.stackDump) for stackDump + retarget.o(i.SendChar) refers to retarget.o(i.SendChar_ToUART) for SendChar_ToUART + retarget.o(i._ttywrch) refers to retarget.o(i.SendChar) for SendChar + retarget.o(i.fgetc) refers to retarget.o(i.GetChar) for GetChar + retarget.o(i.fputc) refers to retarget.o(i.SendChar) for SendChar + retarget.o(i.stackDump) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent + retarget.o(i.stackDump) refers to _printf_x.o(.ARM.Collect$$_printf_percent$$0000000C) for _printf_x + retarget.o(i.stackDump) refers to _printf_hex_int.o(.text) for _printf_longlong_hex + retarget.o(i.stackDump) refers to noretval__2printf.o(.text) for __2printf + startup_m451series.o(STACK) refers (Special) to heapauxi.o(.text) for __use_two_region_memory + startup_m451series.o(HEAP) refers (Special) to heapauxi.o(.text) for __use_two_region_memory + startup_m451series.o(RESET) refers (Special) to heapauxi.o(.text) for __use_two_region_memory + startup_m451series.o(RESET) refers to startup_m451series.o(STACK) for __initial_sp + startup_m451series.o(RESET) refers to startup_m451series.o(.text) for Reset_Handler + startup_m451series.o(RESET) refers to retarget.o(.emb_text) for HardFault_Handler + startup_m451series.o(RESET) refers to main.o(i.I2C0_IRQHandler) for I2C0_IRQHandler + startup_m451series.o(.text) refers (Special) to heapauxi.o(.text) for __use_two_region_memory + startup_m451series.o(.text) refers to system_m451series.o(i.SystemInit) for SystemInit + startup_m451series.o(.text) refers to __main.o(!!!main) for __main + startup_m451series.o(.text) refers to startup_m451series.o(HEAP) for Heap_Mem + startup_m451series.o(.text) refers to startup_m451series.o(STACK) for Stack_Mem + system_m451series.o(i.SystemCoreClockUpdate) refers to system_m451series.o(i.CLK_GetPLLClockFreq) for CLK_GetPLLClockFreq + system_m451series.o(i.SystemCoreClockUpdate) refers to system_m451series.o(.data) for PllClock __2printf.o(.text) refers to _printf_char_file.o(.text) for _printf_char_file __2printf.o(.text) refers to retarget.o(.data) for __stdout noretval__2printf.o(.text) refers to _printf_char_file.o(.text) for _printf_char_file @@ -253,17 +253,6 @@ Removing Unused input sections from the image. Removing ssd1306.o(.rrx_text), (6 bytes). Removing ssd1306.o(i.OLED_SingleRead), (220 bytes). Removing ssd1306.o(i.draw_LCD), (48 bytes). - Removing retarget.o(.rev16_text), (4 bytes). - Removing retarget.o(.revsh_text), (4 bytes). - Removing retarget.o(.rrx_text), (6 bytes). - Removing retarget.o(i.GetChar), (28 bytes). - Removing retarget.o(i.IsDebugFifoEmpty), (16 bytes). - Removing retarget.o(i._ttywrch), (12 bytes). - Removing retarget.o(i.fgetc), (10 bytes). - Removing retarget.o(i.kbhit), (16 bytes). - Removing system_m451series.o(.rev16_text), (4 bytes). - Removing system_m451series.o(.revsh_text), (4 bytes). - Removing system_m451series.o(.rrx_text), (6 bytes). Removing clk.o(.rev16_text), (4 bytes). Removing clk.o(.revsh_text), (4 bytes). Removing clk.o(.rrx_text), (6 bytes). @@ -364,6 +353,17 @@ Removing Unused input sections from the image. Removing uart.o(i.__NVIC_DisableIRQ), (60 bytes). Removing uart.o(i.__NVIC_EnableIRQ), (26 bytes). Removing uart.o(.constdata), (48 bytes). + Removing retarget.o(.rev16_text), (4 bytes). + Removing retarget.o(.revsh_text), (4 bytes). + Removing retarget.o(.rrx_text), (6 bytes). + Removing retarget.o(i.GetChar), (28 bytes). + Removing retarget.o(i.IsDebugFifoEmpty), (16 bytes). + Removing retarget.o(i._ttywrch), (12 bytes). + Removing retarget.o(i.fgetc), (10 bytes). + Removing retarget.o(i.kbhit), (16 bytes). + Removing system_m451series.o(.rev16_text), (4 bytes). + Removing system_m451series.o(.revsh_text), (4 bytes). + Removing system_m451series.o(.rrx_text), (6 bytes). 120 unused section(s) (total 3782 bytes) removed from the image. @@ -377,92 +377,92 @@ Image Symbol Table RESET 0x00000000 Section 320 startup_m451series.o(RESET) ../clib/angel/boardlib.s 0x00000000 Number 0 boardshut.o ABSOLUTE + ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit1.o ABSOLUTE ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit2.o ABSOLUTE ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit3.o ABSOLUTE - ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit1.o ABSOLUTE ../clib/angel/dczerorl2.s 0x00000000 Number 0 __dczerorl2.o ABSOLUTE ../clib/angel/handlers.s 0x00000000 Number 0 __scatter_zi.o ABSOLUTE - ../clib/angel/kernel.s 0x00000000 Number 0 rtexit2.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry.o ABSOLUTE + ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry4.o ABSOLUTE + ../clib/angel/kernel.s 0x00000000 Number 0 rtexit2.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 rtexit.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry2.o ABSOLUTE - ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry4.o ABSOLUTE ../clib/angel/rt.s 0x00000000 Number 0 rt_raise.o ABSOLUTE ../clib/angel/scatter.s 0x00000000 Number 0 __scatter.o ABSOLUTE ../clib/angel/startup.s 0x00000000 Number 0 __main.o ABSOLUTE ../clib/angel/sys.s 0x00000000 Number 0 sys_stackheap_outer.o ABSOLUTE - ../clib/angel/sys.s 0x00000000 Number 0 libspace.o ABSOLUTE ../clib/angel/sys.s 0x00000000 Number 0 indicate_semi.o ABSOLUTE ../clib/angel/sys.s 0x00000000 Number 0 use_no_semi.o ABSOLUTE + ../clib/angel/sys.s 0x00000000 Number 0 libspace.o ABSOLUTE ../clib/angel/sysapp.c 0x00000000 Number 0 sys_exit.o ABSOLUTE ../clib/angel/sysapp.c 0x00000000 Number 0 sys_command.o ABSOLUTE - ../clib/armsys.c 0x00000000 Number 0 no_argv.o ABSOLUTE + ../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE + ../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE ../clib/armsys.c 0x00000000 Number 0 _get_argv_nomalloc.o ABSOLUTE - ../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE - ../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE + ../clib/armsys.c 0x00000000 Number 0 no_argv.o ABSOLUTE ../clib/heapalloc.c 0x00000000 Number 0 hrguard.o ABSOLUTE ../clib/heapaux.c 0x00000000 Number 0 heapauxi.o ABSOLUTE - ../clib/libinit.s 0x00000000 Number 0 libinit.o ABSOLUTE - ../clib/libinit.s 0x00000000 Number 0 libinit2.o ABSOLUTE - ../clib/libinit.s 0x00000000 Number 0 libshutdown.o ABSOLUTE ../clib/libinit.s 0x00000000 Number 0 libshutdown2.o ABSOLUTE + ../clib/libinit.s 0x00000000 Number 0 libinit2.o ABSOLUTE + ../clib/libinit.s 0x00000000 Number 0 libinit.o ABSOLUTE + ../clib/libinit.s 0x00000000 Number 0 libshutdown.o ABSOLUTE ../clib/misc.s 0x00000000 Number 0 printf_stubs.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_hex_int_ptr.o ABSOLUTE ../clib/printf.c 0x00000000 Number 0 __printf.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_char_file.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_intcommon.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 noretval__2printf.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __2printf.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_hex_int.o ABSOLUTE ../clib/printf.c 0x00000000 Number 0 _printf_dec.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __printf_flags.o ABSOLUTE ../clib/printf.c 0x00000000 Number 0 __printf_nopercent.o ABSOLUTE ../clib/printf.c 0x00000000 Number 0 _printf_hex_ll.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_hex_int.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_char_common.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_hex_int_ptr.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_hex_int_ll.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_hex_ptr.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_hex_ll_ptr.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_char_file.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_intcommon.o ABSOLUTE ../clib/printf.c 0x00000000 Number 0 _printf_hex_int_ll_ptr.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __printf_flags.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __printf_ss.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_char_common.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_hex_ll_ptr.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_hex_ptr.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_hex_int_ll.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 noretval__2printf.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __2printf.o ABSOLUTE ../clib/printf.c 0x00000000 Number 0 __printf_flags_ss.o ABSOLUTE ../clib/printf.c 0x00000000 Number 0 __printf_wp.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __printf_ss.o ABSOLUTE ../clib/printf.c 0x00000000 Number 0 __printf_flags_wp.o ABSOLUTE ../clib/printf.c 0x00000000 Number 0 __printf_ss_wp.o ABSOLUTE ../clib/printf.c 0x00000000 Number 0 __printf_flags_ss_wp.o ABSOLUTE ../clib/printf_percent.s 0x00000000 Number 0 _printf_percent_end.o ABSOLUTE - ../clib/printf_percent.s 0x00000000 Number 0 _printf_percent.o ABSOLUTE ../clib/printf_percent.s 0x00000000 Number 0 _printf_d.o ABSOLUTE + ../clib/printf_percent.s 0x00000000 Number 0 _printf_percent.o ABSOLUTE ../clib/printf_percent.s 0x00000000 Number 0 _printf_x.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_abrt_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_general.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 __raise.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_exit.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_formal.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_outer.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_inner.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 __raise.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_stak_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_other.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_segv_inner.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_cppl_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_pvfn_inner.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_rtred_inner.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 defsig_abrt_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_fpe_inner.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 defsig_rtred_inner.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 defsig_cppl_inner.o ABSOLUTE ../clib/signal.s 0x00000000 Number 0 defsig.o ABSOLUTE ../clib/stdlib.c 0x00000000 Number 0 exit.o ABSOLUTE ../clib/string.c 0x00000000 Number 0 strlen.o ABSOLUTE ../fplib/fpinit.s 0x00000000 Number 0 fpinit.o ABSOLUTE - D:\\programs\\mdk\\Arm\\Packs\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\clk.c 0x00000000 Number 0 clk.o ABSOLUTE - D:\\programs\\mdk\\Arm\\Packs\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\gpio.c 0x00000000 Number 0 gpio.o ABSOLUTE - D:\\programs\\mdk\\Arm\\Packs\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\i2c.c 0x00000000 Number 0 i2c.o ABSOLUTE - D:\\programs\\mdk\\Arm\\Packs\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\sc.c 0x00000000 Number 0 sc.o ABSOLUTE - D:\\programs\\mdk\\Arm\\Packs\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\sys.c 0x00000000 Number 0 sys.o ABSOLUTE - D:\\programs\\mdk\\Arm\\Packs\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\uart.c 0x00000000 Number 0 uart.o ABSOLUTE - D:\programs\mdk\Arm\Packs\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\clk.c 0x00000000 Number 0 clk.o ABSOLUTE - D:\programs\mdk\Arm\Packs\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\gpio.c 0x00000000 Number 0 gpio.o ABSOLUTE - D:\programs\mdk\Arm\Packs\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\i2c.c 0x00000000 Number 0 i2c.o ABSOLUTE - D:\programs\mdk\Arm\Packs\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\sc.c 0x00000000 Number 0 sc.o ABSOLUTE - D:\programs\mdk\Arm\Packs\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\sys.c 0x00000000 Number 0 sys.o ABSOLUTE - D:\programs\mdk\Arm\Packs\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\uart.c 0x00000000 Number 0 uart.o ABSOLUTE + D:\\programs\\mdk\\ARM\\PACK\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\clk.c 0x00000000 Number 0 clk.o ABSOLUTE + D:\\programs\\mdk\\ARM\\PACK\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\gpio.c 0x00000000 Number 0 gpio.o ABSOLUTE + D:\\programs\\mdk\\ARM\\PACK\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\i2c.c 0x00000000 Number 0 i2c.o ABSOLUTE + D:\\programs\\mdk\\ARM\\PACK\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\sc.c 0x00000000 Number 0 sc.o ABSOLUTE + D:\\programs\\mdk\\ARM\\PACK\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\sys.c 0x00000000 Number 0 sys.o ABSOLUTE + D:\\programs\\mdk\\ARM\\PACK\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\uart.c 0x00000000 Number 0 uart.o ABSOLUTE + D:\programs\mdk\ARM\PACK\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\clk.c 0x00000000 Number 0 clk.o ABSOLUTE + D:\programs\mdk\ARM\PACK\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\gpio.c 0x00000000 Number 0 gpio.o ABSOLUTE + D:\programs\mdk\ARM\PACK\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\i2c.c 0x00000000 Number 0 i2c.o ABSOLUTE + D:\programs\mdk\ARM\PACK\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\sc.c 0x00000000 Number 0 sc.o ABSOLUTE + D:\programs\mdk\ARM\PACK\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\sys.c 0x00000000 Number 0 sys.o ABSOLUTE + D:\programs\mdk\ARM\PACK\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\uart.c 0x00000000 Number 0 uart.o ABSOLUTE RTE\Device\M451VG6AE\retarget.c 0x00000000 Number 0 retarget.o ABSOLUTE RTE\Device\M451VG6AE\startup_M451Series.s 0x00000000 Number 0 startup_m451series.o ABSOLUTE RTE\Device\M451VG6AE\system_M451Series.c 0x00000000 Number 0 system_m451series.o ABSOLUTE @@ -547,10 +547,10 @@ Image Symbol Table i.CLK_EnableModuleClock 0x0000068c Section 0 clk.o(i.CLK_EnableModuleClock) i.CLK_EnablePLL 0x000006b8 Section 0 clk.o(i.CLK_EnablePLL) i.CLK_EnableXtalRC 0x00000830 Section 0 clk.o(i.CLK_EnableXtalRC) - i.CLK_GetPLLClockFreq 0x00000844 Section 0 system_m451series.o(i.CLK_GetPLLClockFreq) - CLK_GetPLLClockFreq 0x00000845 Thumb Code 84 system_m451series.o(i.CLK_GetPLLClockFreq) - i.CLK_GetPLLClockFreq 0x000008a8 Section 0 clk.o(i.CLK_GetPLLClockFreq) - CLK_GetPLLClockFreq 0x000008a9 Thumb Code 84 clk.o(i.CLK_GetPLLClockFreq) + i.CLK_GetPLLClockFreq 0x00000844 Section 0 clk.o(i.CLK_GetPLLClockFreq) + CLK_GetPLLClockFreq 0x00000845 Thumb Code 84 clk.o(i.CLK_GetPLLClockFreq) + i.CLK_GetPLLClockFreq 0x000008a8 Section 0 system_m451series.o(i.CLK_GetPLLClockFreq) + CLK_GetPLLClockFreq 0x000008a9 Thumb Code 84 system_m451series.o(i.CLK_GetPLLClockFreq) i.CLK_SetCoreClock 0x0000090c Section 0 clk.o(i.CLK_SetCoreClock) i.CLK_SetHCLK 0x000009bc Section 0 clk.o(i.CLK_SetHCLK) i.CLK_WaitClockReady 0x00000a38 Section 0 clk.o(i.CLK_WaitClockReady) @@ -848,7 +848,7 @@ Memory Map of the image Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x00000000 0x00000000 0x00000140 Data RO 363 RESET startup_m451series.o + 0x00000000 0x00000000 0x00000140 Data RO 1039 RESET startup_m451series.o 0x00000140 0x00000140 0x00000008 Code RO 1143 * !!!main c_w.l(__main.o) 0x00000148 0x00000148 0x00000034 Code RO 1309 !!!scatter c_w.l(__scatter.o) 0x0000017c 0x0000017c 0x0000005a Code RO 1307 !!dczerorl2 c_w.l(__dczerorl2.o) @@ -900,8 +900,8 @@ Memory Map of the image 0x00000224 0x00000224 0x00000004 Code RO 1232 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) 0x00000228 0x00000228 0x00000006 Code RO 1233 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) 0x0000022e 0x0000022e 0x00000002 PAD - 0x00000230 0x00000230 0x0000001c Code RO 270 .emb_text retarget.o - 0x0000024c 0x0000024c 0x00000074 Code RO 364 * .text startup_m451series.o + 0x00000230 0x00000230 0x0000001c Code RO 946 .emb_text retarget.o + 0x0000024c 0x0000024c 0x00000074 Code RO 1040 * .text startup_m451series.o 0x000002c0 0x000002c0 0x00000018 Code RO 1089 .text c_w.l(noretval__2printf.o) 0x000002d8 0x000002d8 0x00000078 Code RO 1093 .text c_w.l(_printf_dec.o) 0x00000350 0x00000350 0x00000058 Code RO 1098 .text c_w.l(_printf_hex_int.o) @@ -918,40 +918,40 @@ Memory Map of the image 0x00000670 0x00000670 0x00000002 Code RO 1252 .text c_w.l(use_no_semi.o) 0x00000672 0x00000672 0x00000000 Code RO 1254 .text c_w.l(indicate_semi.o) 0x00000672 0x00000672 0x00000002 PAD - 0x00000674 0x00000674 0x00000018 Code RO 420 i.CLK_DisablePLL clk.o - 0x0000068c 0x0000068c 0x0000002c Code RO 424 i.CLK_EnableModuleClock clk.o - 0x000006b8 0x000006b8 0x00000178 Code RO 425 i.CLK_EnablePLL clk.o - 0x00000830 0x00000830 0x00000014 Code RO 427 i.CLK_EnableXtalRC clk.o - 0x00000844 0x00000844 0x00000064 Code RO 371 i.CLK_GetPLLClockFreq system_m451series.o - 0x000008a8 0x000008a8 0x00000064 Code RO 434 i.CLK_GetPLLClockFreq clk.o - 0x0000090c 0x0000090c 0x000000b0 Code RO 437 i.CLK_SetCoreClock clk.o - 0x000009bc 0x000009bc 0x0000007c Code RO 438 i.CLK_SetHCLK clk.o - 0x00000a38 0x00000a38 0x00000028 Code RO 441 i.CLK_WaitClockReady clk.o + 0x00000674 0x00000674 0x00000018 Code RO 272 i.CLK_DisablePLL clk.o + 0x0000068c 0x0000068c 0x0000002c Code RO 276 i.CLK_EnableModuleClock clk.o + 0x000006b8 0x000006b8 0x00000178 Code RO 277 i.CLK_EnablePLL clk.o + 0x00000830 0x00000830 0x00000014 Code RO 279 i.CLK_EnableXtalRC clk.o + 0x00000844 0x00000844 0x00000064 Code RO 286 i.CLK_GetPLLClockFreq clk.o + 0x000008a8 0x000008a8 0x00000064 Code RO 1047 i.CLK_GetPLLClockFreq system_m451series.o + 0x0000090c 0x0000090c 0x000000b0 Code RO 289 i.CLK_SetCoreClock clk.o + 0x000009bc 0x000009bc 0x0000007c Code RO 290 i.CLK_SetHCLK clk.o + 0x00000a38 0x00000a38 0x00000028 Code RO 293 i.CLK_WaitClockReady clk.o 0x00000a60 0x00000a60 0x000000d8 Code RO 4 i.HalInit main.o - 0x00000b38 0x00000b38 0x0000002c Code RO 272 i.Hard_Fault_Handler retarget.o + 0x00000b38 0x00000b38 0x0000002c Code RO 948 i.Hard_Fault_Handler retarget.o 0x00000b64 0x00000b64 0x00000030 Code RO 5 i.I2C0_IRQHandler main.o - 0x00000b94 0x00000b94 0x0000000a Code RO 615 i.I2C_ClearTimeoutFlag i2c.o + 0x00000b94 0x00000b94 0x0000000a Code RO 473 i.I2C_ClearTimeoutFlag i2c.o 0x00000b9e 0x00000b9e 0x00000002 PAD - 0x00000ba0 0x00000ba0 0x00000018 Code RO 623 i.I2C_GetBusClockFreq i2c.o - 0x00000bb8 0x00000bb8 0x0000003c Code RO 627 i.I2C_Open i2c.o - 0x00000bf4 0x00000bf4 0x00000038 Code RO 640 i.I2C_SetSlaveAddr i2c.o + 0x00000ba0 0x00000ba0 0x00000018 Code RO 481 i.I2C_GetBusClockFreq i2c.o + 0x00000bb8 0x00000bb8 0x0000003c Code RO 485 i.I2C_Open i2c.o + 0x00000bf4 0x00000bf4 0x00000038 Code RO 498 i.I2C_SetSlaveAddr i2c.o 0x00000c2c 0x00000c2c 0x000000ac Code RO 154 i.Init_LCD ssd1306.o 0x00000cd8 0x00000cd8 0x00000098 Code RO 156 i.OLED_SingleWrite ssd1306.o - 0x00000d70 0x00000d70 0x0000000c Code RO 274 i.SendChar retarget.o - 0x00000d7c 0x00000d7c 0x00000030 Code RO 275 i.SendChar_ToUART retarget.o - 0x00000dac 0x00000dac 0x00000064 Code RO 372 i.SystemCoreClockUpdate system_m451series.o - 0x00000e10 0x00000e10 0x00000074 Code RO 373 i.SystemInit system_m451series.o + 0x00000d70 0x00000d70 0x0000000c Code RO 950 i.SendChar retarget.o + 0x00000d7c 0x00000d7c 0x00000030 Code RO 951 i.SendChar_ToUART retarget.o + 0x00000dac 0x00000dac 0x00000064 Code RO 1048 i.SystemCoreClockUpdate system_m451series.o + 0x00000e10 0x00000e10 0x00000074 Code RO 1049 i.SystemInit system_m451series.o 0x00000e84 0x00000e84 0x0000000e Code RO 1126 i._is_digit c_w.l(__printf_wp.o) 0x00000e92 0x00000e92 0x0000002a Code RO 157 i.clear_LCD ssd1306.o - 0x00000ebc 0x00000ebc 0x00000008 Code RO 277 i.ferror retarget.o - 0x00000ec4 0x00000ec4 0x00000010 Code RO 279 i.fputc retarget.o + 0x00000ebc 0x00000ebc 0x00000008 Code RO 953 i.ferror retarget.o + 0x00000ec4 0x00000ec4 0x00000010 Code RO 955 i.fputc retarget.o 0x00000ed4 0x00000ed4 0x000000b4 Code RO 7 i.main main.o 0x00000f88 0x00000f88 0x0000000e Code RO 159 i.oledWriteCommand ssd1306.o 0x00000f96 0x00000f96 0x0000000e Code RO 160 i.oledWriteData ssd1306.o 0x00000fa4 0x00000fa4 0x00000024 Code RO 161 i.oled_address ssd1306.o 0x00000fc8 0x00000fc8 0x00000050 Code RO 162 i.print_C ssd1306.o 0x00001018 0x00001018 0x00000024 Code RO 163 i.print_Line ssd1306.o - 0x0000103c 0x0000103c 0x000000a8 Code RO 281 i.stackDump retarget.o + 0x0000103c 0x0000103c 0x000000a8 Code RO 957 i.stackDump retarget.o 0x000010e4 0x000010e4 0x0000000a Code RO 1239 x$fpl$fpinit fz_wm.l(fpinit.o) 0x000010ee 0x000010ee 0x00000028 Data RO 1099 .constdata c_w.l(_printf_hex_int.o) 0x00001116 0x00001116 0x00000002 PAD @@ -965,8 +965,8 @@ Memory Map of the image 0x20000000 COMPRESSED 0x0000000e Data RW 8 .data main.o 0x2000000e COMPRESSED 0x00001018 Data RW 164 .data ssd1306.o 0x20001026 COMPRESSED 0x00000002 PAD - 0x20001028 COMPRESSED 0x00000008 Data RW 282 .data retarget.o - 0x20001030 COMPRESSED 0x0000002c Data RW 374 .data system_m451series.o + 0x20001028 COMPRESSED 0x00000008 Data RW 958 .data retarget.o + 0x20001030 COMPRESSED 0x0000002c Data RW 1050 .data system_m451series.o Execution Region ER_ZI (Exec base: 0x2000105c, Load base: 0x00001a90, Size: 0x00000464, Max: 0xffffffff, ABSOLUTE) @@ -975,8 +975,8 @@ Memory Map of the image 0x2000105c - 0x00000060 Zero RW 1181 .bss c_w.l(libspace.o) 0x200010bc 0x00001a90 0x00000004 PAD - 0x200010c0 - 0x00000000 Zero RW 362 HEAP startup_m451series.o - 0x200010c0 - 0x00000400 Zero RW 361 STACK startup_m451series.o + 0x200010c0 - 0x00000000 Zero RW 1038 HEAP startup_m451series.o + 0x200010c0 - 0x00000400 Zero RW 1037 STACK startup_m451series.o ============================================================================== @@ -986,16 +986,16 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug Object Name - 904 100 0 0 0 6054 clk.o - 150 12 0 0 0 3127 i2c.o - 444 128 0 14 0 239179 main.o - 324 132 0 8 0 5785 retarget.o + 904 100 0 0 0 20386 clk.o + 150 12 0 0 0 3103 i2c.o + 444 128 0 14 0 239171 main.o + 324 132 0 8 0 5781 retarget.o 546 10 0 4120 0 5080 ssd1306.o 116 36 320 0 1024 936 startup_m451series.o - 316 54 0 44 0 17295 system_m451series.o + 316 54 0 44 0 2947 system_m451series.o ---------------------------------------------------------------------- - 2802 472 352 4188 1024 277456 Object Totals + 2802 472 352 4188 1024 277404 Object Totals 0 0 32 0 0 0 (incl. Generated) 2 0 0 2 0 0 (incl. Padding) @@ -1058,8 +1058,8 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug - 4014 522 394 4188 1124 275392 Grand Totals - 4014 522 394 2392 1124 275392 ELF Image Totals (compressed) + 4014 522 394 4188 1124 275340 Grand Totals + 4014 522 394 2392 1124 275340 ELF Image Totals (compressed) 4014 522 394 2392 0 0 ROM Totals ============================================================================== diff --git a/nuvoton/m451/OLED/M451/OLED_TEST/Objects/OLED.axf b/nuvoton/m451/OLED/M451/OLED_TEST/Objects/OLED.axf index 130a6b758dde58b8d61a4a3c7ee5f99986b6de66..29beb4ef212eac7d8c482e569ec2f9785e206ae1 100644 GIT binary patch delta 19324 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 F^}krG;Zy(s diff --git a/nuvoton/m451/OLED/M451/OLED_TEST/Objects/OLED.lnp b/nuvoton/m451/OLED/M451/OLED_TEST/Objects/OLED.lnp index 66d7815..88e9c28 100644 --- a/nuvoton/m451/OLED/M451/OLED_TEST/Objects/OLED.lnp +++ b/nuvoton/m451/OLED/M451/OLED_TEST/Objects/OLED.lnp @@ -1,15 +1,15 @@ --cpu=Cortex-M4.fp ".\objects\main.o" ".\objects\ssd1306.o" -".\objects\retarget.o" -".\objects\startup_m451series.o" -".\objects\system_m451series.o" ".\objects\clk.o" ".\objects\gpio.o" ".\objects\i2c.o" ".\objects\sc.o" ".\objects\sys.o" ".\objects\uart.o" +".\objects\retarget.o" +".\objects\startup_m451series.o" +".\objects\system_m451series.o" --ro-base 0x00000000 --entry 0x00000000 --rw-base 0x20000000 --entry Reset_Handler --first __Vectors --strict --summary_stderr --info summarysizes --map --load_addr_map_info --xref --callgraph --symbols --info sizes --info totals --info unused --info veneers --list ".\Listings\OLED.map" -o .\Objects\OLED.axf \ No newline at end of file diff --git a/nuvoton/m451/roboticarm_controller/Listings/roboticarm_controller.map b/nuvoton/m451/roboticarm_controller/Listings/roboticarm_controller.map deleted file mode 100644 index b8124f4..0000000 --- a/nuvoton/m451/roboticarm_controller/Listings/roboticarm_controller.map +++ /dev/null @@ -1,1211 +0,0 @@ -Component: ARM Compiler 5.06 update 6 (build 750) Tool: armlink [4d35ed] - -============================================================================== - -Section Cross References - - main.o(i.GPIO_Direction_Init) refers to gpio.o(i.GPIO_SetMode) for GPIO_SetMode - main.o(i.NRF24L01Init) refers to clk.o(i.CLK_EnableModuleClock) for CLK_EnableModuleClock - main.o(i.NRF24L01Init) refers to sys.o(i.SYS_ResetModule) for SYS_ResetModule - main.o(i.NRF24L01Init) refers to clk.o(i.CLK_SetModuleClock) for CLK_SetModuleClock - main.o(i.PWMInit) refers to clk.o(i.CLK_EnableModuleClock) for CLK_EnableModuleClock - main.o(i.PWMInit) refers to sys.o(i.SYS_ResetModule) for SYS_ResetModule - main.o(i.PWMInit) refers to clk.o(i.CLK_SetModuleClock) for CLK_SetModuleClock - main.o(i.PWMInit) refers to pwm.o(i.PWM_ConfigOutputChannel) for PWM_ConfigOutputChannel - main.o(i.PWMInit) refers to pwm.o(i.PWM_EnableOutput) for PWM_EnableOutput - main.o(i.PWMInit) refers to pwm.o(i.PWM_EnablePeriodInt) for PWM_EnablePeriodInt - main.o(i.PWMInit) refers to main.o(i.__NVIC_EnableIRQ) for __NVIC_EnableIRQ - main.o(i.PWMInit) refers to pwm.o(i.PWM_Start) for PWM_Start - main.o(i.ParsePackage) refers to main.o(.data) for Axis1 - main.o(i.main) refers to rt_memclr_w.o(.text) for __aeabi_memclr4 - main.o(i.main) refers to gpio.o(i.GPIO_SetMode) for GPIO_SetMode - main.o(i.main) refers to main.o(i.GPIO_Direction_Init) for GPIO_Direction_Init - main.o(i.main) refers to spi_hal.o(i.Spi_init) for Spi_init - main.o(i.main) refers to 24l01.o(i.RX_Mode) for RX_Mode - main.o(i.main) refers to main.o(i.PWMInit) for PWMInit - main.o(i.main) refers to 24l01.o(i.NRF24L01_RxPacket) for NRF24L01_RxPacket - main.o(i.main) refers to main.o(i.ParsePackage) for ParsePackage - 24l01.o(i.EINT0_IRQHandler) refers to 24l01.o(i.delay_s) for delay_s - 24l01.o(i.EINT0_IRQHandler) refers to 24l01.o(i.NRF24L01_RxPacket) for NRF24L01_RxPacket - 24l01.o(i.EINT0_IRQHandler) refers to 24l01.o(i.NRFSetTxMode) for NRFSetTxMode - 24l01.o(i.EINT0_IRQHandler) refers to 24l01.o(.data) for gRecvPkg - 24l01.o(i.EINT0_IRQHandler) refers to 24l01.o(.bss) for Recv_Buf - 24l01.o(i.NRF24L01_CD_Detect) refers to spi_hal.o(i.nrf_read) for nrf_read - 24l01.o(i.NRF24L01_Monitor) refers to spi_hal.o(i.nrf_read) for nrf_read - 24l01.o(i.NRF24L01_Monitor) refers to spi_hal.o(i.nrf_write) for nrf_write - 24l01.o(i.NRF24L01_Read_Buf) refers to spi_hal.o(i.spi_enable) for spi_enable - 24l01.o(i.NRF24L01_Read_Buf) refers to spi_hal.o(i.spi_send) for spi_send - 24l01.o(i.NRF24L01_Read_Buf) refers to spi_hal.o(i.spi_read) for spi_read - 24l01.o(i.NRF24L01_Read_Buf) refers to spi_hal.o(i.spi_disable) for spi_disable - 24l01.o(i.NRF24L01_RxPacket) refers to spi_hal.o(i.nrf_read) for nrf_read - 24l01.o(i.NRF24L01_RxPacket) refers to 24l01.o(i.NRF24L01_Read_Buf) for NRF24L01_Read_Buf - 24l01.o(i.NRF24L01_RxPacket) refers to spi_hal.o(i.nrf_write) for nrf_write - 24l01.o(i.NRF24L01_RxPacket) refers to 24l01.o(.data) for RxCnt - 24l01.o(i.NRF24L01_TxPacket) refers to 24l01.o(i.delay_s) for delay_s - 24l01.o(i.NRF24L01_TxPacket) refers to spi_hal.o(i.nrf_writebuf) for nrf_writebuf - 24l01.o(i.NRF24L01_TxPacket) refers to spi_hal.o(i.nrf_read) for nrf_read - 24l01.o(i.NRF24L01_TxPacket) refers to spi_hal.o(i.nrf_write) for nrf_write - 24l01.o(i.NRF24L01_TxPacket) refers to spi_hal.o(i.nrf_wf) for nrf_wf - 24l01.o(i.NRFSetTxMode) refers to spi_hal.o(i.nrf_read) for nrf_read - 24l01.o(i.NRFSetTxMode) refers to spi_hal.o(i.nrf_write) for nrf_write - 24l01.o(i.NRFSetTxMode) refers to 24l01.o(i.delay_s) for delay_s - 24l01.o(i.NRFSetTxMode) refers to spi_hal.o(i.nrf_writebuf) for nrf_writebuf - 24l01.o(i.NRFSetTxMode) refers to 24l01.o(.data) for Curr_Mode - 24l01.o(i.NRFSwitchMode) refers to 24l01.o(i.NRFSetTxMode) for NRFSetTxMode - 24l01.o(i.NRFSwitchMode) refers to spi_hal.o(i.nrf_write) for nrf_write - 24l01.o(i.NRFSwitchMode) refers to 24l01.o(i.delay_s) for delay_s - 24l01.o(i.NRFSwitchMode) refers to 24l01.o(.data) for ifinit - 24l01.o(i.NRF_SetUpInterrupt) refers to gpio.o(i.GPIO_SetMode) for GPIO_SetMode - 24l01.o(i.NRF_SetUpInterrupt) refers to gpio.o(i.GPIO_EnableInt) for GPIO_EnableInt - 24l01.o(i.NrfDump) refers to spi_hal.o(i.nrf_read) for nrf_read - 24l01.o(i.NrfDump) refers to 24l01.o(i.delay_s) for delay_s - 24l01.o(i.RX_Mode) refers to spi_hal.o(i.nrf_read) for nrf_read - 24l01.o(i.RX_Mode) refers to spi_hal.o(i.nrf_write) for nrf_write - 24l01.o(i.RX_Mode) refers to 24l01.o(i.delay_s) for delay_s - 24l01.o(i.RX_Mode) refers to spi_hal.o(i.nrf_writebuf) for nrf_writebuf - 24l01.o(i.RX_Mode) refers to 24l01.o(.data) for Curr_Mode - 24l01.o(i.delay_mss) refers to 24l01.o(i.delay_s) for delay_s - spi_hal.o(i.NRFWriteTxDate) refers to spi_hal.o(i.spi_send) for spi_send - spi_hal.o(i.Spi_init) refers to gpio.o(i.GPIO_SetMode) for GPIO_SetMode - spi_hal.o(i.Spi_init) refers to clk.o(i.CLK_EnableModuleClock) for CLK_EnableModuleClock - spi_hal.o(i.Spi_init) refers to sys.o(i.SYS_ResetModule) for SYS_ResetModule - spi_hal.o(i.Spi_init) refers to clk.o(i.CLK_SetModuleClock) for CLK_SetModuleClock - spi_hal.o(i.Spi_init) refers to spi.o(i.SPI_Open) for SPI_Open - spi_hal.o(i.Spi_init) refers to spi.o(i.SPI_DisableAutoSS) for SPI_DisableAutoSS - spi_hal.o(i.nrf_read) refers to spi_hal.o(i.spi_enable) for spi_enable - spi_hal.o(i.nrf_read) refers to spi_hal.o(i.spi_send) for spi_send - spi_hal.o(i.nrf_read) refers to spi_hal.o(i.spi_read) for spi_read - spi_hal.o(i.nrf_read) refers to spi_hal.o(i.spi_disable) for spi_disable - spi_hal.o(i.nrf_wf) refers to spi_hal.o(i.spi_enable) for spi_enable - spi_hal.o(i.nrf_wf) refers to spi_hal.o(i.spi_send) for spi_send - spi_hal.o(i.nrf_wf) refers to spi_hal.o(i.spi_disable) for spi_disable - spi_hal.o(i.nrf_write) refers to spi_hal.o(i.spi_enable) for spi_enable - spi_hal.o(i.nrf_write) refers to spi_hal.o(i.spi_send) for spi_send - spi_hal.o(i.nrf_write) refers to spi_hal.o(i.spi_disable) for spi_disable - spi_hal.o(i.nrf_writebuf) refers to spi_hal.o(i.spi_enable) for spi_enable - spi_hal.o(i.nrf_writebuf) refers to spi_hal.o(i.spi_send) for spi_send - spi_hal.o(i.nrf_writebuf) refers to spi_hal.o(i.spi_disable) for spi_disable - spi_hal.o(i.spi_disable) refers to spi_hal.o(i.delayAny) for delayAny - spi_hal.o(i.spi_enable) refers to spi_hal.o(i.delayAny) for delayAny - interrupt.o(i.PWM0P0_IRQHandler) refers to pwm.o(i.PWM_EnableOutput) for PWM_EnableOutput - interrupt.o(i.PWM0P0_IRQHandler) refers to pwm.o(i.PWM_DisableOutput) for PWM_DisableOutput - interrupt.o(i.PWM0P0_IRQHandler) refers to pwm.o(i.PWM_ClearPeriodIntFlag) for PWM_ClearPeriodIntFlag - interrupt.o(i.PWM0P0_IRQHandler) refers to main.o(.data) for Axis1 - interrupt.o(i.PWM1P0_IRQHandler) refers to pwm.o(i.PWM_EnableOutput) for PWM_EnableOutput - interrupt.o(i.PWM1P0_IRQHandler) refers to pwm.o(i.PWM_DisableOutput) for PWM_DisableOutput - interrupt.o(i.PWM1P0_IRQHandler) refers to pwm.o(i.PWM_ClearPeriodIntFlag) for PWM_ClearPeriodIntFlag - interrupt.o(i.PWM1P0_IRQHandler) refers to main.o(.data) for Axis5 - clk.o(i.CLK_DisableCKO) refers to clk.o(i.CLK_DisableModuleClock) for CLK_DisableModuleClock - clk.o(i.CLK_EnableCKO) refers to clk.o(i.CLK_EnableModuleClock) for CLK_EnableModuleClock - clk.o(i.CLK_EnableCKO) refers to clk.o(i.CLK_SetModuleClock) for CLK_SetModuleClock - clk.o(i.CLK_EnablePLL) refers to clk.o(i.CLK_DisablePLL) for CLK_DisablePLL - clk.o(i.CLK_EnablePLL) refers to clk.o(i.CLK_WaitClockReady) for CLK_WaitClockReady - clk.o(i.CLK_EnablePLL) refers to clk.o(i.CLK_GetPLLClockFreq) for CLK_GetPLLClockFreq - clk.o(i.CLK_GetCPUFreq) refers to system_m451series.o(i.SystemCoreClockUpdate) for SystemCoreClockUpdate - clk.o(i.CLK_GetCPUFreq) refers to system_m451series.o(.data) for SystemCoreClock - clk.o(i.CLK_GetHCLKFreq) refers to system_m451series.o(i.SystemCoreClockUpdate) for SystemCoreClockUpdate - clk.o(i.CLK_GetHCLKFreq) refers to system_m451series.o(.data) for SystemCoreClock - clk.o(i.CLK_GetPCLK0Freq) refers to system_m451series.o(i.SystemCoreClockUpdate) for SystemCoreClockUpdate - clk.o(i.CLK_GetPCLK0Freq) refers to system_m451series.o(.data) for SystemCoreClock - clk.o(i.CLK_GetPCLK1Freq) refers to system_m451series.o(i.SystemCoreClockUpdate) for SystemCoreClockUpdate - clk.o(i.CLK_GetPCLK1Freq) refers to system_m451series.o(.data) for SystemCoreClock - clk.o(i.CLK_SetCoreClock) refers to clk.o(i.CLK_WaitClockReady) for CLK_WaitClockReady - clk.o(i.CLK_SetCoreClock) refers to clk.o(i.CLK_EnablePLL) for CLK_EnablePLL - clk.o(i.CLK_SetCoreClock) refers to clk.o(i.CLK_SetHCLK) for CLK_SetHCLK - clk.o(i.CLK_SetHCLK) refers to clk.o(i.CLK_WaitClockReady) for CLK_WaitClockReady - clk.o(i.CLK_SetHCLK) refers to system_m451series.o(i.SystemCoreClockUpdate) for SystemCoreClockUpdate - pwm.o(i.PWM_ConfigCaptureChannel) refers to pwm.o(i.CLK_GetPLLClockFreq) for CLK_GetPLLClockFreq - pwm.o(i.PWM_ConfigCaptureChannel) refers to system_m451series.o(i.SystemCoreClockUpdate) for SystemCoreClockUpdate - pwm.o(i.PWM_ConfigCaptureChannel) refers to system_m451series.o(.data) for SystemCoreClock - pwm.o(i.PWM_ConfigOutputChannel) refers to pwm.o(i.CLK_GetPLLClockFreq) for CLK_GetPLLClockFreq - pwm.o(i.PWM_ConfigOutputChannel) refers to system_m451series.o(i.SystemCoreClockUpdate) for SystemCoreClockUpdate - pwm.o(i.PWM_ConfigOutputChannel) refers to system_m451series.o(.data) for SystemCoreClock - spi.o(i.I2S_EnableMCLK) refers to spi.o(i.I2S_GetSourceClockFreq) for I2S_GetSourceClockFreq - spi.o(i.I2S_GetSourceClockFreq) refers to spi.o(i.CLK_GetPLLClockFreq) for CLK_GetPLLClockFreq - spi.o(i.I2S_GetSourceClockFreq) refers to clk.o(i.CLK_GetHCLKFreq) for CLK_GetHCLKFreq - spi.o(i.I2S_Open) refers to spi.o(i.I2S_GetSourceClockFreq) for I2S_GetSourceClockFreq - spi.o(i.I2S_Open) refers to clk.o(i.CLK_GetHCLKFreq) for CLK_GetHCLKFreq - spi.o(i.SPI_GetBusClock) refers to clk.o(i.CLK_GetHCLKFreq) for CLK_GetHCLKFreq - spi.o(i.SPI_GetBusClock) refers to spi.o(i.CLK_GetPLLClockFreq) for CLK_GetPLLClockFreq - spi.o(i.SPI_Open) refers to clk.o(i.CLK_GetHCLKFreq) for CLK_GetHCLKFreq - spi.o(i.SPI_Open) refers to spi.o(i.CLK_GetPLLClockFreq) for CLK_GetPLLClockFreq - spi.o(i.SPI_SetBusClock) refers to clk.o(i.CLK_GetHCLKFreq) for CLK_GetHCLKFreq - spi.o(i.SPI_SetBusClock) refers to spi.o(i.CLK_GetPLLClockFreq) for CLK_GetPLLClockFreq - retarget.o(.emb_text) refers to retarget.o(i.Hard_Fault_Handler) for Hard_Fault_Handler - retarget.o(i.Hard_Fault_Handler) refers to noretval__2printf.o(.text) for __2printf - retarget.o(i.Hard_Fault_Handler) refers to retarget.o(i.stackDump) for stackDump - retarget.o(i.SendChar) refers to retarget.o(i.SendChar_ToUART) for SendChar_ToUART - retarget.o(i._ttywrch) refers to retarget.o(i.SendChar) for SendChar - retarget.o(i.fgetc) refers to retarget.o(i.GetChar) for GetChar - retarget.o(i.fputc) refers to retarget.o(i.SendChar) for SendChar - retarget.o(i.stackDump) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent - retarget.o(i.stackDump) refers to _printf_x.o(.ARM.Collect$$_printf_percent$$0000000C) for _printf_x - retarget.o(i.stackDump) refers to _printf_hex_int.o(.text) for _printf_longlong_hex - retarget.o(i.stackDump) refers to noretval__2printf.o(.text) for __2printf - startup_m451series.o(STACK) refers (Special) to heapauxi.o(.text) for __use_two_region_memory - startup_m451series.o(HEAP) refers (Special) to heapauxi.o(.text) for __use_two_region_memory - startup_m451series.o(RESET) refers (Special) to heapauxi.o(.text) for __use_two_region_memory - startup_m451series.o(RESET) refers to startup_m451series.o(STACK) for __initial_sp - startup_m451series.o(RESET) refers to startup_m451series.o(.text) for Reset_Handler - startup_m451series.o(RESET) refers to retarget.o(.emb_text) for HardFault_Handler - startup_m451series.o(RESET) refers to 24l01.o(i.EINT0_IRQHandler) for EINT0_IRQHandler - startup_m451series.o(RESET) refers to interrupt.o(i.PWM0P0_IRQHandler) for PWM0P0_IRQHandler - startup_m451series.o(RESET) refers to interrupt.o(i.PWM1P0_IRQHandler) for PWM1P0_IRQHandler - startup_m451series.o(.text) refers (Special) to heapauxi.o(.text) for __use_two_region_memory - startup_m451series.o(.text) refers to system_m451series.o(i.SystemInit) for SystemInit - startup_m451series.o(.text) refers to __main.o(!!!main) for __main - startup_m451series.o(.text) refers to startup_m451series.o(HEAP) for Heap_Mem - startup_m451series.o(.text) refers to startup_m451series.o(STACK) for Stack_Mem - system_m451series.o(i.SystemCoreClockUpdate) refers to system_m451series.o(i.CLK_GetPLLClockFreq) for CLK_GetPLLClockFreq - system_m451series.o(i.SystemCoreClockUpdate) refers to system_m451series.o(.data) for PllClock - __2printf.o(.text) refers to _printf_char_file.o(.text) for _printf_char_file - __2printf.o(.text) refers to retarget.o(.data) for __stdout - noretval__2printf.o(.text) refers to _printf_char_file.o(.text) for _printf_char_file - noretval__2printf.o(.text) refers to retarget.o(.data) for __stdout - __printf.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent - _printf_hex_ll.o(.text) refers to _printf_intcommon.o(.text) for _printf_int_common - _printf_hex_ll.o(.text) refers to _printf_hex_ll.o(.constdata) for .constdata - _printf_hex_int.o(.text) refers to _printf_intcommon.o(.text) for _printf_int_common - _printf_hex_int.o(.text) refers to _printf_hex_int.o(.constdata) for .constdata - _printf_hex_int_ll.o(.text) refers to _printf_intcommon.o(.text) for _printf_int_common - _printf_hex_int_ll.o(.text) refers to _printf_hex_int_ll.o(.constdata) for .constdata - _printf_hex_ptr.o(.text) refers to _printf_intcommon.o(.text) for _printf_int_common - _printf_hex_ptr.o(.text) refers to _printf_hex_ptr.o(.constdata) for .constdata - _printf_hex_int_ptr.o(.text) refers to _printf_intcommon.o(.text) for _printf_int_common - _printf_hex_int_ptr.o(.text) refers to _printf_hex_int_ptr.o(.constdata) for .constdata - _printf_hex_ll_ptr.o(.text) refers to _printf_intcommon.o(.text) for _printf_int_common - _printf_hex_ll_ptr.o(.text) refers to _printf_hex_ll_ptr.o(.constdata) for .constdata - _printf_hex_int_ll_ptr.o(.text) refers to _printf_intcommon.o(.text) for _printf_int_common - _printf_hex_int_ll_ptr.o(.text) refers to _printf_hex_int_ll_ptr.o(.constdata) for .constdata - __printf_flags.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent - __printf_flags.o(.text) refers to __printf_flags.o(.constdata) for .constdata - __printf_ss.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent - __printf_flags_ss.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent - __printf_flags_ss.o(.text) refers to __printf_flags_ss.o(.constdata) for .constdata - __printf_wp.o(.text) refers to __printf_wp.o(i._is_digit) for _is_digit - __printf_wp.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent - __printf_flags_wp.o(.text) refers to __printf_wp.o(i._is_digit) for _is_digit - __printf_flags_wp.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent - __printf_flags_wp.o(.text) refers to __printf_flags_wp.o(.constdata) for .constdata - __printf_ss_wp.o(.text) refers to __printf_wp.o(i._is_digit) for _is_digit - __printf_ss_wp.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent - __printf_flags_ss_wp.o(.text) refers to __printf_wp.o(i._is_digit) for _is_digit - __printf_flags_ss_wp.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent - __printf_flags_ss_wp.o(.text) refers to __printf_flags_ss_wp.o(.constdata) for .constdata - _printf_x.o(.ARM.Collect$$_printf_percent$$0000000C) refers (Weak) to _printf_hex_int.o(.text) for _printf_int_hex - _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) refers (Special) to _printf_percent_end.o(.ARM.Collect$$_printf_percent$$00000017) for _printf_percent_end - __main.o(!!!main) refers to __rtentry.o(.ARM.Collect$$rtentry$$00000000) for __rt_entry - __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) for __rt_entry_li - __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) for __rt_entry_main - __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) for __rt_entry_postli_1 - __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$00000009) for __rt_entry_postsh_1 - __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$00000002) for __rt_entry_presh_1 - __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry4.o(.ARM.Collect$$rtentry$$00000004) for __rt_entry_sh - _printf_char_file.o(.text) refers to _printf_char_common.o(.text) for _printf_char_common - _printf_char_file.o(.text) refers to retarget.o(i.ferror) for ferror - _printf_char_file.o(.text) refers to retarget.o(i.fputc) for fputc - __rtentry2.o(.ARM.Collect$$rtentry$$00000008) refers to boardinit2.o(.text) for _platform_post_stackheap_init - __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) refers to libinit.o(.ARM.Collect$$libinit$$00000000) for __rt_lib_init - __rtentry2.o(.ARM.Collect$$rtentry$$0000000B) refers to boardinit3.o(.text) for _platform_post_lib_init - __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) refers to main.o(i.main) for main - __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) refers to exit.o(.text) for exit - __rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$00000001) for .ARM.Collect$$rtentry$$00000001 - __rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$00000008) for .ARM.Collect$$rtentry$$00000008 - __rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) for .ARM.Collect$$rtentry$$0000000A - __rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000B) for .ARM.Collect$$rtentry$$0000000B - __rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) for .ARM.Collect$$rtentry$$0000000D - __rtentry4.o(.ARM.Collect$$rtentry$$00000004) refers to sys_stackheap_outer.o(.text) for __user_setup_stackheap - __rtentry4.o(.ARM.exidx) refers to __rtentry4.o(.ARM.Collect$$rtentry$$00000004) for .ARM.Collect$$rtentry$$00000004 - _printf_char_common.o(.text) refers to __printf_wp.o(.text) for __printf - sys_stackheap_outer.o(.text) refers to libspace.o(.text) for __user_perproc_libspace - sys_stackheap_outer.o(.text) refers to startup_m451series.o(.text) for __user_initial_stackheap - exit.o(.text) refers to rtexit.o(.ARM.Collect$$rtexit$$00000000) for __rt_exit - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000002E) for __rt_lib_init_alloca_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000002C) for __rt_lib_init_argv_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001B) for __rt_lib_init_atexit_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000021) for __rt_lib_init_clock_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000032) for __rt_lib_init_cpp_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000030) for __rt_lib_init_exceptions_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000001) for __rt_lib_init_fp_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001F) for __rt_lib_init_fp_trap_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000023) for __rt_lib_init_getenv_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000000A) for __rt_lib_init_heap_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000011) for __rt_lib_init_lc_collate_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000013) for __rt_lib_init_lc_ctype_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000015) for __rt_lib_init_lc_monetary_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000017) for __rt_lib_init_lc_numeric_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000019) for __rt_lib_init_lc_time_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000004) for __rt_lib_init_preinit_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000000E) for __rt_lib_init_rand_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000033) for __rt_lib_init_return - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001D) for __rt_lib_init_signal_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000025) for __rt_lib_init_stdio_1 - libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000000C) for __rt_lib_init_user_alloc_1 - libspace.o(.text) refers to libspace.o(.bss) for __libspace_start - rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for __rt_exit_exit - rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for __rt_exit_ls - rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000002) for __rt_exit_prels_1 - rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for __rt_exit_exit - rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for __rt_exit_ls - rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000002) for __rt_exit_prels_1 - rtexit.o(.ARM.exidx) refers to rtexit.o(.ARM.Collect$$rtexit$$00000000) for .ARM.Collect$$rtexit$$00000000 - libinit2.o(.ARM.Collect$$libinit$$00000001) refers to fpinit.o(x$fpl$fpinit) for _fp_init - libinit2.o(.ARM.Collect$$libinit$$00000010) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F - libinit2.o(.ARM.Collect$$libinit$$00000012) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F - libinit2.o(.ARM.Collect$$libinit$$00000014) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F - libinit2.o(.ARM.Collect$$libinit$$00000016) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F - libinit2.o(.ARM.Collect$$libinit$$00000018) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F - libinit2.o(.ARM.Collect$$libinit$$00000026) refers to argv_veneer.o(.emb_text) for __ARM_argv_veneer - libinit2.o(.ARM.Collect$$libinit$$00000027) refers to argv_veneer.o(.emb_text) for __ARM_argv_veneer - rtexit2.o(.ARM.Collect$$rtexit$$00000003) refers to libshutdown.o(.ARM.Collect$$libshutdown$$00000000) for __rt_lib_shutdown - rtexit2.o(.ARM.Collect$$rtexit$$00000004) refers to sys_exit.o(.text) for _sys_exit - rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000001) for .ARM.Collect$$rtexit$$00000001 - rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for .ARM.Collect$$rtexit$$00000003 - rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for .ARM.Collect$$rtexit$$00000004 - argv_veneer.o(.emb_text) refers to no_argv.o(.text) for __ARM_get_argv - sys_exit.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting - sys_exit.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function - _get_argv_nomalloc.o(.text) refers (Special) to hrguard.o(.text) for __heap_region$guard - _get_argv_nomalloc.o(.text) refers to defsig_rtmem_outer.o(.text) for __rt_SIGRTMEM - _get_argv_nomalloc.o(.text) refers to sys_command.o(.text) for _sys_command_string - libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) for __rt_lib_shutdown_cpp_1 - libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000007) for __rt_lib_shutdown_fp_trap_1 - libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) for __rt_lib_shutdown_heap_1 - libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000010) for __rt_lib_shutdown_return - libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A) for __rt_lib_shutdown_signal_1 - libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) for __rt_lib_shutdown_stdio_1 - libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) for __rt_lib_shutdown_user_alloc_1 - sys_command.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting - sys_command.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function - defsig_rtmem_outer.o(.text) refers to defsig_rtmem_inner.o(.text) for __rt_SIGRTMEM_inner - defsig_rtmem_outer.o(.text) refers to defsig_exit.o(.text) for __sig_exit - defsig_rtmem_formal.o(.text) refers to rt_raise.o(.text) for __rt_raise - rt_raise.o(.text) refers to __raise.o(.text) for __raise - rt_raise.o(.text) refers to sys_exit.o(.text) for _sys_exit - defsig_exit.o(.text) refers to sys_exit.o(.text) for _sys_exit - defsig_rtmem_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display - __raise.o(.text) refers to defsig.o(CL$$defsig) for __default_signal_handler - defsig_general.o(.text) refers to retarget.o(i._ttywrch) for _ttywrch - defsig.o(CL$$defsig) refers to defsig_rtmem_inner.o(.text) for __rt_SIGRTMEM_inner - defsig_abrt_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display - defsig_fpe_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display - defsig_rtred_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display - defsig_stak_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display - defsig_pvfn_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display - defsig_cppl_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display - defsig_segv_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display - defsig_other.o(.text) refers to defsig_general.o(.text) for __default_signal_display - - -============================================================================== - -Removing Unused input sections from the image. - - Removing main.o(.rev16_text), (4 bytes). - Removing main.o(.revsh_text), (4 bytes). - Removing main.o(.rrx_text), (6 bytes). - Removing main.o(i.NRF24L01Init), (84 bytes). - Removing main.o(i.delay_1s), (44 bytes). - Removing 24l01.o(.rev16_text), (4 bytes). - Removing 24l01.o(.revsh_text), (4 bytes). - Removing 24l01.o(.rrx_text), (6 bytes). - Removing 24l01.o(i.NRF24L01_CD_Detect), (40 bytes). - Removing 24l01.o(i.NRF24L01_Monitor), (42 bytes). - Removing 24l01.o(i.NRF24L01_TxPacket), (96 bytes). - Removing 24l01.o(i.NRFSwitchMode), (120 bytes). - Removing 24l01.o(i.NRF_Init), (2 bytes). - Removing 24l01.o(i.NRF_SetUpInterrupt), (52 bytes). - Removing 24l01.o(i.NrfDump), (104 bytes). - Removing 24l01.o(i.delay_mss), (20 bytes). - Removing spi_hal.o(.rev16_text), (4 bytes). - Removing spi_hal.o(.revsh_text), (4 bytes). - Removing spi_hal.o(.rrx_text), (6 bytes). - Removing spi_hal.o(i.NRFWriteTxDate), (38 bytes). - Removing spi_hal.o(i.nrf_wf), (22 bytes). - Removing interrupt.o(.rev16_text), (4 bytes). - Removing interrupt.o(.revsh_text), (4 bytes). - Removing interrupt.o(.rrx_text), (6 bytes). - Removing interrupt.o(.data), (4 bytes). - Removing clk.o(.rev16_text), (4 bytes). - Removing clk.o(.revsh_text), (4 bytes). - Removing clk.o(.rrx_text), (6 bytes). - Removing clk.o(i.CLK_DisableCKO), (16 bytes). - Removing clk.o(i.CLK_DisableModuleClock), (44 bytes). - Removing clk.o(i.CLK_DisablePLL), (24 bytes). - Removing clk.o(i.CLK_DisableSysTick), (10 bytes). - Removing clk.o(i.CLK_DisableXtalRC), (20 bytes). - Removing clk.o(i.CLK_EnableCKO), (48 bytes). - Removing clk.o(i.CLK_EnablePLL), (376 bytes). - Removing clk.o(i.CLK_EnableSysTick), (72 bytes). - Removing clk.o(i.CLK_EnableXtalRC), (20 bytes). - Removing clk.o(i.CLK_GetCPUFreq), (16 bytes). - Removing clk.o(i.CLK_GetHXTFreq), (28 bytes). - Removing clk.o(i.CLK_GetLXTFreq), (24 bytes). - Removing clk.o(i.CLK_GetPCLK0Freq), (40 bytes). - Removing clk.o(i.CLK_GetPCLK1Freq), (40 bytes). - Removing clk.o(i.CLK_GetPLLClockFreq), (100 bytes). - Removing clk.o(i.CLK_Idle), (40 bytes). - Removing clk.o(i.CLK_PowerDown), (40 bytes). - Removing clk.o(i.CLK_SetCoreClock), (176 bytes). - Removing clk.o(i.CLK_SetHCLK), (124 bytes). - Removing clk.o(i.CLK_SetSysTickClockSrc), (24 bytes). - Removing clk.o(i.CLK_WaitClockReady), (40 bytes). - Removing gpio.o(.rev16_text), (4 bytes). - Removing gpio.o(.revsh_text), (4 bytes). - Removing gpio.o(.rrx_text), (6 bytes). - Removing gpio.o(i.GPIO_DisableInt), (24 bytes). - Removing gpio.o(i.GPIO_EnableInt), (26 bytes). - Removing pwm.o(.rev16_text), (4 bytes). - Removing pwm.o(.revsh_text), (4 bytes). - Removing pwm.o(.rrx_text), (6 bytes). - Removing pwm.o(i.PWM_ClearADCTriggerFlag), (12 bytes). - Removing pwm.o(i.PWM_ClearAccInt), (14 bytes). - Removing pwm.o(i.PWM_ClearCaptureIntFlag), (10 bytes). - Removing pwm.o(i.PWM_ClearDACTriggerFlag), (10 bytes). - Removing pwm.o(i.PWM_ClearDutyIntFlag), (16 bytes). - Removing pwm.o(i.PWM_ClearFTDutyIntFlag), (14 bytes). - Removing pwm.o(i.PWM_ClearFaultBrakeIntFlag), (10 bytes). - Removing pwm.o(i.PWM_ClearWrapAroundFlag), (10 bytes). - Removing pwm.o(i.PWM_ClearZeroIntFlag), (10 bytes). - Removing pwm.o(i.PWM_ConfigCaptureChannel), (204 bytes). - Removing pwm.o(i.PWM_ConfigSyncPhase), (54 bytes). - Removing pwm.o(i.PWM_DisableADCTrigger), (44 bytes). - Removing pwm.o(i.PWM_DisableAcc), (22 bytes). - Removing pwm.o(i.PWM_DisableAccInt), (22 bytes). - Removing pwm.o(i.PWM_DisableBrakeNoiseFilter), (20 bytes). - Removing pwm.o(i.PWM_DisableBrakePinInverse), (20 bytes). - Removing pwm.o(i.PWM_DisableCapture), (22 bytes). - Removing pwm.o(i.PWM_DisableCaptureInt), (18 bytes). - Removing pwm.o(i.PWM_DisableDACTrigger), (18 bytes). - Removing pwm.o(i.PWM_DisableDeadZone), (28 bytes). - Removing pwm.o(i.PWM_DisableDutyInt), (20 bytes). - Removing pwm.o(i.PWM_DisableFaultBrakeInt), (16 bytes). - Removing pwm.o(i.PWM_DisableLoadMode), (14 bytes). - Removing pwm.o(i.PWM_DisablePDMA), (22 bytes). - Removing pwm.o(i.PWM_DisablePeriodInt), (18 bytes). - Removing pwm.o(i.PWM_DisableSyncNoiseFilter), (10 bytes). - Removing pwm.o(i.PWM_DisableSyncPhase), (36 bytes). - Removing pwm.o(i.PWM_DisableSyncPinInverse), (10 bytes). - Removing pwm.o(i.PWM_DisableZeroInt), (16 bytes). - Removing pwm.o(i.PWM_EnableADCTrigger), (74 bytes). - Removing pwm.o(i.PWM_EnableAcc), (38 bytes). - Removing pwm.o(i.PWM_EnableAccInt), (22 bytes). - Removing pwm.o(i.PWM_EnableBrakeNoiseFilter), (34 bytes). - Removing pwm.o(i.PWM_EnableBrakePinInverse), (20 bytes). - Removing pwm.o(i.PWM_EnableCapture), (22 bytes). - Removing pwm.o(i.PWM_EnableCaptureInt), (18 bytes). - Removing pwm.o(i.PWM_EnableDACTrigger), (18 bytes). - Removing pwm.o(i.PWM_EnableDeadZone), (50 bytes). - Removing pwm.o(i.PWM_EnableDutyInt), (18 bytes). - Removing pwm.o(i.PWM_EnableFaultBrake), (338 bytes). - Removing pwm.o(i.PWM_EnableFaultBrakeInt), (16 bytes). - Removing pwm.o(i.PWM_EnableLoadMode), (14 bytes). - Removing pwm.o(i.PWM_EnablePDMA), (46 bytes). - Removing pwm.o(i.PWM_EnableSyncNoiseFilter), (24 bytes). - Removing pwm.o(i.PWM_EnableSyncPhase), (36 bytes). - Removing pwm.o(i.PWM_EnableSyncPinInverse), (10 bytes). - Removing pwm.o(i.PWM_EnableZeroInt), (16 bytes). - Removing pwm.o(i.PWM_ForceStop), (8 bytes). - Removing pwm.o(i.PWM_GetADCTriggerFlag), (24 bytes). - Removing pwm.o(i.PWM_GetAccInt), (28 bytes). - Removing pwm.o(i.PWM_GetCaptureIntFlag), (48 bytes). - Removing pwm.o(i.PWM_GetDACTriggerFlag), (12 bytes). - Removing pwm.o(i.PWM_GetDutyIntFlag), (28 bytes). - Removing pwm.o(i.PWM_GetFTDutyIntFlag), (28 bytes). - Removing pwm.o(i.PWM_GetFaultBrakeIntFlag), (22 bytes). - Removing pwm.o(i.PWM_GetPeriodIntFlag), (24 bytes). - Removing pwm.o(i.PWM_GetWrapAroundFlag), (22 bytes). - Removing pwm.o(i.PWM_GetZeroIntFlag), (22 bytes). - Removing pwm.o(i.PWM_SetBrakePinSource), (34 bytes). - Removing pwm.o(i.PWM_SetClockSource), (28 bytes). - Removing pwm.o(i.PWM_Stop), (34 bytes). - Removing spi.o(.rev16_text), (4 bytes). - Removing spi.o(.revsh_text), (4 bytes). - Removing spi.o(.rrx_text), (6 bytes). - Removing spi.o(i.I2S_Close), (10 bytes). - Removing spi.o(i.I2S_DisableInt), (112 bytes). - Removing spi.o(i.I2S_DisableMCLK), (10 bytes). - Removing spi.o(i.I2S_EnableInt), (112 bytes). - Removing spi.o(i.I2S_EnableMCLK), (70 bytes). - Removing spi.o(i.I2S_GetSourceClockFreq), (184 bytes). - Removing spi.o(i.I2S_Open), (296 bytes). - Removing spi.o(i.I2S_SetFIFO), (18 bytes). - Removing spi.o(i.SPI_ClearIntFlag), (98 bytes). - Removing spi.o(i.SPI_ClearRxFIFO), (10 bytes). - Removing spi.o(i.SPI_ClearTxFIFO), (10 bytes). - Removing spi.o(i.SPI_Close), (100 bytes). - Removing spi.o(i.SPI_DisableInt), (182 bytes). - Removing spi.o(i.SPI_EnableAutoSS), (22 bytes). - Removing spi.o(i.SPI_EnableInt), (182 bytes). - Removing spi.o(i.SPI_GetBusClock), (272 bytes). - Removing spi.o(i.SPI_GetIntFlag), (204 bytes). - Removing spi.o(i.SPI_GetStatus), (150 bytes). - Removing spi.o(i.SPI_SetBusClock), (444 bytes). - Removing spi.o(i.SPI_SetFIFO), (18 bytes). - Removing sys.o(.rev16_text), (4 bytes). - Removing sys.o(.revsh_text), (4 bytes). - Removing sys.o(.rrx_text), (6 bytes). - Removing sys.o(i.SYS_ClearResetSrc), (16 bytes). - Removing sys.o(i.SYS_DisableBOD), (18 bytes). - Removing sys.o(i.SYS_EnableBOD), (42 bytes). - Removing sys.o(i.SYS_GetBODStatus), (12 bytes). - Removing sys.o(i.SYS_GetResetSrc), (8 bytes). - Removing sys.o(i.SYS_IsRegLocked), (20 bytes). - Removing sys.o(i.SYS_ReadPDID), (8 bytes). - Removing sys.o(i.SYS_ResetCPU), (18 bytes). - Removing sys.o(i.SYS_ResetChip), (18 bytes). - Removing retarget.o(.rev16_text), (4 bytes). - Removing retarget.o(.revsh_text), (4 bytes). - Removing retarget.o(.rrx_text), (6 bytes). - Removing retarget.o(i.GetChar), (28 bytes). - Removing retarget.o(i.IsDebugFifoEmpty), (16 bytes). - Removing retarget.o(i._ttywrch), (12 bytes). - Removing retarget.o(i.fgetc), (10 bytes). - Removing retarget.o(i.kbhit), (16 bytes). - Removing system_m451series.o(.rev16_text), (4 bytes). - Removing system_m451series.o(.revsh_text), (4 bytes). - Removing system_m451series.o(.rrx_text), (6 bytes). - -164 unused section(s) (total 6856 bytes) removed from the image. - -============================================================================== - -Image Symbol Table - - Local Symbols - - Symbol Name Value Ov Type Size Object(Section) - - RESET 0x00000000 Section 320 startup_m451series.o(RESET) - ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit1.o ABSOLUTE - ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit2.o ABSOLUTE - ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit3.o ABSOLUTE - ../clib/angel/boardlib.s 0x00000000 Number 0 boardshut.o ABSOLUTE - ../clib/angel/handlers.s 0x00000000 Number 0 __scatter_zi.o ABSOLUTE - ../clib/angel/handlers.s 0x00000000 Number 0 __scatter_copy.o ABSOLUTE - ../clib/angel/kernel.s 0x00000000 Number 0 rtexit.o ABSOLUTE - ../clib/angel/kernel.s 0x00000000 Number 0 rtexit2.o ABSOLUTE - ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry.o ABSOLUTE - ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry2.o ABSOLUTE - ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry4.o ABSOLUTE - ../clib/angel/rt.s 0x00000000 Number 0 rt_raise.o ABSOLUTE - ../clib/angel/scatter.s 0x00000000 Number 0 __scatter.o ABSOLUTE - ../clib/angel/startup.s 0x00000000 Number 0 __main.o ABSOLUTE - ../clib/angel/sys.s 0x00000000 Number 0 libspace.o ABSOLUTE - ../clib/angel/sys.s 0x00000000 Number 0 use_no_semi.o ABSOLUTE - ../clib/angel/sys.s 0x00000000 Number 0 indicate_semi.o ABSOLUTE - ../clib/angel/sys.s 0x00000000 Number 0 sys_stackheap_outer.o ABSOLUTE - ../clib/angel/sysapp.c 0x00000000 Number 0 sys_exit.o ABSOLUTE - ../clib/angel/sysapp.c 0x00000000 Number 0 sys_command.o ABSOLUTE - ../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE - ../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE - ../clib/armsys.c 0x00000000 Number 0 _get_argv_nomalloc.o ABSOLUTE - ../clib/armsys.c 0x00000000 Number 0 no_argv.o ABSOLUTE - ../clib/heapalloc.c 0x00000000 Number 0 hrguard.o ABSOLUTE - ../clib/heapaux.c 0x00000000 Number 0 heapauxi.o ABSOLUTE - ../clib/libinit.s 0x00000000 Number 0 libinit.o ABSOLUTE - ../clib/libinit.s 0x00000000 Number 0 libinit2.o ABSOLUTE - ../clib/libinit.s 0x00000000 Number 0 libshutdown.o ABSOLUTE - ../clib/libinit.s 0x00000000 Number 0 libshutdown2.o ABSOLUTE - ../clib/memcpset.s 0x00000000 Number 0 rt_memclr_w.o ABSOLUTE - ../clib/misc.s 0x00000000 Number 0 printf_stubs.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __printf_wp.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __2printf.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_hex_int_ll.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_hex_ptr.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_hex_int_ptr.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_hex_ll_ptr.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_hex_int_ll_ptr.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __printf_flags.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __printf_ss.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __printf.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_hex_ll.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __printf_flags_ss.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_hex_int.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_intcommon.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __printf_flags_wp.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __printf_ss_wp.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __printf_flags_ss_wp.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 __printf_nopercent.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_char_common.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 noretval__2printf.o ABSOLUTE - ../clib/printf.c 0x00000000 Number 0 _printf_char_file.o ABSOLUTE - ../clib/printf_percent.s 0x00000000 Number 0 _printf_percent.o ABSOLUTE - ../clib/printf_percent.s 0x00000000 Number 0 _printf_x.o ABSOLUTE - ../clib/printf_percent.s 0x00000000 Number 0 _printf_percent_end.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_inner.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_abrt_inner.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_outer.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_pvfn_inner.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_formal.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_stak_inner.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_exit.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 __raise.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_general.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_cppl_inner.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_fpe_inner.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_segv_inner.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_other.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_rtred_inner.o ABSOLUTE - ../clib/signal.s 0x00000000 Number 0 defsig.o ABSOLUTE - ../clib/stdlib.c 0x00000000 Number 0 exit.o ABSOLUTE - ../fplib/fpinit.s 0x00000000 Number 0 fpinit.o ABSOLUTE - 24l01.c 0x00000000 Number 0 24l01.o ABSOLUTE - 24l01.c 0x00000000 Number 0 24l01.o ABSOLUTE - D:\\keil_arm_pack\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\clk.c 0x00000000 Number 0 clk.o ABSOLUTE - D:\\keil_arm_pack\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\gpio.c 0x00000000 Number 0 gpio.o ABSOLUTE - D:\\keil_arm_pack\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\pwm.c 0x00000000 Number 0 pwm.o ABSOLUTE - D:\\keil_arm_pack\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\spi.c 0x00000000 Number 0 spi.o ABSOLUTE - D:\\keil_arm_pack\\Nuvoton\\NuMicro_DFP\\1.2.0\\Device\\M451\\Driver\\sys.c 0x00000000 Number 0 sys.o ABSOLUTE - D:\keil_arm_pack\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\clk.c 0x00000000 Number 0 clk.o ABSOLUTE - D:\keil_arm_pack\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\gpio.c 0x00000000 Number 0 gpio.o ABSOLUTE - D:\keil_arm_pack\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\pwm.c 0x00000000 Number 0 pwm.o ABSOLUTE - D:\keil_arm_pack\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\spi.c 0x00000000 Number 0 spi.o ABSOLUTE - D:\keil_arm_pack\Nuvoton\NuMicro_DFP\1.2.0\Device\M451\Driver\sys.c 0x00000000 Number 0 sys.o ABSOLUTE - RTE\Device\M453VG6AE\retarget.c 0x00000000 Number 0 retarget.o ABSOLUTE - RTE\Device\M453VG6AE\startup_M451Series.s 0x00000000 Number 0 startup_m451series.o ABSOLUTE - RTE\Device\M453VG6AE\system_M451Series.c 0x00000000 Number 0 system_m451series.o ABSOLUTE - RTE\\Device\\M453VG6AE\\retarget.c 0x00000000 Number 0 retarget.o ABSOLUTE - RTE\\Device\\M453VG6AE\\system_M451Series.c 0x00000000 Number 0 system_m451series.o ABSOLUTE - dc.s 0x00000000 Number 0 dc.o ABSOLUTE - interrupt.c 0x00000000 Number 0 interrupt.o ABSOLUTE - interrupt.c 0x00000000 Number 0 interrupt.o ABSOLUTE - main.c 0x00000000 Number 0 main.o ABSOLUTE - main.c 0x00000000 Number 0 main.o ABSOLUTE - spi_hal.c 0x00000000 Number 0 spi_hal.o ABSOLUTE - spi_hal.c 0x00000000 Number 0 spi_hal.o ABSOLUTE - !!!main 0x00000140 Section 8 __main.o(!!!main) - !!!scatter 0x00000148 Section 52 __scatter.o(!!!scatter) - !!handler_copy 0x0000017c Section 26 __scatter_copy.o(!!handler_copy) - !!handler_zi 0x00000198 Section 28 __scatter_zi.o(!!handler_zi) - .ARM.Collect$$_printf_percent$$00000000 0x000001b4 Section 0 _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) - .ARM.Collect$$_printf_percent$$0000000C 0x000001b4 Section 6 _printf_x.o(.ARM.Collect$$_printf_percent$$0000000C) - .ARM.Collect$$_printf_percent$$00000017 0x000001ba Section 4 _printf_percent_end.o(.ARM.Collect$$_printf_percent$$00000017) - .ARM.Collect$$libinit$$00000000 0x000001be Section 2 libinit.o(.ARM.Collect$$libinit$$00000000) - .ARM.Collect$$libinit$$00000001 0x000001c0 Section 4 libinit2.o(.ARM.Collect$$libinit$$00000001) - .ARM.Collect$$libinit$$00000004 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000004) - .ARM.Collect$$libinit$$0000000A 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000A) - .ARM.Collect$$libinit$$0000000C 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000C) - .ARM.Collect$$libinit$$0000000E 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000E) - .ARM.Collect$$libinit$$00000011 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000011) - .ARM.Collect$$libinit$$00000013 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000013) - .ARM.Collect$$libinit$$00000015 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000015) - .ARM.Collect$$libinit$$00000017 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000017) - .ARM.Collect$$libinit$$00000019 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000019) - .ARM.Collect$$libinit$$0000001B 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001B) - .ARM.Collect$$libinit$$0000001D 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001D) - .ARM.Collect$$libinit$$0000001F 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001F) - .ARM.Collect$$libinit$$00000021 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000021) - .ARM.Collect$$libinit$$00000023 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000023) - .ARM.Collect$$libinit$$00000025 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000025) - .ARM.Collect$$libinit$$0000002C 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002C) - .ARM.Collect$$libinit$$0000002E 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002E) - .ARM.Collect$$libinit$$00000030 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000030) - .ARM.Collect$$libinit$$00000032 0x000001c4 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000032) - .ARM.Collect$$libinit$$00000033 0x000001c4 Section 2 libinit2.o(.ARM.Collect$$libinit$$00000033) - .ARM.Collect$$libshutdown$$00000000 0x000001c6 Section 2 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) - .ARM.Collect$$libshutdown$$00000002 0x000001c8 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) - .ARM.Collect$$libshutdown$$00000004 0x000001c8 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) - .ARM.Collect$$libshutdown$$00000007 0x000001c8 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000007) - .ARM.Collect$$libshutdown$$0000000A 0x000001c8 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A) - .ARM.Collect$$libshutdown$$0000000C 0x000001c8 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) - .ARM.Collect$$libshutdown$$0000000F 0x000001c8 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) - .ARM.Collect$$libshutdown$$00000010 0x000001c8 Section 2 libshutdown2.o(.ARM.Collect$$libshutdown$$00000010) - .ARM.Collect$$rtentry$$00000000 0x000001ca Section 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000) - .ARM.Collect$$rtentry$$00000002 0x000001ca Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002) - .ARM.Collect$$rtentry$$00000004 0x000001ca Section 6 __rtentry4.o(.ARM.Collect$$rtentry$$00000004) - .ARM.Collect$$rtentry$$00000009 0x000001d0 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009) - .ARM.Collect$$rtentry$$0000000A 0x000001d0 Section 4 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) - .ARM.Collect$$rtentry$$0000000C 0x000001d4 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) - .ARM.Collect$$rtentry$$0000000D 0x000001d4 Section 8 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) - .ARM.Collect$$rtexit$$00000000 0x000001dc Section 2 rtexit.o(.ARM.Collect$$rtexit$$00000000) - .ARM.Collect$$rtexit$$00000002 0x000001de Section 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002) - .ARM.Collect$$rtexit$$00000003 0x000001de Section 4 rtexit2.o(.ARM.Collect$$rtexit$$00000003) - .ARM.Collect$$rtexit$$00000004 0x000001e2 Section 6 rtexit2.o(.ARM.Collect$$rtexit$$00000004) - .emb_text 0x000001e8 Section 28 retarget.o(.emb_text) - $v0 0x000001e8 Number 0 retarget.o(.emb_text) - .text 0x00000204 Section 116 startup_m451series.o(.text) - $v0 0x00000204 Number 0 startup_m451series.o(.text) - Default_Handler 0x00000249 Thumb Code 2 startup_m451series.o(.text) - .text 0x00000278 Section 0 noretval__2printf.o(.text) - .text 0x00000290 Section 0 _printf_hex_int.o(.text) - .text 0x000002e8 Section 0 __printf_wp.o(.text) - .text 0x000003f6 Section 78 rt_memclr_w.o(.text) - .text 0x00000444 Section 0 heapauxi.o(.text) - .text 0x0000044a Section 0 _printf_intcommon.o(.text) - .text 0x000004fc Section 0 _printf_char_file.o(.text) - .text 0x00000520 Section 0 _printf_char_common.o(.text) - _printf_input_char 0x00000521 Thumb Code 10 _printf_char_common.o(.text) - .text 0x00000550 Section 74 sys_stackheap_outer.o(.text) - .text 0x0000059a Section 0 exit.o(.text) - .text 0x000005ac Section 8 libspace.o(.text) - .text 0x000005b4 Section 0 sys_exit.o(.text) - .text 0x000005c0 Section 2 use_no_semi.o(.text) - .text 0x000005c2 Section 0 indicate_semi.o(.text) - i.CLK_EnableModuleClock 0x000005c2 Section 0 clk.o(i.CLK_EnableModuleClock) - i.CLK_GetHCLKFreq 0x000005f0 Section 0 clk.o(i.CLK_GetHCLKFreq) - i.CLK_GetPLLClockFreq 0x00000600 Section 0 pwm.o(i.CLK_GetPLLClockFreq) - CLK_GetPLLClockFreq 0x00000601 Thumb Code 84 pwm.o(i.CLK_GetPLLClockFreq) - i.CLK_GetPLLClockFreq 0x00000664 Section 0 spi.o(i.CLK_GetPLLClockFreq) - CLK_GetPLLClockFreq 0x00000665 Thumb Code 84 spi.o(i.CLK_GetPLLClockFreq) - i.CLK_GetPLLClockFreq 0x000006c8 Section 0 system_m451series.o(i.CLK_GetPLLClockFreq) - CLK_GetPLLClockFreq 0x000006c9 Thumb Code 84 system_m451series.o(i.CLK_GetPLLClockFreq) - i.CLK_SetModuleClock 0x0000072c Section 0 clk.o(i.CLK_SetModuleClock) - i.EINT0_IRQHandler 0x00000780 Section 0 24l01.o(i.EINT0_IRQHandler) - i.GPIO_Direction_Init 0x000007e0 Section 0 main.o(i.GPIO_Direction_Init) - i.GPIO_SetMode 0x00000850 Section 0 gpio.o(i.GPIO_SetMode) - i.Hard_Fault_Handler 0x0000087c Section 0 retarget.o(i.Hard_Fault_Handler) - __tagsym$$used 0x0000087d Number 0 retarget.o(i.Hard_Fault_Handler) - i.NRF24L01_Read_Buf 0x000008a8 Section 0 24l01.o(i.NRF24L01_Read_Buf) - i.NRF24L01_RxPacket 0x000008dc Section 0 24l01.o(i.NRF24L01_RxPacket) - i.NRFSetTxMode 0x00000924 Section 0 24l01.o(i.NRFSetTxMode) - i.PWM0P0_IRQHandler 0x000009bc Section 0 interrupt.o(i.PWM0P0_IRQHandler) - i.PWM1P0_IRQHandler 0x00000aac Section 0 interrupt.o(i.PWM1P0_IRQHandler) - i.PWMInit 0x00000b2c Section 0 main.o(i.PWMInit) - i.PWM_ClearPeriodIntFlag 0x00000c78 Section 0 pwm.o(i.PWM_ClearPeriodIntFlag) - i.PWM_ConfigOutputChannel 0x00000c84 Section 0 pwm.o(i.PWM_ConfigOutputChannel) - i.PWM_DisableOutput 0x00000df4 Section 0 pwm.o(i.PWM_DisableOutput) - i.PWM_EnableOutput 0x00000e00 Section 0 pwm.o(i.PWM_EnableOutput) - i.PWM_EnablePeriodInt 0x00000e0c Section 0 pwm.o(i.PWM_EnablePeriodInt) - i.PWM_Start 0x00000e20 Section 0 pwm.o(i.PWM_Start) - i.ParsePackage 0x00000e28 Section 0 main.o(i.ParsePackage) - i.RX_Mode 0x00000eb0 Section 0 24l01.o(i.RX_Mode) - i.SPI_DisableAutoSS 0x00000f50 Section 0 spi.o(i.SPI_DisableAutoSS) - i.SPI_Open 0x00000f5c Section 0 spi.o(i.SPI_Open) - i.SYS_ResetModule 0x000011fc Section 0 sys.o(i.SYS_ResetModule) - i.SendChar 0x0000122c Section 0 retarget.o(i.SendChar) - i.SendChar_ToUART 0x00001238 Section 0 retarget.o(i.SendChar_ToUART) - i.Spi_init 0x00001268 Section 0 spi_hal.o(i.Spi_init) - i.SystemCoreClockUpdate 0x0000130c Section 0 system_m451series.o(i.SystemCoreClockUpdate) - i.SystemInit 0x00001370 Section 0 system_m451series.o(i.SystemInit) - i.__NVIC_EnableIRQ 0x000013e4 Section 0 main.o(i.__NVIC_EnableIRQ) - __NVIC_EnableIRQ 0x000013e5 Thumb Code 34 main.o(i.__NVIC_EnableIRQ) - i._is_digit 0x00001406 Section 0 __printf_wp.o(i._is_digit) - i.delayAny 0x00001414 Section 0 spi_hal.o(i.delayAny) - i.delay_s 0x00001422 Section 0 24l01.o(i.delay_s) - i.ferror 0x00001430 Section 0 retarget.o(i.ferror) - i.fputc 0x00001438 Section 0 retarget.o(i.fputc) - i.main 0x00001448 Section 0 main.o(i.main) - i.nrf_read 0x00001484 Section 0 spi_hal.o(i.nrf_read) - i.nrf_write 0x000014a0 Section 0 spi_hal.o(i.nrf_write) - i.nrf_writebuf 0x000014be Section 0 spi_hal.o(i.nrf_writebuf) - i.spi_disable 0x000014ec Section 0 spi_hal.o(i.spi_disable) - i.spi_enable 0x00001500 Section 0 spi_hal.o(i.spi_enable) - i.spi_read 0x00001514 Section 0 spi_hal.o(i.spi_read) - i.spi_send 0x00001534 Section 0 spi_hal.o(i.spi_send) - i.stackDump 0x00001554 Section 0 retarget.o(i.stackDump) - stackDump 0x00001555 Thumb Code 70 retarget.o(i.stackDump) - x$fpl$fpinit 0x000015fc Section 10 fpinit.o(x$fpl$fpinit) - $v0 0x000015fc Number 0 fpinit.o(x$fpl$fpinit) - .constdata 0x00001606 Section 40 _printf_hex_int.o(.constdata) - uc_hextab 0x00001606 Data 20 _printf_hex_int.o(.constdata) - lc_hextab 0x0000161a Data 20 _printf_hex_int.o(.constdata) - .data 0x20000000 Section 12 main.o(.data) - .data 0x2000000c Section 21 24l01.o(.data) - ifinit 0x20000020 Data 1 24l01.o(.data) - .data 0x20000024 Section 8 retarget.o(.data) - .data 0x2000002c Section 44 system_m451series.o(.data) - .bss 0x20000058 Section 64 24l01.o(.bss) - .bss 0x20000098 Section 96 libspace.o(.bss) - HEAP 0x200000f8 Section 0 startup_m451series.o(HEAP) - STACK 0x200000f8 Section 1024 startup_m451series.o(STACK) - Heap_Mem 0x200000f8 Data 0 startup_m451series.o(HEAP) - Stack_Mem 0x200000f8 Data 1024 startup_m451series.o(STACK) - __initial_sp 0x200004f8 Data 0 startup_m451series.o(STACK) - - Global Symbols - - Symbol Name Value Ov Type Size Object(Section) - - BuildAttributes$$THM_ISAv4$E$P$D$K$B$S$7EM$VFPi3$EXTD16$VFPS$VFMA$PE$A:L22UL41UL21$X:L11$S22US41US21$IEEE1$IW$USESV6$~STKCKD$USESV7$~SHL$OSPACE$ROPI$EBA8$UX$STANDARDLIB$REQ8$PRES8$EABIv2 0x00000000 Number 0 anon$$obj.o ABSOLUTE - __ARM_use_no_argv 0x00000000 Number 0 main.o ABSOLUTE - __Vectors 0x00000000 Data 4 startup_m451series.o(RESET) - _printf_flags 0x00000000 Number 0 printf_stubs.o ABSOLUTE - _printf_return_value 0x00000000 Number 0 printf_stubs.o ABSOLUTE - _printf_sizespec 0x00000000 Number 0 printf_stubs.o ABSOLUTE - _printf_widthprec 0x00000000 Number 0 printf_stubs.o ABSOLUTE - __ARM_exceptions_init - Undefined Weak Reference - __alloca_initialize - Undefined Weak Reference - __arm_preinit_ - Undefined Weak Reference - __cpp_initialize__aeabi_ - Undefined Weak Reference - __cxa_finalize - Undefined Weak Reference - __rt_locale - Undefined Weak Reference - __sigvec_lookup - Undefined Weak Reference - _atexit_init - Undefined Weak Reference - _call_atexit_fns - Undefined Weak Reference - _clock_init - Undefined Weak Reference - _fp_trap_init - Undefined Weak Reference - _fp_trap_shutdown - Undefined Weak Reference - _get_lc_collate - Undefined Weak Reference - _get_lc_ctype - Undefined Weak Reference - _get_lc_monetary - Undefined Weak Reference - _get_lc_numeric - Undefined Weak Reference - _get_lc_time - Undefined Weak Reference - _getenv_init - Undefined Weak Reference - _handle_redirection - Undefined Weak Reference - _init_alloc - Undefined Weak Reference - _init_user_alloc - Undefined Weak Reference - _initio - Undefined Weak Reference - _printf_post_padding - Undefined Weak Reference - _printf_pre_padding - Undefined Weak Reference - _printf_truncate_unsigned - Undefined Weak Reference - _rand_init - Undefined Weak Reference - _signal_finish - Undefined Weak Reference - _signal_init - Undefined Weak Reference - _terminate_alloc - Undefined Weak Reference - _terminate_user_alloc - Undefined Weak Reference - _terminateio - Undefined Weak Reference - __Vectors_End 0x00000140 Data 0 startup_m451series.o(RESET) - __Vectors_Size 0x00000140 Number 0 startup_m451series.o ABSOLUTE - __main 0x00000141 Thumb Code 8 __main.o(!!!main) - __scatterload 0x00000149 Thumb Code 0 __scatter.o(!!!scatter) - __scatterload_rt2 0x00000149 Thumb Code 44 __scatter.o(!!!scatter) - __scatterload_rt2_thumb_only 0x00000149 Thumb Code 0 __scatter.o(!!!scatter) - __scatterload_null 0x00000157 Thumb Code 0 __scatter.o(!!!scatter) - __scatterload_copy 0x0000017d Thumb Code 26 __scatter_copy.o(!!handler_copy) - __scatterload_zeroinit 0x00000199 Thumb Code 28 __scatter_zi.o(!!handler_zi) - _printf_percent 0x000001b5 Thumb Code 0 _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) - _printf_x 0x000001b5 Thumb Code 0 _printf_x.o(.ARM.Collect$$_printf_percent$$0000000C) - _printf_percent_end 0x000001bb Thumb Code 0 _printf_percent_end.o(.ARM.Collect$$_printf_percent$$00000017) - __rt_lib_init 0x000001bf Thumb Code 0 libinit.o(.ARM.Collect$$libinit$$00000000) - __rt_lib_init_fp_1 0x000001c1 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000001) - __rt_lib_init_alloca_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002E) - __rt_lib_init_argv_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002C) - __rt_lib_init_atexit_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001B) - __rt_lib_init_clock_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000021) - __rt_lib_init_cpp_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000032) - __rt_lib_init_exceptions_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000030) - __rt_lib_init_fp_trap_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001F) - __rt_lib_init_getenv_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000023) - __rt_lib_init_heap_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000A) - __rt_lib_init_lc_collate_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000011) - __rt_lib_init_lc_ctype_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000013) - __rt_lib_init_lc_monetary_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000015) - __rt_lib_init_lc_numeric_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000017) - __rt_lib_init_lc_time_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000019) - __rt_lib_init_preinit_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000004) - __rt_lib_init_rand_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000E) - __rt_lib_init_return 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000033) - __rt_lib_init_signal_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001D) - __rt_lib_init_stdio_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000025) - __rt_lib_init_user_alloc_1 0x000001c5 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000C) - __rt_lib_shutdown 0x000001c7 Thumb Code 0 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) - __rt_lib_shutdown_cpp_1 0x000001c9 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) - __rt_lib_shutdown_fp_trap_1 0x000001c9 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000007) - __rt_lib_shutdown_heap_1 0x000001c9 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) - __rt_lib_shutdown_return 0x000001c9 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000010) - __rt_lib_shutdown_signal_1 0x000001c9 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A) - __rt_lib_shutdown_stdio_1 0x000001c9 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) - __rt_lib_shutdown_user_alloc_1 0x000001c9 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) - __rt_entry 0x000001cb Thumb Code 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000) - __rt_entry_presh_1 0x000001cb Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002) - __rt_entry_sh 0x000001cb Thumb Code 0 __rtentry4.o(.ARM.Collect$$rtentry$$00000004) - __rt_entry_li 0x000001d1 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) - __rt_entry_postsh_1 0x000001d1 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009) - __rt_entry_main 0x000001d5 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) - __rt_entry_postli_1 0x000001d5 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) - __rt_exit 0x000001dd Thumb Code 0 rtexit.o(.ARM.Collect$$rtexit$$00000000) - __rt_exit_ls 0x000001df Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000003) - __rt_exit_prels_1 0x000001df Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002) - __rt_exit_exit 0x000001e3 Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000004) - HardFault_Handler 0x000001e9 Thumb Code 24 retarget.o(.emb_text) - Reset_Handler 0x00000205 Thumb Code 50 startup_m451series.o(.text) - NMI_Handler 0x00000237 Thumb Code 2 startup_m451series.o(.text) - MemManage_Handler 0x0000023b Thumb Code 2 startup_m451series.o(.text) - BusFault_Handler 0x0000023d Thumb Code 2 startup_m451series.o(.text) - UsageFault_Handler 0x0000023f Thumb Code 2 startup_m451series.o(.text) - SVC_Handler 0x00000241 Thumb Code 2 startup_m451series.o(.text) - DebugMon_Handler 0x00000243 Thumb Code 2 startup_m451series.o(.text) - PendSV_Handler 0x00000245 Thumb Code 2 startup_m451series.o(.text) - SysTick_Handler 0x00000247 Thumb Code 2 startup_m451series.o(.text) - ACMP01_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - ADC00_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - ADC01_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - ADC02_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - ADC03_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - BOD_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - BRAKE0_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - BRAKE1_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - CAN0_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - CLKFAIL_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - DAC_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - EINT1_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - EINT2_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - EINT3_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - EINT4_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - EINT5_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - GPA_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - GPB_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - GPC_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - GPD_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - GPE_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - GPF_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - I2C0_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - I2C1_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - IRC_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - PDMA_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - PWM0P1_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - PWM0P2_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - PWM1P1_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - PWM1P2_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - PWRWU_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - RAMPE_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - RTC_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - SC0_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - SPI0_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - SPI1_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - SPI2_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - TAMPER_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - TK_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - TMR0_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - TMR1_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - TMR2_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - TMR3_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - UART0_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - UART1_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - UART2_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - UART3_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - USBD_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - USBH_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - USBOTG_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - WDT_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - WWDT_IRQHandler 0x00000249 Thumb Code 0 startup_m451series.o(.text) - __user_initial_stackheap 0x0000024d Thumb Code 10 startup_m451series.o(.text) - __2printf 0x00000279 Thumb Code 20 noretval__2printf.o(.text) - _printf_int_hex 0x00000291 Thumb Code 84 _printf_hex_int.o(.text) - _printf_longlong_hex 0x00000291 Thumb Code 0 _printf_hex_int.o(.text) - __printf 0x000002e9 Thumb Code 270 __printf_wp.o(.text) - __aeabi_memclr4 0x000003f7 Thumb Code 0 rt_memclr_w.o(.text) - __aeabi_memclr8 0x000003f7 Thumb Code 0 rt_memclr_w.o(.text) - __rt_memclr_w 0x000003f7 Thumb Code 78 rt_memclr_w.o(.text) - _memset_w 0x000003fb Thumb Code 0 rt_memclr_w.o(.text) - __use_two_region_memory 0x00000445 Thumb Code 2 heapauxi.o(.text) - __rt_heap_escrow$2region 0x00000447 Thumb Code 2 heapauxi.o(.text) - __rt_heap_expand$2region 0x00000449 Thumb Code 2 heapauxi.o(.text) - _printf_int_common 0x0000044b Thumb Code 178 _printf_intcommon.o(.text) - _printf_char_file 0x000004fd Thumb Code 32 _printf_char_file.o(.text) - _printf_char_common 0x0000052b Thumb Code 32 _printf_char_common.o(.text) - __user_setup_stackheap 0x00000551 Thumb Code 74 sys_stackheap_outer.o(.text) - exit 0x0000059b Thumb Code 18 exit.o(.text) - __user_libspace 0x000005ad Thumb Code 8 libspace.o(.text) - __user_perproc_libspace 0x000005ad Thumb Code 0 libspace.o(.text) - __user_perthread_libspace 0x000005ad Thumb Code 0 libspace.o(.text) - _sys_exit 0x000005b5 Thumb Code 8 sys_exit.o(.text) - __I$use$semihosting 0x000005c1 Thumb Code 0 use_no_semi.o(.text) - __use_no_semihosting_swi 0x000005c1 Thumb Code 2 use_no_semi.o(.text) - CLK_EnableModuleClock 0x000005c3 Thumb Code 44 clk.o(i.CLK_EnableModuleClock) - __semihosting_library_function 0x000005c3 Thumb Code 0 indicate_semi.o(.text) - CLK_GetHCLKFreq 0x000005f1 Thumb Code 12 clk.o(i.CLK_GetHCLKFreq) - CLK_SetModuleClock 0x0000072d Thumb Code 78 clk.o(i.CLK_SetModuleClock) - EINT0_IRQHandler 0x00000781 Thumb Code 82 24l01.o(i.EINT0_IRQHandler) - GPIO_Direction_Init 0x000007e1 Thumb Code 102 main.o(i.GPIO_Direction_Init) - GPIO_SetMode 0x00000851 Thumb Code 44 gpio.o(i.GPIO_SetMode) - Hard_Fault_Handler 0x0000087d Thumb Code 18 retarget.o(i.Hard_Fault_Handler) - NRF24L01_Read_Buf 0x000008a9 Thumb Code 50 24l01.o(i.NRF24L01_Read_Buf) - NRF24L01_RxPacket 0x000008dd Thumb Code 68 24l01.o(i.NRF24L01_RxPacket) - NRFSetTxMode 0x00000925 Thumb Code 132 24l01.o(i.NRFSetTxMode) - PWM0P0_IRQHandler 0x000009bd Thumb Code 216 interrupt.o(i.PWM0P0_IRQHandler) - PWM1P0_IRQHandler 0x00000aad Thumb Code 112 interrupt.o(i.PWM1P0_IRQHandler) - PWMInit 0x00000b2d Thumb Code 312 main.o(i.PWMInit) - PWM_ClearPeriodIntFlag 0x00000c79 Thumb Code 12 pwm.o(i.PWM_ClearPeriodIntFlag) - PWM_ConfigOutputChannel 0x00000c85 Thumb Code 354 pwm.o(i.PWM_ConfigOutputChannel) - PWM_DisableOutput 0x00000df5 Thumb Code 12 pwm.o(i.PWM_DisableOutput) - PWM_EnableOutput 0x00000e01 Thumb Code 12 pwm.o(i.PWM_EnableOutput) - PWM_EnablePeriodInt 0x00000e0d Thumb Code 20 pwm.o(i.PWM_EnablePeriodInt) - PWM_Start 0x00000e21 Thumb Code 8 pwm.o(i.PWM_Start) - ParsePackage 0x00000e29 Thumb Code 112 main.o(i.ParsePackage) - RX_Mode 0x00000eb1 Thumb Code 140 24l01.o(i.RX_Mode) - SPI_DisableAutoSS 0x00000f51 Thumb Code 10 spi.o(i.SPI_DisableAutoSS) - SPI_Open 0x00000f5d Thumb Code 646 spi.o(i.SPI_Open) - SYS_ResetModule 0x000011fd Thumb Code 48 sys.o(i.SYS_ResetModule) - SendChar 0x0000122d Thumb Code 12 retarget.o(i.SendChar) - SendChar_ToUART 0x00001239 Thumb Code 44 retarget.o(i.SendChar_ToUART) - Spi_init 0x00001269 Thumb Code 138 spi_hal.o(i.Spi_init) - SystemCoreClockUpdate 0x0000130d Thumb Code 74 system_m451series.o(i.SystemCoreClockUpdate) - SystemInit 0x00001371 Thumb Code 104 system_m451series.o(i.SystemInit) - _is_digit 0x00001407 Thumb Code 14 __printf_wp.o(i._is_digit) - delayAny 0x00001415 Thumb Code 14 spi_hal.o(i.delayAny) - delay_s 0x00001423 Thumb Code 14 24l01.o(i.delay_s) - ferror 0x00001431 Thumb Code 8 retarget.o(i.ferror) - fputc 0x00001439 Thumb Code 16 retarget.o(i.fputc) - main 0x00001449 Thumb Code 56 main.o(i.main) - nrf_read 0x00001485 Thumb Code 28 spi_hal.o(i.nrf_read) - nrf_write 0x000014a1 Thumb Code 30 spi_hal.o(i.nrf_write) - nrf_writebuf 0x000014bf Thumb Code 46 spi_hal.o(i.nrf_writebuf) - spi_disable 0x000014ed Thumb Code 14 spi_hal.o(i.spi_disable) - spi_enable 0x00001501 Thumb Code 14 spi_hal.o(i.spi_enable) - spi_read 0x00001515 Thumb Code 28 spi_hal.o(i.spi_read) - spi_send 0x00001535 Thumb Code 28 spi_hal.o(i.spi_send) - _fp_init 0x000015fd Thumb Code 10 fpinit.o(x$fpl$fpinit) - __fplib_config_fpu_vfp 0x00001605 Thumb Code 0 fpinit.o(x$fpl$fpinit) - __fplib_config_pureend_doubles 0x00001605 Thumb Code 0 fpinit.o(x$fpl$fpinit) - Region$$Table$$Base 0x00001630 Number 0 anon$$obj.o(Region$$Table) - Region$$Table$$Limit 0x00001650 Number 0 anon$$obj.o(Region$$Table) - Axis1 0x20000000 Data 2 main.o(.data) - Axis2 0x20000002 Data 2 main.o(.data) - Axis3 0x20000004 Data 2 main.o(.data) - Axis4 0x20000006 Data 2 main.o(.data) - Axis5 0x20000008 Data 2 main.o(.data) - Axis6 0x2000000a Data 2 main.o(.data) - rfch 0x2000000c Data 1 24l01.o(.data) - RxCnt 0x2000000e Data 2 24l01.o(.data) - TxAddr 0x20000010 Data 5 24l01.o(.data) - RxAddr 0x20000015 Data 5 24l01.o(.data) - Curr_Mode 0x2000001a Data 1 24l01.o(.data) - gRecvPkg 0x2000001c Data 4 24l01.o(.data) - __stdout 0x20000024 Data 4 retarget.o(.data) - __stdin 0x20000028 Data 4 retarget.o(.data) - SystemCoreClock 0x2000002c Data 4 system_m451series.o(.data) - CyclesPerUs 0x20000030 Data 4 system_m451series.o(.data) - PllClock 0x20000034 Data 4 system_m451series.o(.data) - gau32ClkSrcTbl 0x20000038 Data 32 system_m451series.o(.data) - Recv_Buf 0x20000058 Data 32 24l01.o(.bss) - Send_Buf 0x20000078 Data 32 24l01.o(.bss) - __libspace_start 0x20000098 Data 96 libspace.o(.bss) - __temporary_stack_top$libspace 0x200000f8 Data 0 libspace.o(.bss) - - - -============================================================================== - -Memory Map of the image - - Image Entry point : 0x00000141 - - Load Region LR_IROM1 (Base: 0x00000000, Size: 0x000016a8, Max: 0x00040000, ABSOLUTE) - - Execution Region ER_IROM1 (Exec base: 0x00000000, Load base: 0x00000000, Size: 0x00001650, Max: 0x00040000, ABSOLUTE) - - Exec Addr Load Addr Size Type Attr Idx E Section Name Object - - 0x00000000 0x00000000 0x00000140 Data RO 1386 RESET startup_m451series.o - 0x00000140 0x00000140 0x00000008 Code RO 1490 * !!!main c_w.l(__main.o) - 0x00000148 0x00000148 0x00000034 Code RO 1654 !!!scatter c_w.l(__scatter.o) - 0x0000017c 0x0000017c 0x0000001a Code RO 1656 !!handler_copy c_w.l(__scatter_copy.o) - 0x00000196 0x00000196 0x00000002 PAD - 0x00000198 0x00000198 0x0000001c Code RO 1658 !!handler_zi c_w.l(__scatter_zi.o) - 0x000001b4 0x000001b4 0x00000000 Code RO 1485 .ARM.Collect$$_printf_percent$$00000000 c_w.l(_printf_percent.o) - 0x000001b4 0x000001b4 0x00000006 Code RO 1484 .ARM.Collect$$_printf_percent$$0000000C c_w.l(_printf_x.o) - 0x000001ba 0x000001ba 0x00000004 Code RO 1497 .ARM.Collect$$_printf_percent$$00000017 c_w.l(_printf_percent_end.o) - 0x000001be 0x000001be 0x00000002 Code RO 1526 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o) - 0x000001c0 0x000001c0 0x00000004 Code RO 1532 .ARM.Collect$$libinit$$00000001 c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1535 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1538 .ARM.Collect$$libinit$$0000000A c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1540 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1542 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1545 .ARM.Collect$$libinit$$00000011 c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1547 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1549 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1551 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1553 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1555 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1557 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1559 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1561 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1563 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1565 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1569 .ARM.Collect$$libinit$$0000002C c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1571 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1573 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000000 Code RO 1575 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o) - 0x000001c4 0x000001c4 0x00000002 Code RO 1576 .ARM.Collect$$libinit$$00000033 c_w.l(libinit2.o) - 0x000001c6 0x000001c6 0x00000002 Code RO 1596 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o) - 0x000001c8 0x000001c8 0x00000000 Code RO 1609 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o) - 0x000001c8 0x000001c8 0x00000000 Code RO 1611 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o) - 0x000001c8 0x000001c8 0x00000000 Code RO 1614 .ARM.Collect$$libshutdown$$00000007 c_w.l(libshutdown2.o) - 0x000001c8 0x000001c8 0x00000000 Code RO 1617 .ARM.Collect$$libshutdown$$0000000A c_w.l(libshutdown2.o) - 0x000001c8 0x000001c8 0x00000000 Code RO 1619 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o) - 0x000001c8 0x000001c8 0x00000000 Code RO 1622 .ARM.Collect$$libshutdown$$0000000F c_w.l(libshutdown2.o) - 0x000001c8 0x000001c8 0x00000002 Code RO 1623 .ARM.Collect$$libshutdown$$00000010 c_w.l(libshutdown2.o) - 0x000001ca 0x000001ca 0x00000000 Code RO 1492 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o) - 0x000001ca 0x000001ca 0x00000000 Code RO 1499 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o) - 0x000001ca 0x000001ca 0x00000006 Code RO 1511 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o) - 0x000001d0 0x000001d0 0x00000000 Code RO 1501 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o) - 0x000001d0 0x000001d0 0x00000004 Code RO 1502 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o) - 0x000001d4 0x000001d4 0x00000000 Code RO 1504 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o) - 0x000001d4 0x000001d4 0x00000008 Code RO 1505 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o) - 0x000001dc 0x000001dc 0x00000002 Code RO 1530 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o) - 0x000001de 0x000001de 0x00000000 Code RO 1578 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o) - 0x000001de 0x000001de 0x00000004 Code RO 1579 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) - 0x000001e2 0x000001e2 0x00000006 Code RO 1580 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) - 0x000001e8 0x000001e8 0x0000001c Code RO 1271 .emb_text retarget.o - 0x00000204 0x00000204 0x00000074 Code RO 1387 .text startup_m451series.o - 0x00000278 0x00000278 0x00000018 Code RO 1439 .text c_w.l(noretval__2printf.o) - 0x00000290 0x00000290 0x00000058 Code RO 1446 .text c_w.l(_printf_hex_int.o) - 0x000002e8 0x000002e8 0x0000010e Code RO 1472 .text c_w.l(__printf_wp.o) - 0x000003f6 0x000003f6 0x0000004e Code RO 1486 .text c_w.l(rt_memclr_w.o) - 0x00000444 0x00000444 0x00000006 Code RO 1488 .text c_w.l(heapauxi.o) - 0x0000044a 0x0000044a 0x000000b2 Code RO 1493 .text c_w.l(_printf_intcommon.o) - 0x000004fc 0x000004fc 0x00000024 Code RO 1495 .text c_w.l(_printf_char_file.o) - 0x00000520 0x00000520 0x00000030 Code RO 1513 .text c_w.l(_printf_char_common.o) - 0x00000550 0x00000550 0x0000004a Code RO 1515 .text c_w.l(sys_stackheap_outer.o) - 0x0000059a 0x0000059a 0x00000012 Code RO 1519 .text c_w.l(exit.o) - 0x000005ac 0x000005ac 0x00000008 Code RO 1527 .text c_w.l(libspace.o) - 0x000005b4 0x000005b4 0x0000000c Code RO 1588 .text c_w.l(sys_exit.o) - 0x000005c0 0x000005c0 0x00000002 Code RO 1599 .text c_w.l(use_no_semi.o) - 0x000005c2 0x000005c2 0x00000000 Code RO 1601 .text c_w.l(indicate_semi.o) - 0x000005c2 0x000005c2 0x0000002c Code RO 417 i.CLK_EnableModuleClock clk.o - 0x000005ee 0x000005ee 0x00000002 PAD - 0x000005f0 0x000005f0 0x00000010 Code RO 422 i.CLK_GetHCLKFreq clk.o - 0x00000600 0x00000600 0x00000064 Code RO 611 i.CLK_GetPLLClockFreq pwm.o - 0x00000664 0x00000664 0x00000064 Code RO 1039 i.CLK_GetPLLClockFreq spi.o - 0x000006c8 0x000006c8 0x00000064 Code RO 1394 i.CLK_GetPLLClockFreq system_m451series.o - 0x0000072c 0x0000072c 0x00000054 Code RO 432 i.CLK_SetModuleClock clk.o - 0x00000780 0x00000780 0x00000060 Code RO 175 i.EINT0_IRQHandler 24l01.o - 0x000007e0 0x000007e0 0x00000070 Code RO 4 i.GPIO_Direction_Init main.o - 0x00000850 0x00000850 0x0000002c Code RO 577 i.GPIO_SetMode gpio.o - 0x0000087c 0x0000087c 0x0000002c Code RO 1273 i.Hard_Fault_Handler retarget.o - 0x000008a8 0x000008a8 0x00000032 Code RO 178 i.NRF24L01_Read_Buf 24l01.o - 0x000008da 0x000008da 0x00000002 PAD - 0x000008dc 0x000008dc 0x00000048 Code RO 179 i.NRF24L01_RxPacket 24l01.o - 0x00000924 0x00000924 0x00000098 Code RO 181 i.NRFSetTxMode 24l01.o - 0x000009bc 0x000009bc 0x000000f0 Code RO 372 i.PWM0P0_IRQHandler interrupt.o - 0x00000aac 0x00000aac 0x00000080 Code RO 373 i.PWM1P0_IRQHandler interrupt.o - 0x00000b2c 0x00000b2c 0x0000014c Code RO 6 i.PWMInit main.o - 0x00000c78 0x00000c78 0x0000000c Code RO 619 i.PWM_ClearPeriodIntFlag pwm.o - 0x00000c84 0x00000c84 0x00000170 Code RO 623 i.PWM_ConfigOutputChannel pwm.o - 0x00000df4 0x00000df4 0x0000000c Code RO 637 i.PWM_DisableOutput pwm.o - 0x00000e00 0x00000e00 0x0000000c Code RO 657 i.PWM_EnableOutput pwm.o - 0x00000e0c 0x00000e0c 0x00000014 Code RO 659 i.PWM_EnablePeriodInt pwm.o - 0x00000e20 0x00000e20 0x00000008 Code RO 677 i.PWM_Start pwm.o - 0x00000e28 0x00000e28 0x00000088 Code RO 7 i.ParsePackage main.o - 0x00000eb0 0x00000eb0 0x000000a0 Code RO 186 i.RX_Mode 24l01.o - 0x00000f50 0x00000f50 0x0000000a Code RO 1052 i.SPI_DisableAutoSS spi.o - 0x00000f5a 0x00000f5a 0x00000002 PAD - 0x00000f5c 0x00000f5c 0x000002a0 Code RO 1059 i.SPI_Open spi.o - 0x000011fc 0x000011fc 0x00000030 Code RO 1202 i.SYS_ResetModule sys.o - 0x0000122c 0x0000122c 0x0000000c Code RO 1275 i.SendChar retarget.o - 0x00001238 0x00001238 0x00000030 Code RO 1276 i.SendChar_ToUART retarget.o - 0x00001268 0x00001268 0x000000a4 Code RO 289 i.Spi_init spi_hal.o - 0x0000130c 0x0000130c 0x00000064 Code RO 1395 i.SystemCoreClockUpdate system_m451series.o - 0x00001370 0x00001370 0x00000074 Code RO 1396 i.SystemInit system_m451series.o - 0x000013e4 0x000013e4 0x00000022 Code RO 8 i.__NVIC_EnableIRQ main.o - 0x00001406 0x00001406 0x0000000e Code RO 1474 i._is_digit c_w.l(__printf_wp.o) - 0x00001414 0x00001414 0x0000000e Code RO 290 i.delayAny spi_hal.o - 0x00001422 0x00001422 0x0000000e Code RO 188 i.delay_s 24l01.o - 0x00001430 0x00001430 0x00000008 Code RO 1278 i.ferror retarget.o - 0x00001438 0x00001438 0x00000010 Code RO 1280 i.fputc retarget.o - 0x00001448 0x00001448 0x0000003c Code RO 10 i.main main.o - 0x00001484 0x00001484 0x0000001c Code RO 291 i.nrf_read spi_hal.o - 0x000014a0 0x000014a0 0x0000001e Code RO 293 i.nrf_write spi_hal.o - 0x000014be 0x000014be 0x0000002e Code RO 294 i.nrf_writebuf spi_hal.o - 0x000014ec 0x000014ec 0x00000014 Code RO 295 i.spi_disable spi_hal.o - 0x00001500 0x00001500 0x00000014 Code RO 296 i.spi_enable spi_hal.o - 0x00001514 0x00001514 0x00000020 Code RO 297 i.spi_read spi_hal.o - 0x00001534 0x00001534 0x00000020 Code RO 298 i.spi_send spi_hal.o - 0x00001554 0x00001554 0x000000a8 Code RO 1282 i.stackDump retarget.o - 0x000015fc 0x000015fc 0x0000000a Code RO 1586 x$fpl$fpinit fz_wm.l(fpinit.o) - 0x00001606 0x00001606 0x00000028 Data RO 1447 .constdata c_w.l(_printf_hex_int.o) - 0x0000162e 0x0000162e 0x00000002 PAD - 0x00001630 0x00001630 0x00000020 Data RO 1652 Region$$Table anon$$obj.o - - - Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x00001650, Size: 0x000004f8, Max: 0x00008000, ABSOLUTE) - - Exec Addr Load Addr Size Type Attr Idx E Section Name Object - - 0x20000000 0x00001650 0x0000000c Data RW 11 .data main.o - 0x2000000c 0x0000165c 0x00000015 Data RW 190 .data 24l01.o - 0x20000021 0x00001671 0x00000003 PAD - 0x20000024 0x00001674 0x00000008 Data RW 1283 .data retarget.o - 0x2000002c 0x0000167c 0x0000002c Data RW 1397 .data system_m451series.o - 0x20000058 - 0x00000040 Zero RW 189 .bss 24l01.o - 0x20000098 - 0x00000060 Zero RW 1528 .bss c_w.l(libspace.o) - 0x200000f8 - 0x00000000 Zero RW 1385 HEAP startup_m451series.o - 0x200000f8 - 0x00000400 Zero RW 1384 STACK startup_m451series.o - - -============================================================================== - -Image component sizes - - - Code (inc. data) RO Data RW Data ZI Data Debug Object Name - - 544 58 0 21 64 5882 24l01.o - 144 10 0 0 0 16215 clk.o - 44 0 0 0 0 1183 gpio.o - 368 40 0 0 0 1168 interrupt.o - 674 58 0 12 0 209316 main.o - 532 30 0 0 0 5428 pwm.o - 324 132 0 8 0 5893 retarget.o - 782 42 0 0 0 3243 spi.o - 386 46 0 0 0 4865 spi_hal.o - 116 36 320 0 1024 948 startup_m451series.o - 48 0 0 0 0 558 sys.o - 316 54 0 44 0 33295 system_m451series.o - - ---------------------------------------------------------------------- - 4284 506 352 88 1088 287994 Object Totals - 0 0 32 0 0 0 (incl. Generated) - 6 0 0 3 0 0 (incl. Padding) - - ---------------------------------------------------------------------- - - Code (inc. data) RO Data RW Data ZI Data Debug Library Member Name - - 8 0 0 0 0 68 __main.o - 284 0 0 0 0 156 __printf_wp.o - 0 0 0 0 0 0 __rtentry.o - 12 0 0 0 0 0 __rtentry2.o - 6 0 0 0 0 0 __rtentry4.o - 52 8 0 0 0 0 __scatter.o - 26 0 0 0 0 0 __scatter_copy.o - 28 0 0 0 0 0 __scatter_zi.o - 48 6 0 0 0 96 _printf_char_common.o - 36 4 0 0 0 80 _printf_char_file.o - 88 4 40 0 0 88 _printf_hex_int.o - 178 0 0 0 0 88 _printf_intcommon.o - 0 0 0 0 0 0 _printf_percent.o - 4 0 0 0 0 0 _printf_percent_end.o - 6 0 0 0 0 0 _printf_x.o - 18 0 0 0 0 80 exit.o - 6 0 0 0 0 152 heapauxi.o - 0 0 0 0 0 0 indicate_semi.o - 2 0 0 0 0 0 libinit.o - 6 0 0 0 0 0 libinit2.o - 2 0 0 0 0 0 libshutdown.o - 2 0 0 0 0 0 libshutdown2.o - 8 4 0 0 96 68 libspace.o - 24 4 0 0 0 84 noretval__2printf.o - 78 0 0 0 0 80 rt_memclr_w.o - 2 0 0 0 0 0 rtexit.o - 10 0 0 0 0 0 rtexit2.o - 12 4 0 0 0 68 sys_exit.o - 74 0 0 0 0 80 sys_stackheap_outer.o - 2 0 0 0 0 68 use_no_semi.o - 10 0 0 0 0 116 fpinit.o - - ---------------------------------------------------------------------- - 1034 34 42 0 96 1372 Library Totals - 2 0 2 0 0 0 (incl. Padding) - - ---------------------------------------------------------------------- - - Code (inc. data) RO Data RW Data ZI Data Debug Library Name - - 1022 34 40 0 96 1256 c_w.l - 10 0 0 0 0 116 fz_wm.l - - ---------------------------------------------------------------------- - 1034 34 42 0 96 1372 Library Totals - - ---------------------------------------------------------------------- - -============================================================================== - - - Code (inc. data) RO Data RW Data ZI Data Debug - - 5318 540 394 88 1184 284494 Grand Totals - 5318 540 394 88 1184 284494 ELF Image Totals - 5318 540 394 88 0 0 ROM Totals - -============================================================================== - - Total RO Size (Code + RO Data) 5712 ( 5.58kB) - Total RW Size (RW Data + ZI Data) 1272 ( 1.24kB) - Total ROM Size (Code + RO Data + RW Data) 5800 ( 5.66kB) - -============================================================================== - diff --git a/nuvoton/m451/roboticarm_controller/Objects/roboticarm_controller.axf b/nuvoton/m451/roboticarm_controller/Objects/roboticarm_controller.axf deleted file mode 100644 index 4873cf65412b17a11bcd340f98774fc843041b02..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 319924 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 diff --git a/nuvoton/m451/roboticarm_controller/main.c b/nuvoton/m451/roboticarm_controller/main.c index bd87c2e..edd9da4 100644 --- a/nuvoton/m451/roboticarm_controller/main.c +++ b/nuvoton/m451/roboticarm_controller/main.c @@ -79,18 +79,18 @@ void PWMInit (){ SYS->GPC_MFPL |= SYS_GPC_MFPL_PC4MFP_PWM0_CH4; // PWM0 channel 0 frequency is 100Hz, duty 30%, - PWM_ConfigOutputChannel(PWM0, 0, 20, 50); + PWM_ConfigOutputChannel(PWM0, 0, 100, 50); // PWM0 channel 2 frequency is 300Hz, duty 50% - PWM_ConfigOutputChannel(PWM0, 1, 20, 50); + PWM_ConfigOutputChannel(PWM0, 1,100, 50); // PWM0 channel 0 frequency is 100Hz, duty 30%, - PWM_ConfigOutputChannel(PWM0, 3, 200, 30); + PWM_ConfigOutputChannel(PWM0, 3,300, 30); // PWM0 channel 2 frequency is 300Hz, duty 50% - PWM_ConfigOutputChannel(PWM0, 4, 20, 50); + PWM_ConfigOutputChannel(PWM0, 4, 100, 50); // PWM0 channel 0 frequency is 100Hz, duty 30%, - PWM_ConfigOutputChannel(PWM1, 0, 20, 50); + PWM_ConfigOutputChannel(PWM1, 0, 100, 50); // PWM0 channel 2 frequency is 300Hz, duty 50% - PWM_ConfigOutputChannel(PWM1, 1, 20, 50); + PWM_ConfigOutputChannel(PWM1, 1, 100, 50); // Enable output of PWM0 channel 0~3 PWM_EnableOutput(PWM0, 0xF);