[sam] Implementing timings and delay functions

This commit is contained in:
aethaniel 2011-07-14 01:18:08 +02:00
parent 2713ec4dca
commit 25e3924dda
8 changed files with 190 additions and 246 deletions

View File

@ -56,8 +56,8 @@ extern "C"{
#define degrees(rad) ((rad)*RAD_TO_DEG)
#define sq(x) ((x)*(x))
#define interrupts() sei()
#define noInterrupts() cli()
#define interrupts() __enable_irq()
#define noInterrupts() __disable_irq()
#define clockCyclesPerMicrosecond() ( VARIANT_MCK / 1000000L )
#define clockCyclesToMicroseconds(a) ( ((a) * 1000L) / (VARIANT_MCK / 1000L) )

View File

@ -111,9 +111,6 @@ wiring.o:
00000000 T init
00000000 T micros
00000000 T millis
00000008 b timer0_fract
00000004 B timer0_millis
00000000 B timer0_overflow_count
wiring_digital.o:
00000004 r APinDescription

View File

@ -185,9 +185,9 @@ Discarded input sections
.rodata 0x00000000 0x3f4 ./..\libarduino_sam3s_ek_gcc_dbg.a(board_cstartup_gnu_sam3.o)
.text 0x00000000 0x0 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.data 0x00000000 0x0 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.bss 0x00000000 0xc ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.bss 0x00000000 0x0 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.text.millis 0x00000000 0x14 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.text.micros 0x00000000 0x10 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.text.micros 0x00000000 0x44 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.text.delayMicroseconds
0x00000000 0x2c ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.text 0x00000000 0x0 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
@ -1314,118 +1314,118 @@ OUTPUT(./test_gcc_dbg.elf elf32-littlearm)
.comment 0x00000000 0x2b ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.comment 0x00000000 0x2b ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_abbrev 0x00000000 0x1716
.debug_abbrev 0x00000000 0x173c
.debug_abbrev 0x00000000 0x112 test.o
.debug_abbrev 0x00000112 0x169 ./..\libarduino_sam3s_ek_gcc_dbg.a(board_cstartup_gnu_sam3.o)
.debug_abbrev 0x0000027b 0x1fc ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.debug_abbrev 0x00000477 0x12f ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
.debug_abbrev 0x000005a6 0x2af ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
.debug_abbrev 0x00000855 0x28a ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
.debug_abbrev 0x00000adf 0x2d0 ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
.debug_abbrev 0x00000daf 0xfa ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
.debug_abbrev 0x00000ea9 0x153 ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
.debug_abbrev 0x00000ffc 0x29 ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
.debug_abbrev 0x00001025 0xc7 ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
.debug_abbrev 0x000010ec 0x66 ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
.debug_abbrev 0x00001152 0x12a ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
.debug_abbrev 0x0000127c 0xf4 ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
.debug_abbrev 0x00001370 0xc9 ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
.debug_abbrev 0x00001439 0x1ce ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_abbrev 0x00001607 0x10f ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_abbrev 0x0000027b 0x222 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.debug_abbrev 0x0000049d 0x12f ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
.debug_abbrev 0x000005cc 0x2af ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
.debug_abbrev 0x0000087b 0x28a ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
.debug_abbrev 0x00000b05 0x2d0 ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
.debug_abbrev 0x00000dd5 0xfa ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
.debug_abbrev 0x00000ecf 0x153 ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
.debug_abbrev 0x00001022 0x29 ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
.debug_abbrev 0x0000104b 0xc7 ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
.debug_abbrev 0x00001112 0x66 ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
.debug_abbrev 0x00001178 0x12a ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
.debug_abbrev 0x000012a2 0xf4 ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
.debug_abbrev 0x00001396 0xc9 ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
.debug_abbrev 0x0000145f 0x1ce ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_abbrev 0x0000162d 0x10f ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_info 0x00000000 0xa921
.debug_info 0x00000000 0xa931
.debug_info 0x00000000 0x7f9 test.o
.debug_info 0x000007f9 0xaa5 ./..\libarduino_sam3s_ek_gcc_dbg.a(board_cstartup_gnu_sam3.o)
.debug_info 0x0000129e 0x106b ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.debug_info 0x00002309 0x85b ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
.debug_info 0x00002b64 0x1b70 ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
.debug_info 0x000046d4 0x11b1 ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
.debug_info 0x00005885 0x206a ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
.debug_info 0x000078ef 0x7d6 ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
.debug_info 0x000080c5 0xb53 ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
.debug_info 0x00008c18 0x3e ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
.debug_info 0x00008c56 0x12c ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
.debug_info 0x00008d82 0xb8 ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
.debug_info 0x00008e3a 0x96a ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
.debug_info 0x000097a4 0x457 ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
.debug_info 0x00009bfb 0x1df ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
.debug_info 0x00009dda 0x66b ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_info 0x0000a445 0x4dc ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_info 0x0000129e 0x107b ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.debug_info 0x00002319 0x85b ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
.debug_info 0x00002b74 0x1b70 ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
.debug_info 0x000046e4 0x11b1 ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
.debug_info 0x00005895 0x206a ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
.debug_info 0x000078ff 0x7d6 ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
.debug_info 0x000080d5 0xb53 ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
.debug_info 0x00008c28 0x3e ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
.debug_info 0x00008c66 0x12c ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
.debug_info 0x00008d92 0xb8 ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
.debug_info 0x00008e4a 0x96a ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
.debug_info 0x000097b4 0x457 ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
.debug_info 0x00009c0b 0x1df ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
.debug_info 0x00009dea 0x66b ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_info 0x0000a455 0x4dc ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_line 0x00000000 0x2362
.debug_line 0x00000000 0x2384
.debug_line 0x00000000 0x16d test.o
.debug_line 0x0000016d 0x191 ./..\libarduino_sam3s_ek_gcc_dbg.a(board_cstartup_gnu_sam3.o)
.debug_line 0x000002fe 0x23e ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.debug_line 0x0000053c 0x193 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
.debug_line 0x000006cf 0x437 ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
.debug_line 0x00000b06 0x2de ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
.debug_line 0x00000de4 0x809 ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
.debug_line 0x000015ed 0x155 ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
.debug_line 0x00001742 0x1a3 ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
.debug_line 0x000018e5 0x47 ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
.debug_line 0x0000192c 0xcb ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
.debug_line 0x000019f7 0xe2 ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
.debug_line 0x00001ad9 0x1fb ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
.debug_line 0x00001cd4 0x17b ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
.debug_line 0x00001e4f 0x13f ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
.debug_line 0x00001f8e 0x1a1 ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_line 0x0000212f 0x233 ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_line 0x000002fe 0x260 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.debug_line 0x0000055e 0x193 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
.debug_line 0x000006f1 0x437 ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
.debug_line 0x00000b28 0x2de ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
.debug_line 0x00000e06 0x809 ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
.debug_line 0x0000160f 0x155 ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
.debug_line 0x00001764 0x1a3 ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
.debug_line 0x00001907 0x47 ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
.debug_line 0x0000194e 0xcb ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
.debug_line 0x00001a19 0xe2 ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
.debug_line 0x00001afb 0x1fb ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
.debug_line 0x00001cf6 0x17b ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
.debug_line 0x00001e71 0x13f ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
.debug_line 0x00001fb0 0x1a1 ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_line 0x00002151 0x233 ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_loc 0x00000000 0x22d8
.debug_loc 0x00000000 0x22e4
.debug_loc 0x00000000 0x58 test.o
.debug_loc 0x00000058 0x38 ./..\libarduino_sam3s_ek_gcc_dbg.a(board_cstartup_gnu_sam3.o)
.debug_loc 0x00000090 0x1bc ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.debug_loc 0x0000024c 0xa8 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
.debug_loc 0x000002f4 0x544 ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
.debug_loc 0x00000838 0x2a0 ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
.debug_loc 0x00000ad8 0xe3c ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
.debug_loc 0x00001914 0x2c ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
.debug_loc 0x00001940 0xbc ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
.debug_loc 0x000019fc 0x2c ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
.debug_loc 0x00001a28 0x38 ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
.debug_loc 0x00001a60 0x2c ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
.debug_loc 0x00001a8c 0x268 ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
.debug_loc 0x00001cf4 0x100 ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
.debug_loc 0x00001df4 0x118 ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
.debug_loc 0x00001f0c 0x170 ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_loc 0x0000207c 0x25c ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_loc 0x00000090 0x1c8 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.debug_loc 0x00000258 0xa8 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
.debug_loc 0x00000300 0x544 ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
.debug_loc 0x00000844 0x2a0 ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
.debug_loc 0x00000ae4 0xe3c ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
.debug_loc 0x00001920 0x2c ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
.debug_loc 0x0000194c 0xbc ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
.debug_loc 0x00001a08 0x2c ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
.debug_loc 0x00001a34 0x38 ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
.debug_loc 0x00001a6c 0x2c ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
.debug_loc 0x00001a98 0x268 ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
.debug_loc 0x00001d00 0x100 ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
.debug_loc 0x00001e00 0x118 ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
.debug_loc 0x00001f18 0x170 ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_loc 0x00002088 0x25c ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_pubnames
0x00000000 0xd27
0x00000000 0xcfb
.debug_pubnames
0x00000000 0x25 test.o
.debug_pubnames
0x00000025 0x42 ./..\libarduino_sam3s_ek_gcc_dbg.a(board_cstartup_gnu_sam3.o)
.debug_pubnames
0x00000067 0x91 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
0x00000067 0x65 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.debug_pubnames
0x000000f8 0x3f ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
0x000000cc 0x3f ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
.debug_pubnames
0x00000137 0x1cb ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
0x0000010b 0x1cb ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
.debug_pubnames
0x00000302 0x11f ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
0x000002d6 0x11f ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
.debug_pubnames
0x00000421 0x524 ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
0x000003f5 0x524 ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
.debug_pubnames
0x00000945 0x1b ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
0x00000919 0x1b ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
.debug_pubnames
0x00000960 0x90 ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
0x00000934 0x90 ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
.debug_pubnames
0x000009f0 0x29 ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
0x000009c4 0x29 ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
.debug_pubnames
0x00000a19 0x21 ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
0x000009ed 0x21 ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
.debug_pubnames
0x00000a3a 0x24 ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
0x00000a0e 0x24 ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
.debug_pubnames
0x00000a5e 0xe1 ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
0x00000a32 0xe1 ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
.debug_pubnames
0x00000b3f 0x98 ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
0x00000b13 0x98 ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
.debug_pubnames
0x00000bd7 0x65 ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
0x00000bab 0x65 ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
.debug_pubnames
0x00000c3c 0x64 ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
0x00000c10 0x64 ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_pubnames
0x00000ca0 0x87 ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
0x00000c74 0x87 ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_pubtypes
0x00000000 0x93c
@ -1517,117 +1517,117 @@ OUTPUT(./test_gcc_dbg.elf elf32-littlearm)
.debug_ranges 0x00000518 0x40 ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_ranges 0x00000558 0x60 ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_str 0x00000000 0x1ea0
.debug_str 0x00000000 0x1e99
.debug_str 0x00000000 0x514 test.o
0x574 (size before relaxing)
.debug_str 0x00000514 0x115 ./..\libarduino_sam3s_ek_gcc_dbg.a(board_cstartup_gnu_sam3.o)
0x61d (size before relaxing)
.debug_str 0x00000629 0x421 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
0x9d5 (size before relaxing)
.debug_str 0x00000a4a 0x42 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
.debug_str 0x00000629 0x41a ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
0x9c7 (size before relaxing)
.debug_str 0x00000a43 0x42 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
0x58a (size before relaxing)
.debug_str 0x00000a8c 0x9ac ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
.debug_str 0x00000a85 0x9ac ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
0xf1d (size before relaxing)
.debug_str 0x00001438 0x309 ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
.debug_str 0x00001431 0x309 ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
0xa97 (size before relaxing)
.debug_str 0x00001741 0x1a8 ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
.debug_str 0x0000173a 0x1a8 ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
0x9be (size before relaxing)
.debug_str 0x000018e9 0x11 ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
.debug_str 0x000018e2 0x11 ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
0x55e (size before relaxing)
.debug_str 0x000018fa 0xf8 ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
.debug_str 0x000018f3 0xf8 ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
0x8fa (size before relaxing)
.debug_str 0x000019f2 0x28 ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
.debug_str 0x000019eb 0x28 ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
0x6a (size before relaxing)
.debug_str 0x00001a1a 0x48 ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
.debug_str 0x00001a13 0x48 ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
0x145 (size before relaxing)
.debug_str 0x00001a62 0x5d ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
.debug_str 0x00001a5b 0x5d ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
0x107 (size before relaxing)
.debug_str 0x00001abf 0x11c ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
.debug_str 0x00001ab8 0x11c ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
0x54b (size before relaxing)
.debug_str 0x00001bdb 0x8f ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
.debug_str 0x00001bd4 0x8f ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
0x2bc (size before relaxing)
.debug_str 0x00001c6a 0x54 ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
.debug_str 0x00001c63 0x54 ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
0x160 (size before relaxing)
.debug_str 0x00001cbe 0x82 ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_str 0x00001cb7 0x82 ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
0x43b (size before relaxing)
.debug_str 0x00001d40 0x160 ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_str 0x00001d39 0x160 ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
0x265 (size before relaxing)
.debug_frame 0x00000000 0x2348
.debug_frame 0x00000000 0x2350
.debug_frame 0x00000000 0x48 test.o
.debug_frame 0x00000048 0x30 ./..\libarduino_sam3s_ek_gcc_dbg.a(board_cstartup_gnu_sam3.o)
.debug_frame 0x00000078 0x114 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.debug_frame 0x0000018c 0x70 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
.debug_frame 0x000001fc 0x310 ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
.debug_frame 0x0000050c 0x178 ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
.debug_frame 0x00000684 0x820 ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
.debug_frame 0x00000ea4 0x2c ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
.debug_frame 0x00000ed0 0x84 ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
.debug_frame 0x00000f54 0x28 ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
.debug_frame 0x00000f7c 0x2c ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
.debug_frame 0x00000fa8 0x30 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-atol.o)
.debug_frame 0x00000fd8 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-init.o)
.debug_frame 0x00001004 0x20 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-isspace.o)
.debug_frame 0x00001024 0x30 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-malloc.o)
.debug_frame 0x00001054 0x3c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-mallocr.o)
.debug_frame 0x00001090 0x30 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-memcpy.o)
.debug_frame 0x000010c0 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-memmove.o)
.debug_frame 0x000010ec 0x30 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-mlock.o)
.debug_frame 0x0000111c 0x20 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-realloc.o)
.debug_frame 0x0000113c 0x3c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-reallocr.o)
.debug_frame 0x00001178 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-sbrkr.o)
.debug_frame 0x000011a4 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strchr.o)
.debug_frame 0x000011d0 0x30 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strcmp.o)
.debug_frame 0x00001200 0x20 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strcpy.o)
.debug_frame 0x00001220 0x20 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strlen.o)
.debug_frame 0x00001240 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strncmp.o)
.debug_frame 0x0000126c 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strncpy.o)
.debug_frame 0x00001298 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strrchr.o)
.debug_frame 0x000012c4 0x90 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strstr.o)
.debug_frame 0x00001354 0x54 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strtol.o)
.debug_frame 0x000013a8 0x20 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-tolower.o)
.debug_frame 0x000013c8 0x20 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-toupper.o)
.debug_frame 0x000013e8 0x50 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-freer.o)
.debug_frame 0x00001438 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-memchr.o)
.debug_frame 0x00001464 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-memcmp.o)
.debug_frame 0x00001490 0x68 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-reent.o)
.debug_frame 0x000014f8 0x28 ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
.debug_frame 0x00001520 0x150 ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
.debug_frame 0x00001670 0xa0 ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
.debug_frame 0x00001710 0x9c ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
.debug_frame 0x000017ac 0xd4 ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_frame 0x00001880 0x144 ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_frame 0x000019c4 0x20 c:/codesourcery_2011.03-42/bin/../lib/gcc/arm-none-eabi/4.5.2/thumb2\libgcc.a(_udivsi3.o)
.debug_frame 0x000019e4 0x44 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-assert.o)
.debug_frame 0x00001a28 0x5c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fiprintf.o)
.debug_frame 0x00001a84 0x5c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-iprintf.o)
.debug_frame 0x00001ae0 0x7c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-vfiprintf.o)
.debug_frame 0x00001b5c 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-wsetup.o)
.debug_frame 0x00001b88 0x28 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-abort.o)
.debug_frame 0x00001bb0 0x40 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fflush.o)
.debug_frame 0x00001bf0 0x114 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-findfp.o)
.debug_frame 0x00001d04 0x54 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fputwc.o)
.debug_frame 0x00001d58 0x3c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fvwrite.o)
.debug_frame 0x00001d94 0x58 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fwalk.o)
.debug_frame 0x00001dec 0x98 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-locale.o)
.debug_frame 0x00001e84 0x34 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-makebuf.o)
.debug_frame 0x00001eb8 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-memset.o)
.debug_frame 0x00001ee4 0xc0 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-signal.o)
.debug_frame 0x00001fa4 0x3c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-signalr.o)
.debug_frame 0x00001fe0 0x80 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-stdio.o)
.debug_frame 0x00002060 0x3c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-wbuf.o)
.debug_frame 0x0000209c 0x5c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-wcrtomb.o)
.debug_frame 0x000020f8 0x44 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-wctomb_r.o)
.debug_frame 0x0000213c 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-writer.o)
.debug_frame 0x00002168 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-closer.o)
.debug_frame 0x00002194 0x3c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fclose.o)
.debug_frame 0x000021d0 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fstatr.o)
.debug_frame 0x000021fc 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-isattyr.o)
.debug_frame 0x00002228 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-lseekr.o)
.debug_frame 0x00002254 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-readr.o)
.debug_frame 0x00002280 0x50 c:/codesourcery_2011.03-42/bin/../lib/gcc/arm-none-eabi/4.5.2/thumb2\libgcc.a(bpabi.o)
.debug_frame 0x000022d0 0x3c c:/codesourcery_2011.03-42/bin/../lib/gcc/arm-none-eabi/4.5.2/thumb2\libgcc.a(_divdi3.o)
.debug_frame 0x0000230c 0x3c c:/codesourcery_2011.03-42/bin/../lib/gcc/arm-none-eabi/4.5.2/thumb2\libgcc.a(_udivdi3.o)
.debug_frame 0x00000078 0x11c ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
.debug_frame 0x00000194 0x70 ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring_digital.o)
.debug_frame 0x00000204 0x310 ./..\libarduino_sam3s_ek_gcc_dbg.a(Print.o)
.debug_frame 0x00000514 0x178 ./..\libarduino_sam3s_ek_gcc_dbg.a(UART.o)
.debug_frame 0x0000068c 0x820 ./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
.debug_frame 0x00000eac 0x2c ./..\libarduino_sam3s_ek_gcc_dbg.a(main.o)
.debug_frame 0x00000ed8 0x84 ./..\libarduino_sam3s_ek_gcc_dbg.a(variant.o)
.debug_frame 0x00000f5c 0x28 ./..\libarduino_sam3s_ek_gcc_dbg.a(cxxabi-compat.o)
.debug_frame 0x00000f84 0x2c ./..\libarduino_sam3s_ek_gcc_dbg.a(HardwareSerial.o)
.debug_frame 0x00000fb0 0x30 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-atol.o)
.debug_frame 0x00000fe0 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-init.o)
.debug_frame 0x0000100c 0x20 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-isspace.o)
.debug_frame 0x0000102c 0x30 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-malloc.o)
.debug_frame 0x0000105c 0x3c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-mallocr.o)
.debug_frame 0x00001098 0x30 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-memcpy.o)
.debug_frame 0x000010c8 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-memmove.o)
.debug_frame 0x000010f4 0x30 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-mlock.o)
.debug_frame 0x00001124 0x20 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-realloc.o)
.debug_frame 0x00001144 0x3c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-reallocr.o)
.debug_frame 0x00001180 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-sbrkr.o)
.debug_frame 0x000011ac 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strchr.o)
.debug_frame 0x000011d8 0x30 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strcmp.o)
.debug_frame 0x00001208 0x20 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strcpy.o)
.debug_frame 0x00001228 0x20 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strlen.o)
.debug_frame 0x00001248 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strncmp.o)
.debug_frame 0x00001274 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strncpy.o)
.debug_frame 0x000012a0 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strrchr.o)
.debug_frame 0x000012cc 0x90 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strstr.o)
.debug_frame 0x0000135c 0x54 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strtol.o)
.debug_frame 0x000013b0 0x20 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-tolower.o)
.debug_frame 0x000013d0 0x20 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-toupper.o)
.debug_frame 0x000013f0 0x50 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-freer.o)
.debug_frame 0x00001440 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-memchr.o)
.debug_frame 0x0000146c 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-memcmp.o)
.debug_frame 0x00001498 0x68 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-reent.o)
.debug_frame 0x00001500 0x28 ./..\libchip_sam3s4_gcc_dbg.a(exceptions.o)
.debug_frame 0x00001528 0x150 ./..\libchip_sam3s4_gcc_dbg.a(pio.o)
.debug_frame 0x00001678 0xa0 ./..\libchip_sam3s4_gcc_dbg.a(pmc.o)
.debug_frame 0x00001718 0x9c ./..\libchip_sam3s4_gcc_dbg.a(wdt.o)
.debug_frame 0x000017b4 0xd4 ./..\libchip_sam3s4_gcc_dbg.a(timetick.o)
.debug_frame 0x00001888 0x144 ./..\libarduino_sam3s_ek_gcc_dbg.a(syscalls_sam3.o)
.debug_frame 0x000019cc 0x20 c:/codesourcery_2011.03-42/bin/../lib/gcc/arm-none-eabi/4.5.2/thumb2\libgcc.a(_udivsi3.o)
.debug_frame 0x000019ec 0x44 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-assert.o)
.debug_frame 0x00001a30 0x5c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fiprintf.o)
.debug_frame 0x00001a8c 0x5c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-iprintf.o)
.debug_frame 0x00001ae8 0x7c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-vfiprintf.o)
.debug_frame 0x00001b64 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-wsetup.o)
.debug_frame 0x00001b90 0x28 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-abort.o)
.debug_frame 0x00001bb8 0x40 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fflush.o)
.debug_frame 0x00001bf8 0x114 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-findfp.o)
.debug_frame 0x00001d0c 0x54 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fputwc.o)
.debug_frame 0x00001d60 0x3c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fvwrite.o)
.debug_frame 0x00001d9c 0x58 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fwalk.o)
.debug_frame 0x00001df4 0x98 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-locale.o)
.debug_frame 0x00001e8c 0x34 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-makebuf.o)
.debug_frame 0x00001ec0 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-memset.o)
.debug_frame 0x00001eec 0xc0 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-signal.o)
.debug_frame 0x00001fac 0x3c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-signalr.o)
.debug_frame 0x00001fe8 0x80 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-stdio.o)
.debug_frame 0x00002068 0x3c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-wbuf.o)
.debug_frame 0x000020a4 0x5c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-wcrtomb.o)
.debug_frame 0x00002100 0x44 c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-wctomb_r.o)
.debug_frame 0x00002144 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-writer.o)
.debug_frame 0x00002170 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-closer.o)
.debug_frame 0x0000219c 0x3c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fclose.o)
.debug_frame 0x000021d8 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-fstatr.o)
.debug_frame 0x00002204 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-isattyr.o)
.debug_frame 0x00002230 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-lseekr.o)
.debug_frame 0x0000225c 0x2c c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-readr.o)
.debug_frame 0x00002288 0x50 c:/codesourcery_2011.03-42/bin/../lib/gcc/arm-none-eabi/4.5.2/thumb2\libgcc.a(bpabi.o)
.debug_frame 0x000022d8 0x3c c:/codesourcery_2011.03-42/bin/../lib/gcc/arm-none-eabi/4.5.2/thumb2\libgcc.a(_divdi3.o)
.debug_frame 0x00002314 0x3c c:/codesourcery_2011.03-42/bin/../lib/gcc/arm-none-eabi/4.5.2/thumb2\libgcc.a(_udivdi3.o)
Cross Reference Table
@ -2292,8 +2292,6 @@ strstr c:\codesourcery_2011.03-42\bin
./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
strtol c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-strtol.o)
c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-atol.o)
timer0_millis ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
timer0_overflow_count ./..\libarduino_sam3s_ek_gcc_dbg.a(wiring.o)
tolower c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-tolower.o)
./..\libarduino_sam3s_ek_gcc_dbg.a(WString.o)
toupper c:\codesourcery_2011.03-42\bin\../arm-none-eabi/lib/thumb2\libc.a(lib_a-toupper.o)

