Useful Notes on XMC-for-Arduino =============================== Well ones I found useful and hopefully you will. Standard Defines you can use for what is on your board ------------------------------------------------------ CPU UC_FAMILY UC_SERIES UC_DEVICE UC_PACKAGE UC_FLASH (in kB) (wish there was a UC_RAM as well for standard not dedicated RAM) Setup NUM_DIGITAL_PINS NUM_ANALOG_INPUTS NUM_PWM NUM_LEDS NUM_INTERRUPT NUM_SERIAL Analog inputs A0 to An LEDs/GPIO LED_BUILTIN LED1 to LEDn Inputs BUTTON1 to BUTTONn When board has them Interrupts RISING used instead of HIGH FALLING used instead of LOW CHANGE Library XMC_LIB_MAJOR_VERSION XMC_LIB_MINOR_VERSION XMC_LIB_PATCH_VERSION XMC_LIB_VERSION Extra modes (if patches applied) ----------- GPIO INPUT_PULLDOWN OUTPUT_OPENDRAIN Extra functions (than standard Arduino AVR) --------------- GPIO digitalToggle( pin ) Interrupts ---------- Interrupt numbers XMC1100 Boot Kit int port pin ---------------------- 0 P1.4 2 1 P0.0 3 ---------------------- XMC1100 XMC2GO int port pin ---------------------- 0 P1.4 9 ---------------------- XMC1300 Boot Kit int port pin ---------------------- 0 P0.12 14 1 P0.13 15 ---------------------- XMC4700 Reflex Kit and XMC4800 Reflex Kit int port pin ---------------------- 2 P1.0 2 3 P1.1 3 ---------------------- Pins ---- XMC1100 Boot Kit RESET is NOT an reset pin RESET is actually SPI_SS_2 and is connected to the ICSP header as well Details of pin/port are Signal Arduino Port Board ----------------------------- SPI_SS_2 23 P2.4 41 ----------------------------- XMC1xxx Series High Current pins > 5mA when LOW (Arduino pins) XMC1100 Boot Kit port pin ----------- P1.0 12 P1.1 11 P1.2 0 P1.3 1 P1.4 2 P1.5 31 (Only to LED on board) ----------- XMC1100 XMC2GO port pin ----------- P1.0 15 (Only to LED on board) P1.1 14 (Only to LED on board) ----------- XMC1300 Boot Kit port pin ----------- P1.0 23 P1.1 22 P1.2 21 P1.3 20 P1.4 19 P1.5 18 ----------- Memory ------ Memory sizes in order (not always available) RAM Found Order is Flash text <-> ctors <-> dtors <-> rodata <-> eh_frame_hdr <-> eh_frame <-> extab <-> extidx <-> Veneer (load from) <-> DATA (load from) <-> RAM Code (load from) RAM Veneer <-> Stack <-> DATA <-> RAM Code <-> BSS <-> HEAP VeneerSize VeneerStart, VeneerEnd stack_size __stack_start, __inital_sp __data_size __data_start, __data_end __ram_code_size __ram_code_start, __ram_code_end __bss_size __bss_end, __bss_start Heap_Bank1_Size Heap_Bank1_Start, Heap_Bank1_End Note __stack_start is only available if patches after V1.06 are used on linker file