View File

@ -24,44 +24,6 @@
#include "wiring_private.h"
// the prescaler is set so that timer0 ticks every 64 clock cycles, and the
// the overflow handler is called every 256 ticks.
#define MICROSECONDS_PER_TIMER0_OVERFLOW (clockCyclesToMicroseconds(64 * 256))
// the whole number of milliseconds per timer0 overflow
#define MILLIS_INC (MICROSECONDS_PER_TIMER0_OVERFLOW / 1000)
// the fractional number of milliseconds per timer0 overflow. we shift right
// by three to fit these numbers into a byte. (for the clock speeds we care
// about - 8 and 16 MHz - this doesn't lose precision.)
#define FRACT_INC ((MICROSECONDS_PER_TIMER0_OVERFLOW % 1000) >> 3)
#define FRACT_MAX (1000 >> 3)
volatile unsigned long timer0_overflow_count = 0;
volatile unsigned long timer0_millis = 0;
static unsigned char timer0_fract = 0;
/*
SIGNAL(TIMER0_OVF_vect)
{
// copy these to local variables so they can be stored in registers
// (volatile variables must be read from memory on every access)
unsigned long m = timer0_millis;
unsigned char f = timer0_fract;
m += MILLIS_INC;
f += FRACT_INC;
if (f >= FRACT_MAX) {
f -= FRACT_MAX;
m += 1;
}
timer0_fract = f;
timer0_millis = m;
timer0_overflow_count++;
}
*/
uint32_t millis( void )
{
// todo: ensure no interrupts
@ -70,49 +32,36 @@ uint32_t millis( void )
uint32_t micros( void )
{
/*
unsigned long m;
uint8_t oldSREG = SREG, t;
uint32_t dwTicks ;
cli();
m = timer0_overflow_count;
#if defined(TCNT0)
t = TCNT0;
#elif defined(TCNT0L)
t = TCNT0L;
#else
#error TIMER 0 not defined
#endif
#ifdef TIFR0
if ((TIFR0 & _BV(TOV0)) && (t < 255))
m++;
#else
if ((TIFR & _BV(TOV0)) && (t < 255))
m++;
#endif
SREG = oldSREG;
return ((m << 8) + t) * (64 / clockCyclesPerMicrosecond());
*/
return 0 ;
__disable_irq() ;
dwTicks=SysTick->VAL ;
__enable_irq() ;
return (GetTickCount()*1000) + ((SysTick->LOAD + 1 - dwTicks)/(VARIANT_MCK/1000000)) ;
}
/// \brief Pauses the program for the amount of time (in miliseconds) specified as parameter.
/// (There are 1000 milliseconds in a second.)
///
/// \param dwMs the number of milliseconds to pause (uint32_t)
///
void delay( uint32_t dwMs )
{
Wait( dwMs ) ;
}
/* Delay for the given number of microseconds. Assumes a 64 MHz clock. */
/// \brief Pauses the program for the amount of time (in microseconds) specified as parameter.
///
/// \param dwUs the number of microseconds to pause (uint32_t)
///
void delayMicroseconds( uint32_t dwUs )
{
uint32_t dwStartMicros=micros() ;
while ( (micros() - dwStartMicros) < dwUs )
{
//* do nothing
// do nothing
}
}