mirror of https://github.com/noisymime/Arduino.git
[sam] adding wiring_digital and validation app
This commit is contained in:
parent
03c064e946
commit
6c6038f81a
|
@ -59,9 +59,9 @@ extern "C"{
|
||||||
#define interrupts() sei()
|
#define interrupts() sei()
|
||||||
#define noInterrupts() cli()
|
#define noInterrupts() cli()
|
||||||
|
|
||||||
#define clockCyclesPerMicrosecond() ( BOARD_MCK / 1000000L )
|
#define clockCyclesPerMicrosecond() ( VARIANT_MCK / 1000000L )
|
||||||
#define clockCyclesToMicroseconds(a) ( ((a) * 1000L) / (BOARD_MCK / 1000L) )
|
#define clockCyclesToMicroseconds(a) ( ((a) * 1000L) / (VARIANT_MCK / 1000L) )
|
||||||
#define microsecondsToClockCycles(a) ( ((a) * (BOARD_MCK / 1000L)) / 1000L )
|
#define microsecondsToClockCycles(a) ( ((a) * (VARIANT_MCK / 1000L)) / 1000L )
|
||||||
|
|
||||||
#define lowByte(w) ((uint8_t) ((w) & 0xff))
|
#define lowByte(w) ((uint8_t) ((w) & 0xff))
|
||||||
#define highByte(w) ((uint8_t) ((w) >> 8))
|
#define highByte(w) ((uint8_t) ((w) >> 8))
|
||||||
|
@ -71,7 +71,6 @@ extern "C"{
|
||||||
#define bitClear(value, bit) ((value) &= ~(1UL << (bit)))
|
#define bitClear(value, bit) ((value) &= ~(1UL << (bit)))
|
||||||
#define bitWrite(value, bit, bitvalue) (bitvalue ? bitSet(value, bit) : bitClear(value, bit))
|
#define bitWrite(value, bit, bitvalue) (bitvalue ? bitSet(value, bit) : bitClear(value, bit))
|
||||||
|
|
||||||
|
|
||||||
typedef unsigned int word;
|
typedef unsigned int word;
|
||||||
|
|
||||||
#define bit(b) (1UL << (b))
|
#define bit(b) (1UL << (b))
|
||||||
|
@ -80,29 +79,35 @@ typedef unsigned int word;
|
||||||
typedef uint8_t boolean ;
|
typedef uint8_t boolean ;
|
||||||
typedef uint8_t byte ;
|
typedef uint8_t byte ;
|
||||||
|
|
||||||
void init( void ) ;
|
|
||||||
|
|
||||||
void pinMode( uint8_t, uint8_t ) ;
|
// wiring_digital.c
|
||||||
void digitalWrite( uint8_t, uint8_t ) ;
|
extern void pinMode( uint32_t dwPin, uint32_t dwMode ) ;
|
||||||
int digitalRead( uint8_t ) ;
|
extern void digitalWrite( uint32_t dwPin, uint32_t dwVal ) ;
|
||||||
int analogRead( uint8_t ) ;
|
extern int digitalRead( uint32_t dwPin ) ;
|
||||||
void analogReference( uint8_t mode ) ;
|
|
||||||
void analogWrite( uint8_t, int ) ;
|
|
||||||
|
|
||||||
unsigned long millis( void ) ;
|
// wiring_analog.c
|
||||||
unsigned long micros( void ) ;
|
extern int analogRead( uint8_t ) ;
|
||||||
|
extern void analogReference( uint8_t mode ) ;
|
||||||
|
extern void analogWrite( uint8_t, int ) ;
|
||||||
|
|
||||||
|
// wiring.c
|
||||||
|
extern void init( void ) ;
|
||||||
|
extern unsigned long millis( void ) ;
|
||||||
|
extern unsigned long micros( void ) ;
|
||||||
//void delay(unsigned long);
|
//void delay(unsigned long);
|
||||||
#define delay( dwMs ) Wait( dwMs )
|
#define delay( dwMs ) Wait( dwMs )
|
||||||
void delayMicroseconds( unsigned int us ) ;
|
extern void delayMicroseconds( unsigned int us ) ;
|
||||||
|
|
||||||
void shiftOut( uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val ) ;
|
// wiring_shift.c
|
||||||
uint8_t shiftIn( uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder ) ;
|
extern void shiftOut( uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val ) ;
|
||||||
|
extern uint8_t shiftIn( uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder ) ;
|
||||||
|
|
||||||
void attachInterrupt( uint8_t, void (*)(void), int mode ) ;
|
extern void attachInterrupt( uint8_t, void (*)(void), int mode ) ;
|
||||||
void detachInterrupt( uint8_t ) ;
|
extern void detachInterrupt( uint8_t ) ;
|
||||||
|
|
||||||
void setup( void ) ;
|
// sketch
|
||||||
void loop( void ) ;
|
extern void setup( void ) ;
|
||||||
|
extern void loop( void ) ;
|
||||||
|
|
||||||
// Get the bit location within the hardware port of the given virtual pin.
|
// Get the bit location within the hardware port of the given virtual pin.
|
||||||
// This comes from the pins_*.c file for the active board configuration.
|
// This comes from the pins_*.c file for the active board configuration.
|
||||||
|
@ -138,16 +143,16 @@ uint16_t makeWord( byte h, byte l ) ;
|
||||||
|
|
||||||
#define word(...) makeWord(__VA_ARGS__)
|
#define word(...) makeWord(__VA_ARGS__)
|
||||||
|
|
||||||
unsigned long pulseIn( uint8_t pin, uint8_t state, unsigned long timeout = 1000000L ) ;
|
extern unsigned long pulseIn( uint8_t pin, uint8_t state, unsigned long timeout = 1000000L ) ;
|
||||||
|
|
||||||
void tone( uint8_t _pin, unsigned int frequency, unsigned long duration = 0 ) ;
|
extern void tone( uint8_t _pin, unsigned int frequency, unsigned long duration = 0 ) ;
|
||||||
void noTone( uint8_t _pin ) ;
|
extern void noTone( uint8_t _pin ) ;
|
||||||
|
|
||||||
// WMath prototypes
|
// WMath prototypes
|
||||||
long random( long ) ;
|
extern long random( long ) ;
|
||||||
long random( long, long ) ;
|
extern long random( long, long ) ;
|
||||||
void randomSeed( unsigned int ) ;
|
extern void randomSeed( unsigned int ) ;
|
||||||
long map( long, long, long, long, long ) ;
|
extern long map( long, long, long, long, long ) ;
|
||||||
|
|
||||||
#endif // __cplusplus
|
#endif // __cplusplus
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
//#include "wiring_private.h"
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
#include "HardwareSerial.h"
|
#include "HardwareSerial.h"
|
||||||
|
|
|
@ -30,7 +30,7 @@ extern "C" {
|
||||||
void randomSeed(unsigned int seed)
|
void randomSeed(unsigned int seed)
|
||||||
{
|
{
|
||||||
if (seed != 0) {
|
if (seed != 0) {
|
||||||
srandom(seed);
|
srand(seed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ long random(long howbig)
|
||||||
if (howbig == 0) {
|
if (howbig == 0) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
return random() % howbig;
|
return rand() % howbig;
|
||||||
}
|
}
|
||||||
|
|
||||||
long random(long howsmall, long howbig)
|
long random(long howsmall, long howbig)
|
||||||
|
|
|
@ -64,7 +64,7 @@ String::String(unsigned char value, unsigned char base)
|
||||||
{
|
{
|
||||||
init();
|
init();
|
||||||
char buf[9];
|
char buf[9];
|
||||||
utoa(value, buf, base);
|
// utoa(value, buf, base);
|
||||||
*this = buf;
|
*this = buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,7 +72,7 @@ String::String(int value, unsigned char base)
|
||||||
{
|
{
|
||||||
init();
|
init();
|
||||||
char buf[18];
|
char buf[18];
|
||||||
itoa(value, buf, base);
|
// itoa(value, buf, base);
|
||||||
*this = buf;
|
*this = buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -80,7 +80,7 @@ String::String(unsigned int value, unsigned char base)
|
||||||
{
|
{
|
||||||
init();
|
init();
|
||||||
char buf[17];
|
char buf[17];
|
||||||
utoa(value, buf, base);
|
// utoa(value, buf, base);
|
||||||
*this = buf;
|
*this = buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -88,7 +88,7 @@ String::String(long value, unsigned char base)
|
||||||
{
|
{
|
||||||
init();
|
init();
|
||||||
char buf[34];
|
char buf[34];
|
||||||
ltoa(value, buf, base);
|
// ltoa(value, buf, base);
|
||||||
*this = buf;
|
*this = buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -96,7 +96,7 @@ String::String(unsigned long value, unsigned char base)
|
||||||
{
|
{
|
||||||
init();
|
init();
|
||||||
char buf[33];
|
char buf[33];
|
||||||
ultoa(value, buf, base);
|
// ultoa(value, buf, base);
|
||||||
*this = buf;
|
*this = buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -251,35 +251,35 @@ unsigned char String::concat(char c)
|
||||||
unsigned char String::concat(unsigned char num)
|
unsigned char String::concat(unsigned char num)
|
||||||
{
|
{
|
||||||
char buf[4];
|
char buf[4];
|
||||||
itoa(num, buf, 10);
|
// itoa(num, buf, 10);
|
||||||
return concat(buf, strlen(buf));
|
return concat(buf, strlen(buf));
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned char String::concat(int num)
|
unsigned char String::concat(int num)
|
||||||
{
|
{
|
||||||
char buf[7];
|
char buf[7];
|
||||||
itoa(num, buf, 10);
|
// itoa(num, buf, 10);
|
||||||
return concat(buf, strlen(buf));
|
return concat(buf, strlen(buf));
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned char String::concat(unsigned int num)
|
unsigned char String::concat(unsigned int num)
|
||||||
{
|
{
|
||||||
char buf[6];
|
char buf[6];
|
||||||
utoa(num, buf, 10);
|
// utoa(num, buf, 10);
|
||||||
return concat(buf, strlen(buf));
|
return concat(buf, strlen(buf));
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned char String::concat(long num)
|
unsigned char String::concat(long num)
|
||||||
{
|
{
|
||||||
char buf[12];
|
char buf[12];
|
||||||
ltoa(num, buf, 10);
|
// ltoa(num, buf, 10);
|
||||||
return concat(buf, strlen(buf));
|
return concat(buf, strlen(buf));
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned char String::concat(unsigned long num)
|
unsigned char String::concat(unsigned long num)
|
||||||
{
|
{
|
||||||
char buf[11];
|
char buf[11];
|
||||||
ultoa(num, buf, 10);
|
// ultoa(num, buf, 10);
|
||||||
return concat(buf, strlen(buf));
|
return concat(buf, strlen(buf));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -13,12 +13,12 @@ all: sam3s_ek
|
||||||
sam3s_ek:
|
sam3s_ek:
|
||||||
@echo --- Making sam3s_ek
|
@echo --- Making sam3s_ek
|
||||||
@$(MAKE) DEBUG=1 $(SUBMAKE_OPTIONS) -f arduino_sam3s_ek.mk
|
@$(MAKE) DEBUG=1 $(SUBMAKE_OPTIONS) -f arduino_sam3s_ek.mk
|
||||||
@$(MAKE) $(SUBMAKE_OPTIONS) -f arduino_sam3s_ek.mk
|
# @$(MAKE) $(SUBMAKE_OPTIONS) -f arduino_sam3s_ek.mk
|
||||||
|
|
||||||
.PHONY: clean
|
.PHONY: clean
|
||||||
clean:
|
clean:
|
||||||
@echo --- Cleaning sam3s_ek
|
@echo --- Cleaning sam3s_ek
|
||||||
@$(MAKE) $(SUBMAKE_OPTIONS) -f arduino_sam3s_ek.mk $@
|
|
||||||
@$(MAKE) DEBUG=1 $(SUBMAKE_OPTIONS) -f arduino_sam3s_ek.mk $@
|
@$(MAKE) DEBUG=1 $(SUBMAKE_OPTIONS) -f arduino_sam3s_ek.mk $@
|
||||||
|
# @$(MAKE) $(SUBMAKE_OPTIONS) -f arduino_sam3s_ek.mk $@
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
CHIP=sam3s4
|
CHIP=sam3s4
|
||||||
VARIANT=sam3s_ek
|
VARIANT=sam3s_ek
|
||||||
LIBNAME=arduino_sam3s_ek
|
LIBNAME=libarduino_$(VARIANT)
|
||||||
TOOLCHAIN=gcc
|
TOOLCHAIN=gcc
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
@ -24,17 +24,15 @@ VARIANT_PATH = ../../../variants/sam3s-ek
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
vpath %.h $(PROJECT_BASE_PATH) $(SYSTEM_PATH) $(VARIANT_PATH)
|
vpath %.h $(PROJECT_BASE_PATH) $(SYSTEM_PATH) $(VARIANT_PATH)
|
||||||
vpath %.c $(PROJECT_BASE_PATH)
|
vpath %.c $(PROJECT_BASE_PATH) $(VARIANT_PATH)
|
||||||
vpath %.cpp $(PROJECT_BASE_PATH) $(PROJECT_BASE_PATH)
|
vpath %.cpp $(PROJECT_BASE_PATH) $(PROJECT_BASE_PATH)
|
||||||
|
|
||||||
VPATH+=$(PROJECT_BASE_PATH)
|
VPATH+=$(PROJECT_BASE_PATH)
|
||||||
|
|
||||||
INCLUDES = -I$(PROJECT_BASE_PATH)
|
|
||||||
INCLUDES = -I$(PROJECT_BASE_PATH)
|
INCLUDES = -I$(PROJECT_BASE_PATH)
|
||||||
INCLUDES += -I$(SYSTEM_PATH)
|
INCLUDES += -I$(SYSTEM_PATH)
|
||||||
INCLUDES += -I$(SYSTEM_PATH)/libsam
|
INCLUDES += -I$(SYSTEM_PATH)/libsam
|
||||||
INCLUDES += -I$(VARIANT_PATH)
|
INCLUDES += -I$(VARIANT_PATH)
|
||||||
INCLUDES += -I$(VARIANT_PATH)
|
|
||||||
INCLUDES += -I$(CMSIS_PATH)
|
INCLUDES += -I$(CMSIS_PATH)
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
@ -69,7 +67,7 @@ C_SRC=$(wildcard $(PROJECT_BASE_PATH)/*.c)
|
||||||
C_OBJ_TEMP = $(patsubst %.c, %.o, $(notdir $(C_SRC)))
|
C_OBJ_TEMP = $(patsubst %.c, %.o, $(notdir $(C_SRC)))
|
||||||
|
|
||||||
# during development, remove some files
|
# during development, remove some files
|
||||||
C_OBJ_FILTER=wiring_analog.o wiring_digital.o wiring_pulse.o
|
C_OBJ_FILTER=wiring_analog.o wiring_pulse.o
|
||||||
|
|
||||||
C_OBJ=$(filter-out $(C_OBJ_FILTER), $(C_OBJ_TEMP))
|
C_OBJ=$(filter-out $(C_OBJ_FILTER), $(C_OBJ_TEMP))
|
||||||
|
|
||||||
|
@ -81,8 +79,7 @@ CPP_SRC=$(wildcard $(PROJECT_BASE_PATH)/*.cpp)
|
||||||
CPP_OBJ_TEMP = $(patsubst %.cpp, %.o, $(notdir $(CPP_SRC)))
|
CPP_OBJ_TEMP = $(patsubst %.cpp, %.o, $(notdir $(CPP_SRC)))
|
||||||
|
|
||||||
# during development, remove some files
|
# during development, remove some files
|
||||||
CPP_OBJ_FILTER=Tone.o WMath.o
|
CPP_OBJ_FILTER=Tone.o
|
||||||
#WString.o
|
|
||||||
|
|
||||||
CPP_OBJ=$(filter-out $(CPP_OBJ_FILTER), $(CPP_OBJ_TEMP))
|
CPP_OBJ=$(filter-out $(CPP_OBJ_FILTER), $(CPP_OBJ_TEMP))
|
||||||
|
|
||||||
|
@ -138,13 +135,19 @@ $(addprefix $(OUTPUT_PATH)/,$(CPP_OBJ)): $(OUTPUT_PATH)/%.o: %.cpp
|
||||||
# @$(CC) -c $(CPPFLAGS) $< -o $@
|
# @$(CC) -c $(CPPFLAGS) $< -o $@
|
||||||
$(CC) -xc++ -c $(CPPFLAGS) $< -o $@
|
$(CC) -xc++ -c $(CPPFLAGS) $< -o $@
|
||||||
|
|
||||||
|
$(OUTPUT_PATH)/variant.o: $(VARIANT_PATH)/variant.cpp
|
||||||
|
# @$(CC) -c $(CPPFLAGS) $< -o $@
|
||||||
|
@$(CC) -xc++ -c $(CPPFLAGS) $< -o $@
|
||||||
|
|
||||||
$(addprefix $(OUTPUT_PATH)/,$(A_OBJ)): $(OUTPUT_PATH)/%.o: %.s
|
$(addprefix $(OUTPUT_PATH)/,$(A_OBJ)): $(OUTPUT_PATH)/%.o: %.s
|
||||||
@$(AS) -c $(ASFLAGS) $< -o $@
|
@$(AS) -c $(ASFLAGS) $< -o $@
|
||||||
|
|
||||||
$(OUTPUT_LIB): $(addprefix $(OUTPUT_PATH)/, $(C_OBJ)) $(addprefix $(OUTPUT_PATH)/, $(CPP_OBJ)) $(addprefix $(OUTPUT_PATH)/, $(A_OBJ))
|
$(OUTPUT_LIB): $(addprefix $(OUTPUT_PATH)/, $(C_OBJ)) $(addprefix $(OUTPUT_PATH)/, $(CPP_OBJ)) $(addprefix $(OUTPUT_PATH)/, $(A_OBJ)) $(OUTPUT_PATH)/variant.o
|
||||||
@$(AR) -v -r "$(OUTPUT_BIN)/$@" $^
|
@$(AR) -v -r "$(OUTPUT_BIN)/$@" $^
|
||||||
|
@"$(AR)" -r "../$@" $^
|
||||||
@$(NM) "$(OUTPUT_BIN)/$@" > "$(OUTPUT_BIN)/$@.txt"
|
@$(NM) "$(OUTPUT_BIN)/$@" > "$(OUTPUT_BIN)/$@.txt"
|
||||||
|
|
||||||
|
|
||||||
.PHONY: clean
|
.PHONY: clean
|
||||||
clean:
|
clean:
|
||||||
@echo --- Cleaning sam3s_ek files [$(OUTPUT_PATH)$(SEP)*.o]
|
@echo --- Cleaning sam3s_ek files [$(OUTPUT_PATH)$(SEP)*.o]
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,43 @@
|
||||||
|
#include "itoa.h"
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
/* reverse: reverse string s in place */
|
||||||
|
static void reverse( char s[] )
|
||||||
|
{
|
||||||
|
int i, j ;
|
||||||
|
char c ;
|
||||||
|
|
||||||
|
for ( i = 0, j = strlen(s)-1 ; i < j ; i++, j-- )
|
||||||
|
{
|
||||||
|
c = s[i] ;
|
||||||
|
s[i] = s[j] ;
|
||||||
|
s[j] = c ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* itoa: convert n to characters in s */
|
||||||
|
extern void itoa( int n, char s[] )
|
||||||
|
{
|
||||||
|
int i, sign ;
|
||||||
|
|
||||||
|
if ( (sign = n) < 0 ) /* record sign */
|
||||||
|
{
|
||||||
|
n = -n; /* make n positive */
|
||||||
|
}
|
||||||
|
|
||||||
|
i = 0;
|
||||||
|
do
|
||||||
|
{ /* generate digits in reverse order */
|
||||||
|
s[i++] = n % 10 + '0'; /* get next digit */
|
||||||
|
} while ((n /= 10) > 0) ; /* delete it */
|
||||||
|
|
||||||
|
if (sign < 0 )
|
||||||
|
{
|
||||||
|
s[i++] = '-';
|
||||||
|
}
|
||||||
|
|
||||||
|
s[i] = '\0';
|
||||||
|
|
||||||
|
reverse( s ) ;
|
||||||
|
}
|
|
@ -0,0 +1,6 @@
|
||||||
|
#ifndef _ITOA_
|
||||||
|
#define _ITOA_
|
||||||
|
|
||||||
|
extern void itoa( int n, char s[] ) ;
|
||||||
|
|
||||||
|
#endif // _ITOA_
|
Binary file not shown.
|
@ -0,0 +1,385 @@
|
||||||
|
|
||||||
|
WInterrupts.o:
|
||||||
|
00000004 r APinDescription
|
||||||
|
00000002 r MISO
|
||||||
|
00000001 r MOSI
|
||||||
|
00000003 r SCK
|
||||||
|
00000000 r SS
|
||||||
|
00000000 T attachInterrupt
|
||||||
|
00000000 T detachInterrupt
|
||||||
|
00000000 b intFunc
|
||||||
|
|
||||||
|
board_cstartup_gnu_sam3.o:
|
||||||
|
U ACC_IrqHandler
|
||||||
|
U ADC_IrqHandler
|
||||||
|
00000004 r APinDescription
|
||||||
|
U BusFault_Handler
|
||||||
|
U CRCCU_IrqHandler
|
||||||
|
U DAC_IrqHandler
|
||||||
|
U DebugMon_Handler
|
||||||
|
U Dummy_Handler
|
||||||
|
U EEFC_IrqHandler
|
||||||
|
U HardFault_Handler
|
||||||
|
U MCI_IrqHandler
|
||||||
|
00000002 r MISO
|
||||||
|
00000001 r MOSI
|
||||||
|
U MemManage_Handler
|
||||||
|
U NMI_Handler
|
||||||
|
U PIOA_IrqHandler
|
||||||
|
U PIOB_IrqHandler
|
||||||
|
U PIOC_IrqHandler
|
||||||
|
U PMC_IrqHandler
|
||||||
|
U PWM_IrqHandler
|
||||||
|
U PendSV_Handler
|
||||||
|
U RSTC_IrqHandler
|
||||||
|
U RTC_IrqHandler
|
||||||
|
U RTT_IrqHandler
|
||||||
|
00000000 T Reset_Handler
|
||||||
|
00000003 r SCK
|
||||||
|
U SMC_IrqHandler
|
||||||
|
U SPI_IrqHandler
|
||||||
|
00000000 r SS
|
||||||
|
U SSC_IrqHandler
|
||||||
|
U SUPC_IrqHandler
|
||||||
|
U SVC_Handler
|
||||||
|
U SysTick_Handler
|
||||||
|
U TC0_IrqHandler
|
||||||
|
U TC1_IrqHandler
|
||||||
|
U TC2_IrqHandler
|
||||||
|
U TC3_IrqHandler
|
||||||
|
U TC4_IrqHandler
|
||||||
|
U TC5_IrqHandler
|
||||||
|
U TWI0_IrqHandler
|
||||||
|
U TWI1_IrqHandler
|
||||||
|
U UART0_IrqHandler
|
||||||
|
U UART1_IrqHandler
|
||||||
|
U USART0_IrqHandler
|
||||||
|
U USART1_IrqHandler
|
||||||
|
U USBD_IrqHandler
|
||||||
|
U UsageFault_Handler
|
||||||
|
U WDT_IrqHandler
|
||||||
|
U __libc_init_array
|
||||||
|
U _erelocate
|
||||||
|
U _etext
|
||||||
|
U _ezero
|
||||||
|
U _sfixed
|
||||||
|
U _srelocate
|
||||||
|
U _szero
|
||||||
|
U init
|
||||||
|
U main
|
||||||
|
00000000 D pdwStack
|
||||||
|
00000000 D vector_table
|
||||||
|
|
||||||
|
itoa.o:
|
||||||
|
00000000 T itoa
|
||||||
|
00000000 t reverse
|
||||||
|
U strlen
|
||||||
|
|
||||||
|
syscalls_sam3.o:
|
||||||
|
00000000 T _close
|
||||||
|
U _end
|
||||||
|
00000000 T _exit
|
||||||
|
00000000 T _fstat
|
||||||
|
00000000 T _getpid
|
||||||
|
00000000 T _isatty
|
||||||
|
00000000 T _kill
|
||||||
|
00000000 T _lseek
|
||||||
|
00000000 T _read
|
||||||
|
00000000 T _sbrk
|
||||||
|
00000000 T _write
|
||||||
|
00000000 b heap.6819
|
||||||
|
U iprintf
|
||||||
|
00000000 T link
|
||||||
|
|
||||||
|
wiring.o:
|
||||||
|
00000004 r APinDescription
|
||||||
|
U GetTickCount
|
||||||
|
00000000 t LowLevelInit_sam3s_ek
|
||||||
|
00000002 r MISO
|
||||||
|
00000001 r MOSI
|
||||||
|
00000000 t NVIC_SetPriority
|
||||||
|
U PIO_Configure
|
||||||
|
00000003 r SCK
|
||||||
|
00000000 r SS
|
||||||
|
00000000 t SysTick_Config
|
||||||
|
00000000 T SysTick_Handler
|
||||||
|
U TimeTick_Increment
|
||||||
|
U WDT_Disable
|
||||||
|
00000000 T Wait
|
||||||
|
00000000 T delayMicroseconds
|
||||||
|
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
|
||||||
|
00000002 r MISO
|
||||||
|
00000001 r MOSI
|
||||||
|
U PIO_Configure
|
||||||
|
U PIO_Get
|
||||||
|
U PIO_SetOutput
|
||||||
|
00000003 r SCK
|
||||||
|
00000000 r SS
|
||||||
|
00000000 T digitalRead
|
||||||
|
00000000 T digitalWrite
|
||||||
|
00000000 T pinMode
|
||||||
|
|
||||||
|
wiring_shift.o:
|
||||||
|
00000004 r APinDescription
|
||||||
|
00000002 r MISO
|
||||||
|
00000001 r MOSI
|
||||||
|
00000003 r SCK
|
||||||
|
00000000 r SS
|
||||||
|
U digitalRead
|
||||||
|
U digitalWrite
|
||||||
|
00000000 T shiftIn
|
||||||
|
00000000 T shiftOut
|
||||||
|
|
||||||
|
HardwareSerial.o:
|
||||||
|
00000000 T _Z10store_charhP12_ring_buffer
|
||||||
|
|
||||||
|
Print.o:
|
||||||
|
00000030 r _ZL15APinDescription
|
||||||
|
0000002b r _ZL2SS
|
||||||
|
0000002e r _ZL3SCK
|
||||||
|
0000002d r _ZL4MISO
|
||||||
|
0000002c r _ZL4MOSI
|
||||||
|
00000000 T _ZN5Print10printFloatEdh
|
||||||
|
00000000 T _ZN5Print11printNumberEmh
|
||||||
|
00000000 T _ZN5Print5printEPKc
|
||||||
|
00000000 T _ZN5Print5printERK6String
|
||||||
|
00000000 T _ZN5Print5printEc
|
||||||
|
00000000 T _ZN5Print5printEdi
|
||||||
|
00000000 T _ZN5Print5printEhi
|
||||||
|
00000000 T _ZN5Print5printEii
|
||||||
|
00000000 T _ZN5Print5printEji
|
||||||
|
00000000 T _ZN5Print5printEli
|
||||||
|
00000000 T _ZN5Print5printEmi
|
||||||
|
00000000 T _ZN5Print5writeEPKc
|
||||||
|
00000000 T _ZN5Print5writeEPKhj
|
||||||
|
00000000 T _ZN5Print7printlnEPKc
|
||||||
|
00000000 T _ZN5Print7printlnERK6String
|
||||||
|
00000000 T _ZN5Print7printlnEc
|
||||||
|
00000000 T _ZN5Print7printlnEdi
|
||||||
|
00000000 T _ZN5Print7printlnEhi
|
||||||
|
00000000 T _ZN5Print7printlnEii
|
||||||
|
00000000 T _ZN5Print7printlnEji
|
||||||
|
00000000 T _ZN5Print7printlnEli
|
||||||
|
00000000 T _ZN5Print7printlnEmi
|
||||||
|
00000000 T _ZN5Print7printlnEv
|
||||||
|
00000000 W _ZNK6String6lengthEv
|
||||||
|
U _ZNK6StringixEj
|
||||||
|
0000001c R _ZTI5Print
|
||||||
|
00000024 R _ZTS5Print
|
||||||
|
00000008 R _ZTV5Print
|
||||||
|
U _ZTVN10__cxxabiv117__class_type_infoE
|
||||||
|
U __aeabi_d2iz
|
||||||
|
U __aeabi_d2uiz
|
||||||
|
U __aeabi_dadd
|
||||||
|
U __aeabi_dcmplt
|
||||||
|
U __aeabi_ddiv
|
||||||
|
U __aeabi_dmul
|
||||||
|
U __aeabi_dsub
|
||||||
|
U __aeabi_i2d
|
||||||
|
U __aeabi_ui2d
|
||||||
|
U __aeabi_unwind_cpp_pr1
|
||||||
|
U __cxa_pure_virtual
|
||||||
|
|
||||||
|
UART.o:
|
||||||
|
U PMC_DisablePeripheral
|
||||||
|
U PMC_EnablePeripheral
|
||||||
|
U _Z10store_charhP12_ring_buffer
|
||||||
|
00000048 r _ZL15APinDescription
|
||||||
|
00000043 r _ZL2SS
|
||||||
|
00000046 r _ZL3SCK
|
||||||
|
00000045 r _ZL4MISO
|
||||||
|
00000044 r _ZL4MOSI
|
||||||
|
00000000 W _ZN14HardwareSerialC1Ev
|
||||||
|
00000000 W _ZN14HardwareSerialC2Ev
|
||||||
|
00000000 n _ZN14HardwareSerialC5Ev
|
||||||
|
U _ZN5Print5writeEPKc
|
||||||
|
U _ZN5Print5writeEPKhj
|
||||||
|
00000000 W _ZN5PrintC1Ev
|
||||||
|
00000000 W _ZN5PrintC2Ev
|
||||||
|
00000000 n _ZN5PrintC5Ev
|
||||||
|
00000000 W _ZN6StreamC1Ev
|
||||||
|
00000000 W _ZN6StreamC2Ev
|
||||||
|
00000000 n _ZN6StreamC5Ev
|
||||||
|
00000000 T _ZN9UARTClass10IrqHandlerEv
|
||||||
|
00000000 T _ZN9UARTClass3endEv
|
||||||
|
00000000 T _ZN9UARTClass4peekEv
|
||||||
|
00000000 T _ZN9UARTClass4readEv
|
||||||
|
00000000 T _ZN9UARTClass5beginEm
|
||||||
|
00000000 T _ZN9UARTClass5flushEv
|
||||||
|
00000000 T _ZN9UARTClass5writeEh
|
||||||
|
00000000 T _ZN9UARTClass9availableEv
|
||||||
|
00000000 T _ZN9UARTClassC1EP4Uart4IRQnmP12_ring_bufferS4_
|
||||||
|
00000000 T _ZN9UARTClassC2EP4Uart4IRQnmP12_ring_bufferS4_
|
||||||
|
00000000 V _ZTI14HardwareSerial
|
||||||
|
U _ZTI5Print
|
||||||
|
00000000 V _ZTI6Stream
|
||||||
|
0000002c R _ZTI9UARTClass
|
||||||
|
00000000 V _ZTS14HardwareSerial
|
||||||
|
00000000 V _ZTS6Stream
|
||||||
|
00000038 R _ZTS9UARTClass
|
||||||
|
00000000 V _ZTV14HardwareSerial
|
||||||
|
U _ZTV5Print
|
||||||
|
00000000 V _ZTV6Stream
|
||||||
|
00000000 R _ZTV9UARTClass
|
||||||
|
U _ZTVN10__cxxabiv120__si_class_type_infoE
|
||||||
|
U __aeabi_unwind_cpp_pr1
|
||||||
|
U __cxa_pure_virtual
|
||||||
|
|
||||||
|
USART.o:
|
||||||
|
U PMC_DisablePeripheral
|
||||||
|
U PMC_EnablePeripheral
|
||||||
|
U _Z10store_charhP12_ring_buffer
|
||||||
|
0000004c r _ZL15APinDescription
|
||||||
|
00000045 r _ZL2SS
|
||||||
|
00000048 r _ZL3SCK
|
||||||
|
00000047 r _ZL4MISO
|
||||||
|
00000046 r _ZL4MOSI
|
||||||
|
00000000 T _ZN10USARTClass10IrqHandlerEv
|
||||||
|
00000000 T _ZN10USARTClass3endEv
|
||||||
|
00000000 T _ZN10USARTClass4peekEv
|
||||||
|
00000000 T _ZN10USARTClass4readEv
|
||||||
|
00000000 T _ZN10USARTClass5beginEm
|
||||||
|
00000000 T _ZN10USARTClass5flushEv
|
||||||
|
00000000 T _ZN10USARTClass5writeEh
|
||||||
|
00000000 T _ZN10USARTClass9availableEv
|
||||||
|
00000000 T _ZN10USARTClassC1EP5Usart4IRQnmP12_ring_bufferS4_
|
||||||
|
00000000 T _ZN10USARTClassC2EP5Usart4IRQnmP12_ring_bufferS4_
|
||||||
|
00000000 W _ZN14HardwareSerialC1Ev
|
||||||
|
00000000 W _ZN14HardwareSerialC2Ev
|
||||||
|
00000000 n _ZN14HardwareSerialC5Ev
|
||||||
|
U _ZN5Print5writeEPKc
|
||||||
|
U _ZN5Print5writeEPKhj
|
||||||
|
00000000 W _ZN5PrintC1Ev
|
||||||
|
00000000 W _ZN5PrintC2Ev
|
||||||
|
00000000 n _ZN5PrintC5Ev
|
||||||
|
00000000 W _ZN6StreamC1Ev
|
||||||
|
00000000 W _ZN6StreamC2Ev
|
||||||
|
00000000 n _ZN6StreamC5Ev
|
||||||
|
0000002c R _ZTI10USARTClass
|
||||||
|
00000000 V _ZTI14HardwareSerial
|
||||||
|
U _ZTI5Print
|
||||||
|
00000000 V _ZTI6Stream
|
||||||
|
00000038 R _ZTS10USARTClass
|
||||||
|
00000000 V _ZTS14HardwareSerial
|
||||||
|
00000000 V _ZTS6Stream
|
||||||
|
00000000 R _ZTV10USARTClass
|
||||||
|
00000000 V _ZTV14HardwareSerial
|
||||||
|
U _ZTV5Print
|
||||||
|
00000000 V _ZTV6Stream
|
||||||
|
U _ZTVN10__cxxabiv120__si_class_type_infoE
|
||||||
|
U __aeabi_unwind_cpp_pr1
|
||||||
|
U __cxa_pure_virtual
|
||||||
|
|
||||||
|
WString.o:
|
||||||
|
00000000 T _ZN6String10invalidateEv
|
||||||
|
00000000 T _ZN6String11toLowerCaseEv
|
||||||
|
00000000 T _ZN6String11toUpperCaseEv
|
||||||
|
00000000 T _ZN6String12changeBufferEj
|
||||||
|
00000000 T _ZN6String4copyEPKcj
|
||||||
|
00000000 W _ZN6String4initEv
|
||||||
|
00000000 T _ZN6String4trimEv
|
||||||
|
00000000 T _ZN6String6concatEPKc
|
||||||
|
00000000 T _ZN6String6concatEPKcj
|
||||||
|
00000000 T _ZN6String6concatERKS_
|
||||||
|
00000000 T _ZN6String6concatEc
|
||||||
|
00000000 T _ZN6String6concatEh
|
||||||
|
00000000 T _ZN6String6concatEi
|
||||||
|
00000000 T _ZN6String6concatEj
|
||||||
|
00000000 T _ZN6String6concatEl
|
||||||
|
00000000 T _ZN6String6concatEm
|
||||||
|
00000000 T _ZN6String7replaceERKS_S1_
|
||||||
|
00000000 T _ZN6String7replaceEcc
|
||||||
|
00000000 T _ZN6String7reserveEj
|
||||||
|
00000000 T _ZN6String9setCharAtEjc
|
||||||
|
00000000 T _ZN6StringC1EPKc
|
||||||
|
00000000 T _ZN6StringC1ERKS_
|
||||||
|
00000000 T _ZN6StringC1Ec
|
||||||
|
00000000 T _ZN6StringC1Ehh
|
||||||
|
00000000 T _ZN6StringC1Eih
|
||||||
|
00000000 T _ZN6StringC1Ejh
|
||||||
|
00000000 T _ZN6StringC1Elh
|
||||||
|
00000000 T _ZN6StringC1Emh
|
||||||
|
00000000 T _ZN6StringC2EPKc
|
||||||
|
00000000 T _ZN6StringC2ERKS_
|
||||||
|
00000000 T _ZN6StringC2Ec
|
||||||
|
00000000 T _ZN6StringC2Ehh
|
||||||
|
00000000 T _ZN6StringC2Eih
|
||||||
|
00000000 T _ZN6StringC2Ejh
|
||||||
|
00000000 T _ZN6StringC2Elh
|
||||||
|
00000000 T _ZN6StringC2Emh
|
||||||
|
00000000 T _ZN6StringD1Ev
|
||||||
|
00000000 T _ZN6StringD2Ev
|
||||||
|
00000000 T _ZN6StringaSEPKc
|
||||||
|
00000000 T _ZN6StringaSERKS_
|
||||||
|
00000000 T _ZN6StringixEj
|
||||||
|
00000000 T _ZNK6String10startsWithERKS_
|
||||||
|
00000000 T _ZNK6String10startsWithERKS_j
|
||||||
|
00000000 T _ZNK6String11lastIndexOfERKS_
|
||||||
|
00000000 T _ZNK6String11lastIndexOfERKS_i
|
||||||
|
00000000 T _ZNK6String11lastIndexOfEc
|
||||||
|
00000000 T _ZNK6String11lastIndexOfEci
|
||||||
|
00000000 T _ZNK6String16equalsIgnoreCaseERKS_
|
||||||
|
00000000 T _ZNK6String5toIntEv
|
||||||
|
00000000 T _ZNK6String6charAtEj
|
||||||
|
00000000 T _ZNK6String6equalsEPKc
|
||||||
|
00000000 T _ZNK6String6equalsERKS_
|
||||||
|
00000000 T _ZNK6String7indexOfERKS_
|
||||||
|
00000000 T _ZNK6String7indexOfERKS_j
|
||||||
|
00000000 T _ZNK6String7indexOfEc
|
||||||
|
00000000 T _ZNK6String7indexOfEcj
|
||||||
|
00000000 T _ZNK6String8endsWithERKS_
|
||||||
|
00000000 T _ZNK6String8getBytesEPhjj
|
||||||
|
00000000 T _ZNK6String9compareToERKS_
|
||||||
|
00000000 T _ZNK6String9substringEj
|
||||||
|
00000000 T _ZNK6String9substringEjj
|
||||||
|
00000000 T _ZNK6StringgeERKS_
|
||||||
|
00000000 T _ZNK6StringgtERKS_
|
||||||
|
00000000 T _ZNK6StringixEj
|
||||||
|
00000000 T _ZNK6StringleERKS_
|
||||||
|
00000000 T _ZNK6StringltERKS_
|
||||||
|
00000000 b _ZZN6StringixEjE19dummy_writable_char
|
||||||
|
00000000 T _ZplRK15StringSumHelperPKc
|
||||||
|
00000000 T _ZplRK15StringSumHelperRK6String
|
||||||
|
00000000 T _ZplRK15StringSumHelperc
|
||||||
|
00000000 T _ZplRK15StringSumHelperh
|
||||||
|
00000000 T _ZplRK15StringSumHelperi
|
||||||
|
00000000 T _ZplRK15StringSumHelperj
|
||||||
|
00000000 T _ZplRK15StringSumHelperl
|
||||||
|
00000000 T _ZplRK15StringSumHelperm
|
||||||
|
U __aeabi_unwind_cpp_pr1
|
||||||
|
U atol
|
||||||
|
U free
|
||||||
|
U isspace
|
||||||
|
U memcpy
|
||||||
|
U memmove
|
||||||
|
U realloc
|
||||||
|
U strchr
|
||||||
|
U strcmp
|
||||||
|
U strcpy
|
||||||
|
U strlen
|
||||||
|
U strncmp
|
||||||
|
U strncpy
|
||||||
|
U strrchr
|
||||||
|
U strstr
|
||||||
|
U tolower
|
||||||
|
U toupper
|
||||||
|
|
||||||
|
main.o:
|
||||||
|
00000004 r _ZL15APinDescription
|
||||||
|
00000000 r _ZL2SS
|
||||||
|
00000003 r _ZL3SCK
|
||||||
|
00000002 r _ZL4MISO
|
||||||
|
00000001 r _ZL4MOSI
|
||||||
|
U __aeabi_unwind_cpp_pr0
|
||||||
|
U init
|
||||||
|
U loop
|
||||||
|
00000000 T main
|
||||||
|
U setup
|
Binary file not shown.
|
@ -0,0 +1,414 @@
|
||||||
|
|
||||||
|
WInterrupts.o:
|
||||||
|
00000004 r APinDescription
|
||||||
|
00000002 r MISO
|
||||||
|
00000001 r MOSI
|
||||||
|
00000003 r SCK
|
||||||
|
00000000 r SS
|
||||||
|
00000000 T attachInterrupt
|
||||||
|
00000000 T detachInterrupt
|
||||||
|
00000000 b intFunc
|
||||||
|
|
||||||
|
board_cstartup_gnu_sam3.o:
|
||||||
|
U ACC_IrqHandler
|
||||||
|
U ADC_IrqHandler
|
||||||
|
00000004 r APinDescription
|
||||||
|
U BusFault_Handler
|
||||||
|
U CRCCU_IrqHandler
|
||||||
|
U DAC_IrqHandler
|
||||||
|
U DebugMon_Handler
|
||||||
|
U Dummy_Handler
|
||||||
|
U EEFC_IrqHandler
|
||||||
|
U HardFault_Handler
|
||||||
|
U MCI_IrqHandler
|
||||||
|
00000002 r MISO
|
||||||
|
00000001 r MOSI
|
||||||
|
U MemManage_Handler
|
||||||
|
U NMI_Handler
|
||||||
|
U PIOA_IrqHandler
|
||||||
|
U PIOB_IrqHandler
|
||||||
|
U PIOC_IrqHandler
|
||||||
|
U PMC_IrqHandler
|
||||||
|
U PWM_IrqHandler
|
||||||
|
U PendSV_Handler
|
||||||
|
U RSTC_IrqHandler
|
||||||
|
U RTC_IrqHandler
|
||||||
|
U RTT_IrqHandler
|
||||||
|
00000000 T Reset_Handler
|
||||||
|
00000003 r SCK
|
||||||
|
U SMC_IrqHandler
|
||||||
|
U SPI_IrqHandler
|
||||||
|
00000000 r SS
|
||||||
|
U SSC_IrqHandler
|
||||||
|
U SUPC_IrqHandler
|
||||||
|
U SVC_Handler
|
||||||
|
U SysTick_Handler
|
||||||
|
U TC0_IrqHandler
|
||||||
|
U TC1_IrqHandler
|
||||||
|
U TC2_IrqHandler
|
||||||
|
U TC3_IrqHandler
|
||||||
|
U TC4_IrqHandler
|
||||||
|
U TC5_IrqHandler
|
||||||
|
U TWI0_IrqHandler
|
||||||
|
U TWI1_IrqHandler
|
||||||
|
U UART0_IrqHandler
|
||||||
|
U UART1_IrqHandler
|
||||||
|
U USART0_IrqHandler
|
||||||
|
U USART1_IrqHandler
|
||||||
|
U USBD_IrqHandler
|
||||||
|
U UsageFault_Handler
|
||||||
|
U WDT_IrqHandler
|
||||||
|
U __libc_init_array
|
||||||
|
U _erelocate
|
||||||
|
U _etext
|
||||||
|
U _ezero
|
||||||
|
U _sfixed
|
||||||
|
U _srelocate
|
||||||
|
U _szero
|
||||||
|
U init
|
||||||
|
U main
|
||||||
|
00000000 D pdwStack
|
||||||
|
00000000 D vector_table
|
||||||
|
|
||||||
|
itoa.o:
|
||||||
|
00000000 T itoa
|
||||||
|
00000000 t reverse
|
||||||
|
U strlen
|
||||||
|
|
||||||
|
syscalls_sam3.o:
|
||||||
|
00000000 T _close
|
||||||
|
U _end
|
||||||
|
00000000 T _exit
|
||||||
|
00000000 T _fstat
|
||||||
|
00000000 T _getpid
|
||||||
|
00000000 T _isatty
|
||||||
|
00000000 T _kill
|
||||||
|
00000000 T _lseek
|
||||||
|
00000000 T _read
|
||||||
|
00000000 T _sbrk
|
||||||
|
00000000 T _write
|
||||||
|
00000000 b heap.6819
|
||||||
|
U iprintf
|
||||||
|
00000000 T link
|
||||||
|
|
||||||
|
wiring.o:
|
||||||
|
00000004 r APinDescription
|
||||||
|
U GetTickCount
|
||||||
|
00000000 t LowLevelInit_sam3s_ek
|
||||||
|
00000002 r MISO
|
||||||
|
00000001 r MOSI
|
||||||
|
00000000 t NVIC_SetPriority
|
||||||
|
U PIO_Configure
|
||||||
|
00000003 r SCK
|
||||||
|
00000000 r SS
|
||||||
|
00000000 t SysTick_Config
|
||||||
|
00000000 T SysTick_Handler
|
||||||
|
U TimeTick_Increment
|
||||||
|
U WDT_Disable
|
||||||
|
00000000 T delayMicroseconds
|
||||||
|
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
|
||||||
|
00000002 r MISO
|
||||||
|
00000001 r MOSI
|
||||||
|
U PIO_Configure
|
||||||
|
U PIO_Get
|
||||||
|
U PIO_SetOutput
|
||||||
|
00000003 r SCK
|
||||||
|
00000000 r SS
|
||||||
|
00000000 T digitalRead
|
||||||
|
00000000 T digitalWrite
|
||||||
|
00000000 T pinMode
|
||||||
|
|
||||||
|
wiring_shift.o:
|
||||||
|
00000004 r APinDescription
|
||||||
|
00000002 r MISO
|
||||||
|
00000001 r MOSI
|
||||||
|
00000003 r SCK
|
||||||
|
00000000 r SS
|
||||||
|
U digitalRead
|
||||||
|
U digitalWrite
|
||||||
|
00000000 T shiftIn
|
||||||
|
00000000 T shiftOut
|
||||||
|
|
||||||
|
HardwareSerial.o:
|
||||||
|
00000000 T _Z10store_charhP12_ring_buffer
|
||||||
|
|
||||||
|
Print.o:
|
||||||
|
00000030 r _ZL15APinDescription
|
||||||
|
0000002b r _ZL2SS
|
||||||
|
0000002e r _ZL3SCK
|
||||||
|
0000002d r _ZL4MISO
|
||||||
|
0000002c r _ZL4MOSI
|
||||||
|
00000000 T _ZN5Print10printFloatEdh
|
||||||
|
00000000 T _ZN5Print11printNumberEmh
|
||||||
|
00000000 T _ZN5Print5printEPKc
|
||||||
|
00000000 T _ZN5Print5printERK6String
|
||||||
|
00000000 T _ZN5Print5printEc
|
||||||
|
00000000 T _ZN5Print5printEdi
|
||||||
|
00000000 T _ZN5Print5printEhi
|
||||||
|
00000000 T _ZN5Print5printEii
|
||||||
|
00000000 T _ZN5Print5printEji
|
||||||
|
00000000 T _ZN5Print5printEli
|
||||||
|
00000000 T _ZN5Print5printEmi
|
||||||
|
00000000 T _ZN5Print5writeEPKc
|
||||||
|
00000000 T _ZN5Print5writeEPKhj
|
||||||
|
00000000 T _ZN5Print7printlnEPKc
|
||||||
|
00000000 T _ZN5Print7printlnERK6String
|
||||||
|
00000000 T _ZN5Print7printlnEc
|
||||||
|
00000000 T _ZN5Print7printlnEdi
|
||||||
|
00000000 T _ZN5Print7printlnEhi
|
||||||
|
00000000 T _ZN5Print7printlnEii
|
||||||
|
00000000 T _ZN5Print7printlnEji
|
||||||
|
00000000 T _ZN5Print7printlnEli
|
||||||
|
00000000 T _ZN5Print7printlnEmi
|
||||||
|
00000000 T _ZN5Print7printlnEv
|
||||||
|
00000000 W _ZNK6String6lengthEv
|
||||||
|
U _ZNK6StringixEj
|
||||||
|
0000001c R _ZTI5Print
|
||||||
|
00000024 R _ZTS5Print
|
||||||
|
00000008 R _ZTV5Print
|
||||||
|
U _ZTVN10__cxxabiv117__class_type_infoE
|
||||||
|
U __aeabi_d2iz
|
||||||
|
U __aeabi_d2uiz
|
||||||
|
U __aeabi_dadd
|
||||||
|
U __aeabi_dcmplt
|
||||||
|
U __aeabi_ddiv
|
||||||
|
U __aeabi_dmul
|
||||||
|
U __aeabi_dsub
|
||||||
|
U __aeabi_i2d
|
||||||
|
U __aeabi_ui2d
|
||||||
|
U __aeabi_unwind_cpp_pr1
|
||||||
|
U __cxa_pure_virtual
|
||||||
|
|
||||||
|
UART.o:
|
||||||
|
U PMC_DisablePeripheral
|
||||||
|
U PMC_EnablePeripheral
|
||||||
|
U _Z10store_charhP12_ring_buffer
|
||||||
|
00000048 r _ZL15APinDescription
|
||||||
|
00000043 r _ZL2SS
|
||||||
|
00000046 r _ZL3SCK
|
||||||
|
00000045 r _ZL4MISO
|
||||||
|
00000044 r _ZL4MOSI
|
||||||
|
00000000 W _ZN14HardwareSerialC1Ev
|
||||||
|
00000000 W _ZN14HardwareSerialC2Ev
|
||||||
|
00000000 n _ZN14HardwareSerialC5Ev
|
||||||
|
U _ZN5Print5writeEPKc
|
||||||
|
U _ZN5Print5writeEPKhj
|
||||||
|
00000000 W _ZN5PrintC1Ev
|
||||||
|
00000000 W _ZN5PrintC2Ev
|
||||||
|
00000000 n _ZN5PrintC5Ev
|
||||||
|
00000000 W _ZN6StreamC1Ev
|
||||||
|
00000000 W _ZN6StreamC2Ev
|
||||||
|
00000000 n _ZN6StreamC5Ev
|
||||||
|
00000000 T _ZN9UARTClass10IrqHandlerEv
|
||||||
|
00000000 T _ZN9UARTClass3endEv
|
||||||
|
00000000 T _ZN9UARTClass4peekEv
|
||||||
|
00000000 T _ZN9UARTClass4readEv
|
||||||
|
00000000 T _ZN9UARTClass5beginEm
|
||||||
|
00000000 T _ZN9UARTClass5flushEv
|
||||||
|
00000000 T _ZN9UARTClass5writeEh
|
||||||
|
00000000 T _ZN9UARTClass9availableEv
|
||||||
|
00000000 T _ZN9UARTClassC1EP4Uart4IRQnmP12_ring_bufferS4_
|
||||||
|
00000000 T _ZN9UARTClassC2EP4Uart4IRQnmP12_ring_bufferS4_
|
||||||
|
00000000 V _ZTI14HardwareSerial
|
||||||
|
U _ZTI5Print
|
||||||
|
00000000 V _ZTI6Stream
|
||||||
|
0000002c R _ZTI9UARTClass
|
||||||
|
00000000 V _ZTS14HardwareSerial
|
||||||
|
00000000 V _ZTS6Stream
|
||||||
|
00000038 R _ZTS9UARTClass
|
||||||
|
00000000 V _ZTV14HardwareSerial
|
||||||
|
U _ZTV5Print
|
||||||
|
00000000 V _ZTV6Stream
|
||||||
|
00000000 R _ZTV9UARTClass
|
||||||
|
U _ZTVN10__cxxabiv120__si_class_type_infoE
|
||||||
|
U __aeabi_unwind_cpp_pr1
|
||||||
|
U __cxa_pure_virtual
|
||||||
|
|
||||||
|
USART.o:
|
||||||
|
U PMC_DisablePeripheral
|
||||||
|
U PMC_EnablePeripheral
|
||||||
|
U _Z10store_charhP12_ring_buffer
|
||||||
|
0000004c r _ZL15APinDescription
|
||||||
|
00000045 r _ZL2SS
|
||||||
|
00000048 r _ZL3SCK
|
||||||
|
00000047 r _ZL4MISO
|
||||||
|
00000046 r _ZL4MOSI
|
||||||
|
00000000 T _ZN10USARTClass10IrqHandlerEv
|
||||||
|
00000000 T _ZN10USARTClass3endEv
|
||||||
|
00000000 T _ZN10USARTClass4peekEv
|
||||||
|
00000000 T _ZN10USARTClass4readEv
|
||||||
|
00000000 T _ZN10USARTClass5beginEm
|
||||||
|
00000000 T _ZN10USARTClass5flushEv
|
||||||
|
00000000 T _ZN10USARTClass5writeEh
|
||||||
|
00000000 T _ZN10USARTClass9availableEv
|
||||||
|
00000000 T _ZN10USARTClassC1EP5Usart4IRQnmP12_ring_bufferS4_
|
||||||
|
00000000 T _ZN10USARTClassC2EP5Usart4IRQnmP12_ring_bufferS4_
|
||||||
|
00000000 W _ZN14HardwareSerialC1Ev
|
||||||
|
00000000 W _ZN14HardwareSerialC2Ev
|
||||||
|
00000000 n _ZN14HardwareSerialC5Ev
|
||||||
|
U _ZN5Print5writeEPKc
|
||||||
|
U _ZN5Print5writeEPKhj
|
||||||
|
00000000 W _ZN5PrintC1Ev
|
||||||
|
00000000 W _ZN5PrintC2Ev
|
||||||
|
00000000 n _ZN5PrintC5Ev
|
||||||
|
00000000 W _ZN6StreamC1Ev
|
||||||
|
00000000 W _ZN6StreamC2Ev
|
||||||
|
00000000 n _ZN6StreamC5Ev
|
||||||
|
0000002c R _ZTI10USARTClass
|
||||||
|
00000000 V _ZTI14HardwareSerial
|
||||||
|
U _ZTI5Print
|
||||||
|
00000000 V _ZTI6Stream
|
||||||
|
00000038 R _ZTS10USARTClass
|
||||||
|
00000000 V _ZTS14HardwareSerial
|
||||||
|
00000000 V _ZTS6Stream
|
||||||
|
00000000 R _ZTV10USARTClass
|
||||||
|
00000000 V _ZTV14HardwareSerial
|
||||||
|
U _ZTV5Print
|
||||||
|
00000000 V _ZTV6Stream
|
||||||
|
U _ZTVN10__cxxabiv120__si_class_type_infoE
|
||||||
|
U __aeabi_unwind_cpp_pr1
|
||||||
|
U __cxa_pure_virtual
|
||||||
|
|
||||||
|
WMath.o:
|
||||||
|
00000000 T _Z10randomSeedj
|
||||||
|
00000000 T _Z3maplllll
|
||||||
|
00000000 T _Z6randoml
|
||||||
|
00000000 T _Z6randomll
|
||||||
|
00000000 T _Z8makeWordhh
|
||||||
|
00000000 T _Z8makeWordj
|
||||||
|
U rand
|
||||||
|
U srand
|
||||||
|
|
||||||
|
WString.o:
|
||||||
|
00000000 T _ZN6String10invalidateEv
|
||||||
|
00000000 T _ZN6String11toLowerCaseEv
|
||||||
|
00000000 T _ZN6String11toUpperCaseEv
|
||||||
|
00000000 T _ZN6String12changeBufferEj
|
||||||
|
00000000 T _ZN6String4copyEPKcj
|
||||||
|
00000000 W _ZN6String4initEv
|
||||||
|
00000000 T _ZN6String4trimEv
|
||||||
|
00000000 T _ZN6String6concatEPKc
|
||||||
|
00000000 T _ZN6String6concatEPKcj
|
||||||
|
00000000 T _ZN6String6concatERKS_
|
||||||
|
00000000 T _ZN6String6concatEc
|
||||||
|
00000000 T _ZN6String6concatEh
|
||||||
|
00000000 T _ZN6String6concatEi
|
||||||
|
00000000 T _ZN6String6concatEj
|
||||||
|
00000000 T _ZN6String6concatEl
|
||||||
|
00000000 T _ZN6String6concatEm
|
||||||
|
00000000 T _ZN6String7replaceERKS_S1_
|
||||||
|
00000000 T _ZN6String7replaceEcc
|
||||||
|
00000000 T _ZN6String7reserveEj
|
||||||
|
00000000 T _ZN6String9setCharAtEjc
|
||||||
|
00000000 T _ZN6StringC1EPKc
|
||||||
|
00000000 T _ZN6StringC1ERKS_
|
||||||
|
00000000 T _ZN6StringC1Ec
|
||||||
|
00000000 T _ZN6StringC1Ehh
|
||||||
|
00000000 T _ZN6StringC1Eih
|
||||||
|
00000000 T _ZN6StringC1Ejh
|
||||||
|
00000000 T _ZN6StringC1Elh
|
||||||
|
00000000 T _ZN6StringC1Emh
|
||||||
|
00000000 T _ZN6StringC2EPKc
|
||||||
|
00000000 T _ZN6StringC2ERKS_
|
||||||
|
00000000 T _ZN6StringC2Ec
|
||||||
|
00000000 T _ZN6StringC2Ehh
|
||||||
|
00000000 T _ZN6StringC2Eih
|
||||||
|
00000000 T _ZN6StringC2Ejh
|
||||||
|
00000000 T _ZN6StringC2Elh
|
||||||
|
00000000 T _ZN6StringC2Emh
|
||||||
|
00000000 T _ZN6StringD1Ev
|
||||||
|
00000000 T _ZN6StringD2Ev
|
||||||
|
00000000 T _ZN6StringaSEPKc
|
||||||
|
00000000 T _ZN6StringaSERKS_
|
||||||
|
00000000 T _ZN6StringixEj
|
||||||
|
00000000 T _ZNK6String10startsWithERKS_
|
||||||
|
00000000 T _ZNK6String10startsWithERKS_j
|
||||||
|
00000000 T _ZNK6String11lastIndexOfERKS_
|
||||||
|
00000000 T _ZNK6String11lastIndexOfERKS_i
|
||||||
|
00000000 T _ZNK6String11lastIndexOfEc
|
||||||
|
00000000 T _ZNK6String11lastIndexOfEci
|
||||||
|
00000000 T _ZNK6String16equalsIgnoreCaseERKS_
|
||||||
|
00000000 T _ZNK6String5toIntEv
|
||||||
|
00000000 T _ZNK6String6charAtEj
|
||||||
|
00000000 T _ZNK6String6equalsEPKc
|
||||||
|
00000000 T _ZNK6String6equalsERKS_
|
||||||
|
00000000 T _ZNK6String7indexOfERKS_
|
||||||
|
00000000 T _ZNK6String7indexOfERKS_j
|
||||||
|
00000000 T _ZNK6String7indexOfEc
|
||||||
|
00000000 T _ZNK6String7indexOfEcj
|
||||||
|
00000000 T _ZNK6String8endsWithERKS_
|
||||||
|
00000000 T _ZNK6String8getBytesEPhjj
|
||||||
|
00000000 T _ZNK6String9compareToERKS_
|
||||||
|
00000000 T _ZNK6String9substringEj
|
||||||
|
00000000 T _ZNK6String9substringEjj
|
||||||
|
00000000 T _ZNK6StringgeERKS_
|
||||||
|
00000000 T _ZNK6StringgtERKS_
|
||||||
|
00000000 T _ZNK6StringixEj
|
||||||
|
00000000 T _ZNK6StringleERKS_
|
||||||
|
00000000 T _ZNK6StringltERKS_
|
||||||
|
00000000 b _ZZN6StringixEjE19dummy_writable_char
|
||||||
|
00000000 T _ZplRK15StringSumHelperPKc
|
||||||
|
00000000 T _ZplRK15StringSumHelperRK6String
|
||||||
|
00000000 T _ZplRK15StringSumHelperc
|
||||||
|
00000000 T _ZplRK15StringSumHelperh
|
||||||
|
00000000 T _ZplRK15StringSumHelperi
|
||||||
|
00000000 T _ZplRK15StringSumHelperj
|
||||||
|
00000000 T _ZplRK15StringSumHelperl
|
||||||
|
00000000 T _ZplRK15StringSumHelperm
|
||||||
|
U __aeabi_unwind_cpp_pr1
|
||||||
|
U atol
|
||||||
|
U free
|
||||||
|
U isspace
|
||||||
|
U memcpy
|
||||||
|
U memmove
|
||||||
|
U realloc
|
||||||
|
U strchr
|
||||||
|
U strcmp
|
||||||
|
U strcpy
|
||||||
|
U strlen
|
||||||
|
U strncmp
|
||||||
|
U strncpy
|
||||||
|
U strrchr
|
||||||
|
U strstr
|
||||||
|
U tolower
|
||||||
|
U toupper
|
||||||
|
|
||||||
|
main.o:
|
||||||
|
00000004 r _ZL15APinDescription
|
||||||
|
00000000 r _ZL2SS
|
||||||
|
00000003 r _ZL3SCK
|
||||||
|
00000002 r _ZL4MISO
|
||||||
|
00000001 r _ZL4MOSI
|
||||||
|
U __aeabi_unwind_cpp_pr0
|
||||||
|
U init
|
||||||
|
U loop
|
||||||
|
00000000 T main
|
||||||
|
U setup
|
||||||
|
|
||||||
|
variant.o:
|
||||||
|
00000120 B Serial1
|
||||||
|
00000138 B Serial2
|
||||||
|
00000000 t _GLOBAL__I_rx_buffer1
|
||||||
|
00000000 T _Z16UART0_IrqHandlerv
|
||||||
|
00000000 T _Z16UART1_IrqHandlerv
|
||||||
|
00000000 t _Z41__static_initialization_and_destruction_0ii
|
||||||
|
00000004 r _ZL15APinDescription
|
||||||
|
00000000 r _ZL2SS
|
||||||
|
00000003 r _ZL3SCK
|
||||||
|
00000002 r _ZL4MISO
|
||||||
|
00000001 r _ZL4MOSI
|
||||||
|
U _ZN9UARTClass10IrqHandlerEv
|
||||||
|
U _ZN9UARTClassC1EP4Uart4IRQnmP12_ring_bufferS4_
|
||||||
|
U __aeabi_unwind_cpp_pr0
|
||||||
|
00000000 B rx_buffer1
|
||||||
|
00000090 B rx_buffer2
|
||||||
|
00000048 B tx_buffer1
|
||||||
|
000000d8 B tx_buffer2
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,22 @@
|
||||||
|
# Makefile for compiling libboard
|
||||||
|
BOARD =
|
||||||
|
|
||||||
|
SUBMAKE_OPTIONS=--no-builtin-rules --no-builtin-variables
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Rules
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
all: test
|
||||||
|
|
||||||
|
.PHONY: test
|
||||||
|
test:
|
||||||
|
@echo --- Making test
|
||||||
|
@$(MAKE) DEBUG=1 $(SUBMAKE_OPTIONS) -f test.mk
|
||||||
|
|
||||||
|
.PHONY: clean
|
||||||
|
clean:
|
||||||
|
@echo --- Cleaning test
|
||||||
|
@$(MAKE) DEBUG=1 $(SUBMAKE_OPTIONS) -f test.mk $@
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
# Optimization level
|
||||||
|
# -O1 Optimize
|
||||||
|
# -O2 Optimize even more
|
||||||
|
# -O3 Optimize yet more
|
||||||
|
# -O0 Reduce compilation time and make debugging produce the expected results
|
||||||
|
# -Os Optimize for size
|
||||||
|
OPTIMIZATION = -g -O0 -DDEBUG
|
|
@ -0,0 +1,59 @@
|
||||||
|
|
||||||
|
# Tool suffix when cross-compiling
|
||||||
|
#CROSS_COMPILE = ../../../../tools/CodeSourcery_arm/bin/arm-none-eabi-
|
||||||
|
CROSS_COMPILE = C:/CodeSourcery_2011.03-42/bin/arm-none-eabi-
|
||||||
|
|
||||||
|
# Compilation tools
|
||||||
|
AR = $(CROSS_COMPILE)ar
|
||||||
|
CC = $(CROSS_COMPILE)gcc
|
||||||
|
AS = $(CROSS_COMPILE)as
|
||||||
|
#LD = $(CROSS_COMPILE)ld
|
||||||
|
SIZE = $(CROSS_COMPILE)size
|
||||||
|
NM = $(CROSS_COMPILE)nm
|
||||||
|
OBJCOPY = $(CROSS_COMPILE)objcopy
|
||||||
|
RM=cs-rm -Rf
|
||||||
|
SEP=\\
|
||||||
|
|
||||||
|
# ---------------------------------------------------------------------------------------
|
||||||
|
# C Flags
|
||||||
|
|
||||||
|
CFLAGS += -Wall -Wchar-subscripts -Wcomment -Wformat=2 -Wimplicit-int
|
||||||
|
CFLAGS += -Werror-implicit-function-declaration -Wmain -Wparentheses
|
||||||
|
CFLAGS += -Wsequence-point -Wreturn-type -Wswitch -Wtrigraphs -Wunused
|
||||||
|
CFLAGS += -Wuninitialized -Wunknown-pragmas -Wfloat-equal -Wundef
|
||||||
|
CFLAGS += -Wshadow -Wpointer-arith -Wbad-function-cast -Wwrite-strings
|
||||||
|
CFLAGS += -Wsign-compare -Waggregate-return -Wstrict-prototypes
|
||||||
|
CFLAGS += -Wmissing-prototypes -Wmissing-declarations
|
||||||
|
CFLAGS += -Wformat -Wmissing-format-attribute -Wno-deprecated-declarations
|
||||||
|
CFLAGS += -Wpacked -Wredundant-decls -Wnested-externs -Winline -Wlong-long
|
||||||
|
CFLAGS += -Wunreachable-code
|
||||||
|
CFLAGS += -Wcast-align
|
||||||
|
|
||||||
|
CFLAGS += --param max-inline-insns-single=500 -mcpu=cortex-m3 -mthumb -mlong-calls -ffunction-sections
|
||||||
|
CFLAGS += $(OPTIMIZATION) $(INCLUDES) -D$(CHIP) -D$(VARIANT)
|
||||||
|
|
||||||
|
# To reduce application size use only integer printf function.
|
||||||
|
CFLAGS += -Dprintf=iprintf
|
||||||
|
|
||||||
|
# ---------------------------------------------------------------------------------------
|
||||||
|
# CPP Flags
|
||||||
|
|
||||||
|
CPPFLAGS += -Wall -Wchar-subscripts -Wcomment -Wformat=2
|
||||||
|
CPPFLAGS += -Wmain -Wparentheses -Wcast-align -Wunreachable-code
|
||||||
|
CPPFLAGS += -Wsequence-point -Wreturn-type -Wswitch -Wtrigraphs -Wunused
|
||||||
|
CPPFLAGS += -Wuninitialized -Wunknown-pragmas -Wfloat-equal -Wundef
|
||||||
|
CPPFLAGS += -Wshadow -Wpointer-arith -Wwrite-strings
|
||||||
|
CPPFLAGS += -Wsign-compare -Waggregate-return -Wmissing-declarations
|
||||||
|
CPPFLAGS += -Wformat -Wmissing-format-attribute -Wno-deprecated-declarations
|
||||||
|
CPPFLAGS += -Wpacked -Wredundant-decls -Winline -Wlong-long
|
||||||
|
|
||||||
|
CPPFLAGS += --param max-inline-insns-single=500 -mcpu=cortex-m3 -mthumb -mlong-calls -ffunction-sections
|
||||||
|
CPPFLAGS += $(OPTIMIZATION) $(INCLUDES) -D$(CHIP)
|
||||||
|
|
||||||
|
# To reduce application size use only integer printf function.
|
||||||
|
CPPFLAGS += -Dprintf=iprintf
|
||||||
|
|
||||||
|
# ---------------------------------------------------------------------------------------
|
||||||
|
# ASM Flags
|
||||||
|
|
||||||
|
ASFLAGS = -mcpu=cortex-m3 -mthumb -Wall -g $(OPTIMIZATION) $(INCLUDES)
|
|
@ -0,0 +1,8 @@
|
||||||
|
|
||||||
|
# Optimization level
|
||||||
|
# -O1 Optimize
|
||||||
|
# -O2 Optimize even more
|
||||||
|
# -O3 Optimize yet more
|
||||||
|
# -O0 Reduce compilation time and make debugging produce the expected results
|
||||||
|
# -Os Optimize for size
|
||||||
|
OPTIMIZATION = -Os
|
|
@ -1,3 +1,4 @@
|
||||||
|
#include "../Arduino.h"
|
||||||
|
|
||||||
void setup( void )
|
void setup( void )
|
||||||
{
|
{
|
||||||
|
@ -5,7 +6,7 @@ void setup( void )
|
||||||
// Pin PIN_LED has an LED connected on most Arduino boards:
|
// Pin PIN_LED has an LED connected on most Arduino boards:
|
||||||
pinMode( PIN_LED, OUTPUT ) ;
|
pinMode( PIN_LED, OUTPUT ) ;
|
||||||
|
|
||||||
Serial.begin( 19200 ) ;
|
Serial1.begin( 19200 ) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
void loop( void )
|
void loop( void )
|
||||||
|
@ -15,7 +16,7 @@ void loop( void )
|
||||||
digitalWrite( PIN_LED, LOW ) ; // set the LED off
|
digitalWrite( PIN_LED, LOW ) ; // set the LED off
|
||||||
delay( 1000 ) ; // wait for a second
|
delay( 1000 ) ; // wait for a second
|
||||||
|
|
||||||
Serial.println( "test1" ) ; // send an initial string
|
Serial1.println( "test1" ) ; // send an initial string
|
||||||
delay( 1000 ) ; // wait for a second
|
delay( 1000 ) ; // wait for a second
|
||||||
Serial.println( "test2" ) ; // send an initial string
|
Serial1.println( "test2" ) ; // send an initial string
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,106 @@
|
||||||
|
# Makefile for compiling libArduino
|
||||||
|
.SUFFIXES: .o .a .c .s
|
||||||
|
|
||||||
|
CHIP=sam3s4
|
||||||
|
VARIANT=sam3s_ek
|
||||||
|
TOOLCHAIN=gcc
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Path
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
# Output directories
|
||||||
|
OUTPUT_PATH = .
|
||||||
|
|
||||||
|
# Libraries
|
||||||
|
PROJECT_BASE_PATH = .
|
||||||
|
SYSTEM_PATH = ../../../system
|
||||||
|
CMSIS_PATH = $(SYSTEM_PATH)/CMSIS/CM3/CoreSupport
|
||||||
|
VARIANT_PATH = ../../../variants/sam3s-ek
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Files
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
vpath %.h $(PROJECT_BASE_PATH)/.. $(VARIANT_PATH) $(SYSTEM_PATH)
|
||||||
|
vpath %.cpp $(PROJECT_BASE_PATH)
|
||||||
|
|
||||||
|
VPATH+=$(PROJECT_BASE_PATH)
|
||||||
|
|
||||||
|
INCLUDES = -I$(PROJECT_BASE_PATH)/..
|
||||||
|
INCLUDES += -I$(VARIANT_PATH)
|
||||||
|
INCLUDES += -I$(SYSTEM_PATH)
|
||||||
|
INCLUDES += -I$(SYSTEM_PATH)/libsam
|
||||||
|
INCLUDES += -I$(CMSIS_PATH)
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
ifdef DEBUG
|
||||||
|
include debug.mk
|
||||||
|
else
|
||||||
|
include release.mk
|
||||||
|
endif
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Tools
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
include $(TOOLCHAIN).mk
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
ifdef DEBUG
|
||||||
|
OUTPUT_OBJ=debug
|
||||||
|
OUTPUT_BIN=test_$(TOOLCHAIN)_dbg
|
||||||
|
LIBS=-Wl,--start-group -lgcc -lc -lchip_$(CHIP)_$(TOOLCHAIN)_dbg -larduino_$(VARIANT)_$(TOOLCHAIN)_dbg -Wl,--end-group
|
||||||
|
else
|
||||||
|
OUTPUT_OBJ=release
|
||||||
|
OUTPUT_BIN=test_$(TOOLCHAIN)_rel
|
||||||
|
#LIBS=-L../libchip_$(CHIP)_$(TOOLCHAIN)_rel.a -L../arduino_$(VARIANT)_$(TOOLCHAIN)_rel.a
|
||||||
|
LIBS=-Wl,--start-group -lgcc -lc -lchip_$(CHIP)_$(TOOLCHAIN)_rel -larduino_$(VARIANT)_$(TOOLCHAIN)_rel -Wl,--end-group
|
||||||
|
endif
|
||||||
|
|
||||||
|
//OUTPUT_PATH=$(OUTPUT_OBJ)_test.elf
|
||||||
|
|
||||||
|
LIB_PATH =-L$(PROJECT_BASE_PATH)/..
|
||||||
|
LIB_PATH+=-L=/lib/thumb2
|
||||||
|
LIB_PATH+=-L=/../lib/gcc/arm-none-eabi/4.4.1/thumb2
|
||||||
|
|
||||||
|
LDFLAGS= -mcpu=cortex-m3 -mthumb -Wl,--cref -Wl,--check-sections -Wl,--gc-sections -Wl,--entry=Reset_Handler -Wl,--unresolved-symbols=report-all -Wl,--warn-common -Wl,--warn-section-align -Wl,--warn-unresolved-symbols
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# CPP source files and objects
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
CPP_SRC=$(wildcard $(PROJECT_BASE_PATH)/*.cpp)
|
||||||
|
|
||||||
|
CPP_OBJ_TEMP = $(patsubst %.cpp, %.o, $(notdir $(CPP_SRC)))
|
||||||
|
|
||||||
|
# during development, remove some files
|
||||||
|
CPP_OBJ_FILTER=
|
||||||
|
|
||||||
|
CPP_OBJ=$(filter-out $(CPP_OBJ_FILTER), $(CPP_OBJ_TEMP))
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
# Rules
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
all: test
|
||||||
|
|
||||||
|
test: $(OUTPUT_BIN)
|
||||||
|
|
||||||
|
$(addprefix $(OUTPUT_PATH)/,$(CPP_OBJ)): $(OUTPUT_PATH)/%.o: %.cpp
|
||||||
|
# @$(CC) -c $(CPPFLAGS) $< -o $@
|
||||||
|
@$(CC) -xc++ -c $(CPPFLAGS) $< -o $@
|
||||||
|
|
||||||
|
$(OUTPUT_BIN): $(addprefix $(OUTPUT_PATH)/, $(C_OBJ)) $(addprefix $(OUTPUT_PATH)/, $(CPP_OBJ)) $(addprefix $(OUTPUT_PATH)/, $(A_OBJ))
|
||||||
|
@$(CC) $(LIB_PATH) $(LDFLAGS) -T"$(VARIANT_PATH)/linker_scripts/flash.ld" -Wl,-Map,$(OUTPUT_PATH)/$@.map -o $(OUTPUT_PATH)/$@.elf $^ $(LIBS)
|
||||||
|
$(NM) $(OUTPUT_PATH)/$@.elf >$(OUTPUT_PATH)/$@.elf.txt
|
||||||
|
$(OBJCOPY) -O binary $(OUTPUT_PATH)/$@.elf $(OUTPUT_PATH)/$@.bin
|
||||||
|
$(SIZE) $^ $(OUTPUT_PATH)/$@.elf
|
||||||
|
|
||||||
|
|
||||||
|
.PHONY: clean
|
||||||
|
clean:
|
||||||
|
@echo --- Cleaning test files
|
||||||
|
-@$(RM) $(OUTPUT_PATH)/test.o 1>NUL 2>&1
|
||||||
|
-@$(RM) $(OUTPUT_PATH)/$(OUTPUT_BIN).elf 1>NUL 2>&1
|
||||||
|
-@$(RM) $(OUTPUT_PATH)/$(OUTPUT_BIN).elf.txt 1>NUL 2>&1
|
||||||
|
-@$(RM) $(OUTPUT_PATH)/$(OUTPUT_BIN).bin 1>NUL 2>&1
|
||||||
|
-@$(RM) $(OUTPUT_PATH)/$(OUTPUT_BIN).map 1>NUL 2>&1
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,351 @@
|
||||||
|
00405378 t .udivsi3_skip_div0_test
|
||||||
|
00404eb8 W ACC_IrqHandler
|
||||||
|
00404eb8 W ADC_IrqHandler
|
||||||
|
004061b4 t APinDescription
|
||||||
|
004065a8 t APinDescription
|
||||||
|
00404eb8 W BusFault_Handler
|
||||||
|
00404eb8 W CRCCU_IrqHandler
|
||||||
|
00404eb8 W DAC_IrqHandler
|
||||||
|
00404eb8 W DebugMon_Handler
|
||||||
|
00404eb8 T Dummy_Handler
|
||||||
|
00404eb8 W EEFC_IrqHandler
|
||||||
|
00404eb8 W HardFault_Handler
|
||||||
|
004020c4 t LowLevelInit_sam3s_ek
|
||||||
|
00404eb8 W MCI_IrqHandler
|
||||||
|
004061b2 t MISO
|
||||||
|
004065a6 t MISO
|
||||||
|
004065a5 t MOSI
|
||||||
|
004061b1 t MOSI
|
||||||
|
00404eb8 W MemManage_Handler
|
||||||
|
00404eb8 W NMI_Handler
|
||||||
|
00402004 t NVIC_SetPriority
|
||||||
|
00404eb8 W PIOA_IrqHandler
|
||||||
|
00404eb8 W PIOB_IrqHandler
|
||||||
|
00404eb8 W PIOC_IrqHandler
|
||||||
|
004050fc T PIO_Configure
|
||||||
|
00404ec0 T PIO_DisableInterrupt
|
||||||
|
00404edc T PIO_PullUp
|
||||||
|
00405018 T PIO_SetInput
|
||||||
|
00405098 T PIO_SetOutput
|
||||||
|
00404f0c T PIO_SetPeripheral
|
||||||
|
00405298 T PMC_DisablePeripheral
|
||||||
|
004051f4 T PMC_EnablePeripheral
|
||||||
|
00404eb8 W PMC_IrqHandler
|
||||||
|
00404eb8 W PWM_IrqHandler
|
||||||
|
00404eb8 W PendSV_Handler
|
||||||
|
00404eb8 W RSTC_IrqHandler
|
||||||
|
00404eb8 W RTC_IrqHandler
|
||||||
|
00404eb8 W RTT_IrqHandler
|
||||||
|
00401dfc T Reset_Handler
|
||||||
|
004061b3 t SCK
|
||||||
|
004065a7 t SCK
|
||||||
|
00404eb8 W SMC_IrqHandler
|
||||||
|
00404eb8 W SPI_IrqHandler
|
||||||
|
004065a4 t SS
|
||||||
|
004061b0 t SS
|
||||||
|
00404eb8 W SSC_IrqHandler
|
||||||
|
00404eb8 W SUPC_IrqHandler
|
||||||
|
00404eb8 W SVC_Handler
|
||||||
|
200006e0 B Serial1
|
||||||
|
200006f8 B Serial2
|
||||||
|
0040205c t SysTick_Config
|
||||||
|
004020b4 T SysTick_Handler
|
||||||
|
00404eb8 W TC0_IrqHandler
|
||||||
|
00404eb8 W TC1_IrqHandler
|
||||||
|
00404eb8 W TC2_IrqHandler
|
||||||
|
00404eb8 W TC3_IrqHandler
|
||||||
|
00404eb8 W TC4_IrqHandler
|
||||||
|
00404eb8 W TC5_IrqHandler
|
||||||
|
00404eb8 W TWI0_IrqHandler
|
||||||
|
00404eb8 W TWI1_IrqHandler
|
||||||
|
00405358 T TimeTick_Increment
|
||||||
|
00404eb8 W UART0_IrqHandler
|
||||||
|
00404eb8 W UART1_IrqHandler
|
||||||
|
00404eb8 W USART0_IrqHandler
|
||||||
|
00404eb8 W USART1_IrqHandler
|
||||||
|
00404eb8 W USBD_IrqHandler
|
||||||
|
00404eb8 W UsageFault_Handler
|
||||||
|
0040533c T WDT_Disable
|
||||||
|
00404eb8 W WDT_IrqHandler
|
||||||
|
004027b4 t _GLOBAL__I_rx_buffer1
|
||||||
|
w _Jv_RegisterClasses
|
||||||
|
00400f48 T _Unwind_Backtrace
|
||||||
|
00400d1c T _Unwind_Complete
|
||||||
|
00400d20 T _Unwind_DeleteException
|
||||||
|
00400f24 T _Unwind_ForcedUnwind
|
||||||
|
00400c40 T _Unwind_GetCFA
|
||||||
|
0040131c T _Unwind_GetDataRelBase
|
||||||
|
00400498 t _Unwind_GetGR
|
||||||
|
00400fa0 t _Unwind_GetGR.clone.0
|
||||||
|
00401308 T _Unwind_GetLanguageSpecificData
|
||||||
|
004012fc T _Unwind_GetRegionStart
|
||||||
|
00401324 T _Unwind_GetTextRelBase
|
||||||
|
00400eb8 T _Unwind_RaiseException
|
||||||
|
00400edc T _Unwind_Resume
|
||||||
|
00400f00 T _Unwind_Resume_or_Rethrow
|
||||||
|
004004e4 t _Unwind_SetGR
|
||||||
|
00400464 T _Unwind_VRS_Get
|
||||||
|
00400858 T _Unwind_VRS_Pop
|
||||||
|
004004b0 T _Unwind_VRS_Set
|
||||||
|
00400188 t _Unwind_decode_target2
|
||||||
|
0040273c t _Z41__static_initialization_and_destruction_0ii
|
||||||
|
U _Z4Waitm
|
||||||
|
00406e00 t _ZL15APinDescription
|
||||||
|
004069c8 t _ZL15APinDescription
|
||||||
|
00405d9c t _ZL15APinDescription
|
||||||
|
00406dfb t _ZL2SS
|
||||||
|
004069c3 t _ZL2SS
|
||||||
|
00405d96 t _ZL2SS
|
||||||
|
00406dfe t _ZL3SCK
|
||||||
|
004069c6 t _ZL3SCK
|
||||||
|
00405d99 t _ZL3SCK
|
||||||
|
00405d98 t _ZL4MISO
|
||||||
|
004069c5 t _ZL4MISO
|
||||||
|
00406dfd t _ZL4MISO
|
||||||
|
00406dfc t _ZL4MOSI
|
||||||
|
00405d97 t _ZL4MOSI
|
||||||
|
004069c4 t _ZL4MOSI
|
||||||
|
00402488 W _ZN14HardwareSerialC1Ev
|
||||||
|
00402488 W _ZN14HardwareSerialC2Ev
|
||||||
|
004023a4 T _ZN5Print5printEPKc
|
||||||
|
004023c8 T _ZN5Print5printEc
|
||||||
|
0040231c T _ZN5Print5writeEPKc
|
||||||
|
0040235c T _ZN5Print5writeEPKhj
|
||||||
|
00402414 T _ZN5Print7printlnEPKc
|
||||||
|
004023ec T _ZN5Print7printlnEv
|
||||||
|
0040243c W _ZN5PrintC1Ev
|
||||||
|
0040243c W _ZN5PrintC2Ev
|
||||||
|
0040245c W _ZN6StreamC1Ev
|
||||||
|
0040245c W _ZN6StreamC2Ev
|
||||||
|
00402560 T _ZN9UARTClass3endEv
|
||||||
|
004025d0 T _ZN9UARTClass4peekEv
|
||||||
|
00402610 T _ZN9UARTClass4readEv
|
||||||
|
00402504 T _ZN9UARTClass5beginEm
|
||||||
|
00402668 T _ZN9UARTClass5flushEv
|
||||||
|
00402694 T _ZN9UARTClass5writeEh
|
||||||
|
004025a4 T _ZN9UARTClass9availableEv
|
||||||
|
004024b4 T _ZN9UARTClassC1EP4Uart4IRQnmP12_ring_bufferS4_
|
||||||
|
004024b4 T _ZN9UARTClassC2EP4Uart4IRQnmP12_ring_bufferS4_
|
||||||
|
0040725c V _ZTI14HardwareSerial
|
||||||
|
004069b4 T _ZTI5Print
|
||||||
|
00407270 V _ZTI6Stream
|
||||||
|
00406de4 T _ZTI9UARTClass
|
||||||
|
00407248 V _ZTS14HardwareSerial
|
||||||
|
004069bc T _ZTS5Print
|
||||||
|
00407268 V _ZTS6Stream
|
||||||
|
00406df0 T _ZTS9UARTClass
|
||||||
|
004071f0 V _ZTV14HardwareSerial
|
||||||
|
004069a0 T _ZTV5Print
|
||||||
|
00407220 V _ZTV6Stream
|
||||||
|
00406db8 T _ZTV9UARTClass
|
||||||
|
U _ZTVN10__cxxabiv117__class_type_infoE
|
||||||
|
U _ZTVN10__cxxabiv120__si_class_type_infoE
|
||||||
|
00407380 t __FUNCTION__.5774
|
||||||
|
00407368 t __FUNCTION__.5778
|
||||||
|
00407354 t __FUNCTION__.5800
|
||||||
|
00400f48 T ___Unwind_Backtrace
|
||||||
|
00400f24 T ___Unwind_ForcedUnwind
|
||||||
|
00400eb8 T ___Unwind_RaiseException
|
||||||
|
00400edc T ___Unwind_Resume
|
||||||
|
00400f00 T ___Unwind_Resume_or_Rethrow
|
||||||
|
004055f0 W __aeabi_idiv0
|
||||||
|
004055f0 W __aeabi_ldiv0
|
||||||
|
00405378 T __aeabi_uidiv
|
||||||
|
004055d4 T __aeabi_uidivmod
|
||||||
|
004055f4 T __aeabi_uldivmod
|
||||||
|
00400854 T __aeabi_unwind_cpp_pr0
|
||||||
|
00400850 W __aeabi_unwind_cpp_pr1
|
||||||
|
0040084c W __aeabi_unwind_cpp_pr2
|
||||||
|
00404ca8 T __ascii_wctomb
|
||||||
|
00405d30 T __assert
|
||||||
|
00405ce8 T __assert_func
|
||||||
|
w __cxa_begin_cleanup
|
||||||
|
w __cxa_call_unexpected
|
||||||
|
U __cxa_pure_virtual
|
||||||
|
w __cxa_type_match
|
||||||
|
00405680 T __divdi3
|
||||||
|
004000d0 t __do_global_dtors_aux
|
||||||
|
00407488 t __do_global_dtors_aux_fini_array_entry
|
||||||
|
004075b4 a __exidx_end
|
||||||
|
0040748c a __exidx_start
|
||||||
|
0040748c T __fini_array_end
|
||||||
|
00407488 T __fini_array_start
|
||||||
|
00404038 t __fp_lock
|
||||||
|
00404228 T __fp_lock_all
|
||||||
|
0040403c t __fp_unlock
|
||||||
|
00404240 T __fp_unlock_all
|
||||||
|
00407474 t __frame_dummy_init_array_entry
|
||||||
|
00400d30 T __gnu_Unwind_Backtrace
|
||||||
|
w __gnu_Unwind_Find_exidx
|
||||||
|
00400cb4 T __gnu_Unwind_ForcedUnwind
|
||||||
|
00400c44 T __gnu_Unwind_RaiseException
|
||||||
|
00400dd8 T __gnu_Unwind_Restore_VFP
|
||||||
|
00400de8 T __gnu_Unwind_Restore_VFP_D
|
||||||
|
00400df8 T __gnu_Unwind_Restore_VFP_D_16_to_31
|
||||||
|
00400e90 T __gnu_Unwind_Restore_WMMXC
|
||||||
|
00400e08 T __gnu_Unwind_Restore_WMMXD
|
||||||
|
00400cc8 T __gnu_Unwind_Resume
|
||||||
|
00400d04 T __gnu_Unwind_Resume_or_Rethrow
|
||||||
|
00400de0 T __gnu_Unwind_Save_VFP
|
||||||
|
00400df0 T __gnu_Unwind_Save_VFP_D
|
||||||
|
00400e00 T __gnu_Unwind_Save_VFP_D_16_to_31
|
||||||
|
00400ea4 T __gnu_Unwind_Save_WMMXC
|
||||||
|
00400e4c T __gnu_Unwind_Save_WMMXD
|
||||||
|
00405620 T __gnu_ldivmod_helper
|
||||||
|
00405650 T __gnu_uldivmod_helper
|
||||||
|
00400fc0 T __gnu_unwind_execute
|
||||||
|
004012d0 T __gnu_unwind_frame
|
||||||
|
00400500 t __gnu_unwind_pr_common
|
||||||
|
0040747c T __init_array_end
|
||||||
|
00407474 T __init_array_start
|
||||||
|
004027cc T __libc_init_array
|
||||||
|
004047d8 T __locale_charset
|
||||||
|
004047f8 T __locale_cjk_lang
|
||||||
|
004047e4 T __locale_mb_cur_max
|
||||||
|
004047f0 T __locale_msgcharset
|
||||||
|
200000f4 D __malloc_av_
|
||||||
|
2000058c B __malloc_current_mallinfo
|
||||||
|
00401b8c T __malloc_lock
|
||||||
|
200005b4 B __malloc_max_sbrked_mem
|
||||||
|
200005b8 B __malloc_max_total_mem
|
||||||
|
200004fc D __malloc_sbrk_base
|
||||||
|
20000588 B __malloc_top_pad
|
||||||
|
20000500 D __malloc_trim_threshold
|
||||||
|
00401b90 T __malloc_unlock
|
||||||
|
20000524 D __mb_cur_max
|
||||||
|
00407474 T __preinit_array_end
|
||||||
|
00407474 T __preinit_array_start
|
||||||
|
00400dc0 T __restore_core_regs
|
||||||
|
00404ad4 T __sclose
|
||||||
|
00404a6c T __seofread
|
||||||
|
0040730c T __sf_fake_stderr
|
||||||
|
004072cc T __sf_fake_stdin
|
||||||
|
004072ec T __sf_fake_stdout
|
||||||
|
0040404c T __sfmoreglue
|
||||||
|
00404190 T __sfp
|
||||||
|
00404218 T __sfp_lock_acquire
|
||||||
|
0040421c T __sfp_lock_release
|
||||||
|
00404398 T __sfvwrite_r
|
||||||
|
004015d0 T __sigtramp
|
||||||
|
00401550 T __sigtramp_r
|
||||||
|
00404088 T __sinit
|
||||||
|
00404220 T __sinit_lock_acquire
|
||||||
|
00404224 T __sinit_lock_release
|
||||||
|
0040481c T __smakebuf_r
|
||||||
|
00402f8c T __sprint_r
|
||||||
|
00404a48 T __sread
|
||||||
|
00404aac T __sseek
|
||||||
|
00404bc8 T __swbuf
|
||||||
|
00404adc T __swbuf_r
|
||||||
|
00404a70 T __swrite
|
||||||
|
00403d48 T __swsetup_r
|
||||||
|
004059e0 T __udivdi3
|
||||||
|
00405378 T __udivsi3
|
||||||
|
20000580 D __wctomb
|
||||||
|
0040407c T _cleanup
|
||||||
|
00404040 T _cleanup_r
|
||||||
|
00401efc T _close
|
||||||
|
00404d20 T _close_r
|
||||||
|
20000710 b _dwTickCount
|
||||||
|
20000718 B _ebss
|
||||||
|
0040748c T _efixed
|
||||||
|
20002b18 A _end
|
||||||
|
20000584 D _erelocate
|
||||||
|
004075b4 A _etext
|
||||||
|
00401fc4 T _exit
|
||||||
|
20000718 B _ezero
|
||||||
|
00404d48 T _fclose_r
|
||||||
|
00403e4c T _fflush_r
|
||||||
|
0040747c T _fini
|
||||||
|
00405d3c T _fiprintf_r
|
||||||
|
00404258 T _fputwc_r
|
||||||
|
00401c64 T _free_r
|
||||||
|
00401f14 T _fstat
|
||||||
|
00404e0c T _fstat_r
|
||||||
|
004046d0 T _fwalk
|
||||||
|
00404724 T _fwalk_reent
|
||||||
|
00401ff4 T _getpid
|
||||||
|
0040160c T _getpid_r
|
||||||
|
0040618c T _global_impure_ptr
|
||||||
|
20000000 D _impure_ptr
|
||||||
|
00407468 T _init
|
||||||
|
004015c4 T _init_signal
|
||||||
|
0040148c T _init_signal_r
|
||||||
|
00402854 T _iprintf_r
|
||||||
|
00401f38 T _isatty
|
||||||
|
00404e38 T _isatty_r
|
||||||
|
00401fe0 T _kill
|
||||||
|
004015e0 T _kill_r
|
||||||
|
004047fc T _localeconv_r
|
||||||
|
00401f50 T _lseek
|
||||||
|
00404e60 T _lseek_r
|
||||||
|
00401610 T _malloc_r
|
||||||
|
00401bbc T _malloc_trim_r
|
||||||
|
004014f8 T _raise_r
|
||||||
|
00401f6c T _read
|
||||||
|
00404e8c T _read_r
|
||||||
|
00402934 T _realloc_r
|
||||||
|
00401ebc T _sbrk
|
||||||
|
00401b94 T _sbrk_r
|
||||||
|
20000584 B _sbss
|
||||||
|
0040477c T _setlocale_r
|
||||||
|
00400000 T _sfixed
|
||||||
|
004014bc T _signal_r
|
||||||
|
20000000 D _srelocate
|
||||||
|
20000584 B _szero
|
||||||
|
00403010 T _vfiprintf_r
|
||||||
|
00404bd8 T _wcrtomb_r
|
||||||
|
00404cc4 T _wctomb_r
|
||||||
|
00401f88 T _write
|
||||||
|
00404cf4 T _write_r
|
||||||
|
0040132c T abort
|
||||||
|
0040727c t blanks.6556
|
||||||
|
20000584 b completed.7631
|
||||||
|
004022a0 T digitalWrite
|
||||||
|
20000714 B errno
|
||||||
|
00404dfc T fclose
|
||||||
|
00404010 T fflush
|
||||||
|
00405d5c T fiprintf
|
||||||
|
00404340 T fputwc
|
||||||
|
004000e4 t frame_dummy
|
||||||
|
00400208 t get_eit_entry
|
||||||
|
200005bc b heap.6819
|
||||||
|
20000004 d impure_data
|
||||||
|
0040217c T init
|
||||||
|
0040281c T iprintf
|
||||||
|
20000504 d lc_ctype_charset
|
||||||
|
20000528 d lc_message_charset
|
||||||
|
20000548 d lconv
|
||||||
|
00404814 T localeconv
|
||||||
|
00400128 T loop
|
||||||
|
0040271c T main
|
||||||
|
00404908 T memchr
|
||||||
|
0040133c T memcpy
|
||||||
|
00402880 T memmove
|
||||||
|
00404994 T memset
|
||||||
|
00400f6c t next_unwind_byte
|
||||||
|
20000718 B pdwStack
|
||||||
|
004021c8 T pinMode
|
||||||
|
004015a4 T raise
|
||||||
|
00400dc0 T restore_core_regs
|
||||||
|
004002d8 t restore_non_core_regs
|
||||||
|
200005c0 B rx_buffer1
|
||||||
|
20000650 B rx_buffer2
|
||||||
|
004001a8 t search_EIT_table
|
||||||
|
00400194 t selfrel_offset31
|
||||||
|
00404804 T setlocale
|
||||||
|
00400100 T setup
|
||||||
|
00000000 a shift
|
||||||
|
004015b4 T signal
|
||||||
|
00402d50 T strcmp
|
||||||
|
00402dd0 t strcmp_unaligned
|
||||||
|
00402f2c T strlen
|
||||||
|
20000608 B tx_buffer1
|
||||||
|
20000698 B tx_buffer2
|
||||||
|
00400fbc t unwind_UCB_from_context
|
||||||
|
00400434 t unwind_phase2
|
||||||
|
00400340 t unwind_phase2_forced
|
||||||
|
00400000 T vector_table
|
||||||
|
00403d2c T vfiprintf
|
||||||
|
00404c34 T wcrtomb
|
||||||
|
0040728c t zeroes.6557
|
File diff suppressed because it is too large
Load Diff
|
@ -100,10 +100,10 @@ unsigned long micros( void )
|
||||||
return 0 ;
|
return 0 ;
|
||||||
}
|
}
|
||||||
|
|
||||||
void delay( uint32_t dwMs )
|
//void delay( uint32_t dwMs )
|
||||||
{
|
//{
|
||||||
Wait( dwMs ) ;
|
// Wait( dwMs ) ;
|
||||||
}
|
//}
|
||||||
|
|
||||||
/* Delay for the given number of microseconds. Assumes a 64 MHz clock. */
|
/* Delay for the given number of microseconds. Assumes a 64 MHz clock. */
|
||||||
void delayMicroseconds(unsigned int us)
|
void delayMicroseconds(unsigned int us)
|
||||||
|
|
|
@ -25,141 +25,79 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "wiring_private.h"
|
#include "wiring_private.h"
|
||||||
#include "pins_arduino.h"
|
//#include "pins_arduino.h"
|
||||||
|
|
||||||
void pinMode(uint8_t pin, uint8_t mode)
|
/// \brief Configures the specified pin to behave either as an input or an output. See the description of digital pins for details.
|
||||||
|
///
|
||||||
|
/// \param dwPin the number of the pin whose mode you wish to set
|
||||||
|
/// \param dwMode either INPUT or OUTPUT
|
||||||
|
///
|
||||||
|
void pinMode( uint32_t dwPin, uint32_t dwMode )
|
||||||
{
|
{
|
||||||
uint8_t bit = digitalPinToBitMask(pin);
|
if ( APinDescription[dwPin].dwPinType == PIO_NOT_A_PIN )
|
||||||
uint8_t port = digitalPinToPort(pin);
|
{
|
||||||
volatile uint8_t *reg;
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
if (port == NOT_A_PIN) return;
|
switch ( dwMode )
|
||||||
|
{
|
||||||
|
case INPUT:
|
||||||
|
PIO_Configure( APinDescription[dwPin].pPort, PIO_INPUT, APinDescription[dwPin].dwPin, 0 ) ;
|
||||||
|
break ;
|
||||||
|
|
||||||
// JWS: can I let the optimizer do this?
|
case OUTPUT:
|
||||||
reg = portModeRegister(port);
|
PIO_Configure( APinDescription[dwPin].pPort, PIO_OUTPUT_1, APinDescription[dwPin].dwPin, APinDescription[dwPin].dwPinAttribute ) ;
|
||||||
|
break ;
|
||||||
|
|
||||||
if (mode == INPUT) {
|
default:
|
||||||
uint8_t oldSREG = SREG;
|
break ;
|
||||||
cli();
|
|
||||||
*reg &= ~bit;
|
|
||||||
SREG = oldSREG;
|
|
||||||
} else {
|
|
||||||
uint8_t oldSREG = SREG;
|
|
||||||
cli();
|
|
||||||
*reg |= bit;
|
|
||||||
SREG = oldSREG;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Forcing this inline keeps the callers from having to push their own stuff
|
/// \brief Write a HIGH or a LOW value to a digital pin.
|
||||||
// on the stack. It is a good performance win and only takes 1 more byte per
|
///
|
||||||
// user than calling. (It will take more bytes on the 168.)
|
/// \desc If the pin has been configured as an OUTPUT with pinMode(), its voltage will be set to the
|
||||||
//
|
/// corresponding value: 5V (or 3.3V on 3.3V boards) for HIGH, 0V (ground) for LOW.
|
||||||
// But shouldn't this be moved into pinMode? Seems silly to check and do on
|
///
|
||||||
// each digitalread or write.
|
/// If the pin is configured as an INPUT, writing a HIGH value with digitalWrite() will enable an internal
|
||||||
//
|
/// 20K pullup resistor (see the tutorial on digital pins). Writing LOW will disable the pullup. The pullup
|
||||||
// Mark Sproul:
|
/// resistor is enough to light an LED dimly, so if LEDs appear to work, but very dimly, this is a likely
|
||||||
// - Removed inline. Save 170 bytes on atmega1280
|
/// cause. The remedy is to set the pin to an output with the pinMode() function.
|
||||||
// - changed to a switch statment; added 32 bytes but much easier to read and maintain.
|
///
|
||||||
// - Added more #ifdefs, now compiles for atmega645
|
/// NOTE: Digital pin PIN_LED is harder to use as a digital input than the other digital pins because it has an LED
|
||||||
//
|
/// and resistor attached to it that's soldered to the board on most boards. If you enable its internal 20k pull-up
|
||||||
//static inline void turnOffPWM(uint8_t timer) __attribute__ ((always_inline));
|
/// resistor, it will hang at around 1.7 V instead of the expected 5V because the onboard LED and series resistor
|
||||||
//static inline void turnOffPWM(uint8_t timer)
|
/// pull the voltage level down, meaning it always returns LOW. If you must use pin PIN_LED as a digital input, use an
|
||||||
static void turnOffPWM(uint8_t timer)
|
/// external pull down resistor.
|
||||||
|
///
|
||||||
|
/// \param dwPin the pin number
|
||||||
|
/// \param dwVal HIGH or LOW
|
||||||
|
///
|
||||||
|
void digitalWrite( uint32_t dwPin, uint32_t dwVal )
|
||||||
{
|
{
|
||||||
switch (timer)
|
if ( APinDescription[dwPin].dwPinType == PIO_NOT_A_PIN )
|
||||||
{
|
{
|
||||||
#if defined(TCCR1A) && defined(COM1A1)
|
return ;
|
||||||
case TIMER1A: cbi(TCCR1A, COM1A1); break;
|
}
|
||||||
#endif
|
|
||||||
#if defined(TCCR1A) && defined(COM1B1)
|
|
||||||
case TIMER1B: cbi(TCCR1A, COM1B1); break;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(TCCR2) && defined(COM21)
|
|
||||||
case TIMER2: cbi(TCCR2, COM21); break;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(TCCR0A) && defined(COM0A1)
|
|
||||||
case TIMER0A: cbi(TCCR0A, COM0A1); break;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(TIMER0B) && defined(COM0B1)
|
|
||||||
case TIMER0B: cbi(TCCR0A, COM0B1); break;
|
|
||||||
#endif
|
|
||||||
#if defined(TCCR2A) && defined(COM2A1)
|
|
||||||
case TIMER2A: cbi(TCCR2A, COM2A1); break;
|
|
||||||
#endif
|
|
||||||
#if defined(TCCR2A) && defined(COM2B1)
|
|
||||||
case TIMER2B: cbi(TCCR2A, COM2B1); break;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(TCCR3A) && defined(COM3A1)
|
|
||||||
case TIMER3A: cbi(TCCR3A, COM3A1); break;
|
|
||||||
#endif
|
|
||||||
#if defined(TCCR3A) && defined(COM3B1)
|
|
||||||
case TIMER3B: cbi(TCCR3A, COM3B1); break;
|
|
||||||
#endif
|
|
||||||
#if defined(TCCR3A) && defined(COM3C1)
|
|
||||||
case TIMER3C: cbi(TCCR3A, COM3C1); break;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(TCCR4A) && defined(COM4A1)
|
PIO_SetOutput( APinDescription[dwPin].pPort, APinDescription[dwPin].dwPin, dwVal, 0, PIO_PULLUP ) ;
|
||||||
case TIMER4A: cbi(TCCR4A, COM4A1); break;
|
|
||||||
#endif
|
|
||||||
#if defined(TCCR4A) && defined(COM4B1)
|
|
||||||
case TIMER4B: cbi(TCCR4A, COM4B1); break;
|
|
||||||
#endif
|
|
||||||
#if defined(TCCR4A) && defined(COM4C1)
|
|
||||||
case TIMER4C: cbi(TCCR4A, COM4C1); break;
|
|
||||||
#endif
|
|
||||||
#if defined(TCCR5A)
|
|
||||||
case TIMER5A: cbi(TCCR5A, COM5A1); break;
|
|
||||||
case TIMER5B: cbi(TCCR5A, COM5B1); break;
|
|
||||||
case TIMER5C: cbi(TCCR5A, COM5C1); break;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void digitalWrite(uint8_t pin, uint8_t val)
|
/// \brief Reads the value from a specified digital pin, either HIGH or LOW.
|
||||||
|
///
|
||||||
|
/// \param dwPin the number of the digital pin you want to read (int)
|
||||||
|
///
|
||||||
|
int digitalRead( uint32_t dwPin )
|
||||||
{
|
{
|
||||||
uint8_t timer = digitalPinToTimer(pin);
|
if ( APinDescription[dwPin].dwPinType == PIO_NOT_A_PIN )
|
||||||
uint8_t bit = digitalPinToBitMask(pin);
|
{
|
||||||
uint8_t port = digitalPinToPort(pin);
|
return LOW ;
|
||||||
volatile uint8_t *out;
|
}
|
||||||
|
|
||||||
if (port == NOT_A_PIN) return;
|
if ( PIO_Get( APinDescription[dwPin].pPort, PIO_INPUT, APinDescription[dwPin].dwPin ) == 1 )
|
||||||
|
{
|
||||||
|
return HIGH ;
|
||||||
|
}
|
||||||
|
|
||||||
// If the pin that support PWM output, we need to turn it off
|
return LOW ;
|
||||||
// before doing a digital write.
|
|
||||||
if (timer != NOT_ON_TIMER) turnOffPWM(timer);
|
|
||||||
|
|
||||||
out = portOutputRegister(port);
|
|
||||||
|
|
||||||
uint8_t oldSREG = SREG;
|
|
||||||
cli();
|
|
||||||
|
|
||||||
if (val == LOW) {
|
|
||||||
*out &= ~bit;
|
|
||||||
} else {
|
|
||||||
*out |= bit;
|
|
||||||
}
|
|
||||||
|
|
||||||
SREG = oldSREG;
|
|
||||||
}
|
|
||||||
|
|
||||||
int digitalRead(uint8_t pin)
|
|
||||||
{
|
|
||||||
uint8_t timer = digitalPinToTimer(pin);
|
|
||||||
uint8_t bit = digitalPinToBitMask(pin);
|
|
||||||
uint8_t port = digitalPinToPort(pin);
|
|
||||||
|
|
||||||
if (port == NOT_A_PIN) return LOW;
|
|
||||||
|
|
||||||
// If the pin that support PWM output, we need to turn it off
|
|
||||||
// before getting a digital reading.
|
|
||||||
if (timer != NOT_ON_TIMER) turnOffPWM(timer);
|
|
||||||
|
|
||||||
if (*portInputRegister(port) & bit) return HIGH;
|
|
||||||
return LOW;
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,7 +23,6 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "wiring_private.h"
|
#include "wiring_private.h"
|
||||||
#include "pins_arduino.h"
|
|
||||||
|
|
||||||
/* Measures the length (in microseconds) of a pulse on the pin; state is HIGH
|
/* Measures the length (in microseconds) of a pulse on the pin; state is HIGH
|
||||||
* or LOW, the type of pulse to measure. Works on pulses from 2-3 microseconds
|
* or LOW, the type of pulse to measure. Works on pulses from 2-3 microseconds
|
||||||
|
|
|
@ -6,7 +6,8 @@ SUBMAKE_OPTIONS=--no-builtin-rules --no-builtin-variables
|
||||||
# Rules
|
# Rules
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
all: libchip_sam3s4_gcc_dbg.a libchip_sam3s4_gcc_rel.a
|
# libchip_sam3s4_gcc_rel.a
|
||||||
|
all: libchip_sam3s4_gcc_dbg.a
|
||||||
|
|
||||||
libchip_sam3s4_gcc_dbg.a:
|
libchip_sam3s4_gcc_dbg.a:
|
||||||
@echo --- Making $@
|
@echo --- Making $@
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -116,8 +116,8 @@ $(addprefix $(OUTPUT_PATH)/,$(A_OBJ)): $(OUTPUT_PATH)/%.o: %.s
|
||||||
@"$(AS)" -c $(ASFLAGS) $< -o $@
|
@"$(AS)" -c $(ASFLAGS) $< -o $@
|
||||||
|
|
||||||
$(OUTPUT_LIB): $(addprefix $(OUTPUT_PATH)/, $(C_OBJ)) $(addprefix $(OUTPUT_PATH)/, $(A_OBJ))
|
$(OUTPUT_LIB): $(addprefix $(OUTPUT_PATH)/, $(C_OBJ)) $(addprefix $(OUTPUT_PATH)/, $(A_OBJ))
|
||||||
@"$(AR)" -r "../../../cores/sam/$@" $^
|
|
||||||
@"$(AR)" -r "$(OUTPUT_BIN)/$@" $^
|
@"$(AR)" -r "$(OUTPUT_BIN)/$@" $^
|
||||||
|
@"$(AR)" -r "../../../cores/sam/$@" $^
|
||||||
@"$(NM)" "$(OUTPUT_BIN)/$@" > "$(OUTPUT_BIN)/$@.txt"
|
@"$(NM)" "$(OUTPUT_BIN)/$@" > "$(OUTPUT_BIN)/$@.txt"
|
||||||
|
|
||||||
.PHONY: clean
|
.PHONY: clean
|
||||||
|
@ -129,3 +129,4 @@ clean:
|
||||||
|
|
||||||
# dependencies
|
# dependencies
|
||||||
$(addprefix $(OUTPUT_PATH)/,$(C_OBJ)): $(OUTPUT_PATH)/%.o: $(PROJECT_BASE_PATH)/chip.h $(wildcard $(PROJECT_BASE_PATH)/include/*.h) $(wildcard $(CMSIS_BASE_PATH)/*.h)
|
$(addprefix $(OUTPUT_PATH)/,$(C_OBJ)): $(OUTPUT_PATH)/%.o: $(PROJECT_BASE_PATH)/chip.h $(wildcard $(PROJECT_BASE_PATH)/include/*.h) $(wildcard $(CMSIS_BASE_PATH)/*.h)
|
||||||
|
|
||||||
|
|
Binary file not shown.
|
@ -305,6 +305,16 @@ tc.o:
|
||||||
00000058 r __FUNCTION__.5789
|
00000058 r __FUNCTION__.5789
|
||||||
U __assert_func
|
U __assert_func
|
||||||
|
|
||||||
|
timetick.o:
|
||||||
|
00000000 T GetTickCount
|
||||||
|
00000000 t NVIC_SetPriority
|
||||||
|
00000000 T Sleep
|
||||||
|
00000000 t SysTick_Config
|
||||||
|
00000000 T TimeTick_Configure
|
||||||
|
00000000 T TimeTick_Increment
|
||||||
|
00000000 T Wait
|
||||||
|
00000000 b _dwTickCount
|
||||||
|
|
||||||
twi.o:
|
twi.o:
|
||||||
00000000 T TWI_ByteReceived
|
00000000 T TWI_ByteReceived
|
||||||
00000000 T TWI_ByteSent
|
00000000 T TWI_ByteSent
|
||||||
|
@ -385,13 +395,3 @@ wdt.o:
|
||||||
00000000 T WDT_Restart
|
00000000 T WDT_Restart
|
||||||
|
|
||||||
core_cm3.o:
|
core_cm3.o:
|
||||||
|
|
||||||
timetick.o:
|
|
||||||
00000000 T GetTickCount
|
|
||||||
00000000 t NVIC_SetPriority
|
|
||||||
00000000 T Sleep
|
|
||||||
00000000 t SysTick_Config
|
|
||||||
00000000 T TimeTick_Configure
|
|
||||||
00000000 T TimeTick_Increment
|
|
||||||
00000000 T Wait
|
|
||||||
00000000 b _dwTickCount
|
|
||||||
|
|
Binary file not shown.
|
@ -1,390 +0,0 @@
|
||||||
|
|
||||||
acc.o:
|
|
||||||
00000000 T ACC_Configure
|
|
||||||
00000000 T ACC_GetComparisionResult
|
|
||||||
00000000 T ACC_SetComparisionPair
|
|
||||||
00000000 r __FUNCTION__.5780
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
adc.o:
|
|
||||||
00000000 T ADC_CfgChannelMode
|
|
||||||
00000000 T ADC_CfgLowRes
|
|
||||||
00000000 T ADC_CfgPowerSave
|
|
||||||
00000000 T ADC_CfgTiming
|
|
||||||
00000000 T ADC_CfgTrigering
|
|
||||||
00000000 T ADC_GetConvertedData
|
|
||||||
00000000 T ADC_Initialize
|
|
||||||
00000000 T ADC_IsChannelInterruptStatusSet
|
|
||||||
00000000 T ADC_IsInterruptMasked
|
|
||||||
00000000 T ADC_IsStatusSet
|
|
||||||
00000000 T ADC_ReadBuffer
|
|
||||||
00000000 T ADC_SetCompareChannel
|
|
||||||
00000000 T ADC_SetCompareMode
|
|
||||||
00000000 T ADC_SetComparisonWindow
|
|
||||||
00000000 T ADC_cfgFrequency
|
|
||||||
00000000 r __FUNCTION__.5807
|
|
||||||
00000015 r __FUNCTION__.5812
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
async.o:
|
|
||||||
00000000 T ASYNC_IsFinished
|
|
||||||
|
|
||||||
crccu.o:
|
|
||||||
00000000 T CRCCU_ComputeCrc
|
|
||||||
00000000 T CRCCU_Configure
|
|
||||||
00000000 T CRCCU_ResetCrcValue
|
|
||||||
|
|
||||||
dacc.o:
|
|
||||||
00000000 T DACC_Initialize
|
|
||||||
00000000 T DACC_SetConversionData
|
|
||||||
00000000 T DACC_WriteBuffer
|
|
||||||
00000000 r __FUNCTION__.5784
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
efc.o:
|
|
||||||
00000000 T EFC_ComputeAddress
|
|
||||||
00000000 T EFC_DisableFrdyIt
|
|
||||||
00000000 T EFC_EnableFrdyIt
|
|
||||||
00000000 T EFC_GetResult
|
|
||||||
00000000 T EFC_GetStatus
|
|
||||||
00000000 T EFC_PerformCommand
|
|
||||||
00000000 T EFC_SetWaitState
|
|
||||||
00000000 T EFC_StartCommand
|
|
||||||
00000000 T EFC_TranslateAddress
|
|
||||||
00000000 b IAP_PerformCommand.6416
|
|
||||||
00000000 r __FUNCTION__.6378
|
|
||||||
00000015 r __FUNCTION__.6386
|
|
||||||
00000028 r __FUNCTION__.6398
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
exceptions.o:
|
|
||||||
00000000 W ACC_IrqHandler
|
|
||||||
00000000 W ADC_IrqHandler
|
|
||||||
00000000 W BusFault_Handler
|
|
||||||
00000000 W CRCCU_IrqHandler
|
|
||||||
00000000 W DAC_IrqHandler
|
|
||||||
00000000 W DebugMon_Handler
|
|
||||||
00000000 T Dummy_Handler
|
|
||||||
00000000 W EEFC_IrqHandler
|
|
||||||
00000000 W HardFault_Handler
|
|
||||||
00000000 W MCI_IrqHandler
|
|
||||||
00000000 W MemManage_Handler
|
|
||||||
00000000 W NMI_Handler
|
|
||||||
00000000 W PIOA_IrqHandler
|
|
||||||
00000000 W PIOB_IrqHandler
|
|
||||||
00000000 W PIOC_IrqHandler
|
|
||||||
00000000 W PMC_IrqHandler
|
|
||||||
00000000 W PWM_IrqHandler
|
|
||||||
00000000 W PendSV_Handler
|
|
||||||
00000000 W RSTC_IrqHandler
|
|
||||||
00000000 W RTC_IrqHandler
|
|
||||||
00000000 W RTT_IrqHandler
|
|
||||||
00000000 W SMC_IrqHandler
|
|
||||||
00000000 W SPI_IrqHandler
|
|
||||||
00000000 W SSC_IrqHandler
|
|
||||||
00000000 W SUPC_IrqHandler
|
|
||||||
00000000 W SVC_Handler
|
|
||||||
00000000 W SysTick_Handler
|
|
||||||
00000000 W TC0_IrqHandler
|
|
||||||
00000000 W TC1_IrqHandler
|
|
||||||
00000000 W TC2_IrqHandler
|
|
||||||
00000000 W TC3_IrqHandler
|
|
||||||
00000000 W TC4_IrqHandler
|
|
||||||
00000000 W TC5_IrqHandler
|
|
||||||
00000000 W TWI0_IrqHandler
|
|
||||||
00000000 W TWI1_IrqHandler
|
|
||||||
00000000 W UART0_IrqHandler
|
|
||||||
00000000 W UART1_IrqHandler
|
|
||||||
00000000 W USART0_IrqHandler
|
|
||||||
00000000 W USART1_IrqHandler
|
|
||||||
00000000 W USBD_IrqHandler
|
|
||||||
00000000 W UsageFault_Handler
|
|
||||||
00000000 W WDT_IrqHandler
|
|
||||||
|
|
||||||
flashd.o:
|
|
||||||
00000000 t ComputeLockRange
|
|
||||||
U EFC_ComputeAddress
|
|
||||||
U EFC_DisableFrdyIt
|
|
||||||
U EFC_GetResult
|
|
||||||
U EFC_PerformCommand
|
|
||||||
U EFC_SetWaitState
|
|
||||||
U EFC_StartCommand
|
|
||||||
U EFC_TranslateAddress
|
|
||||||
00000000 T FLASHD_ClearGPNVM
|
|
||||||
00000000 T FLASHD_Erase
|
|
||||||
00000000 T FLASHD_Initialize
|
|
||||||
00000000 T FLASHD_IsGPNVMSet
|
|
||||||
00000000 T FLASHD_IsLocked
|
|
||||||
00000000 T FLASHD_Lock
|
|
||||||
00000000 T FLASHD_ReadUniqueID
|
|
||||||
00000000 T FLASHD_SetGPNVM
|
|
||||||
00000000 T FLASHD_Unlock
|
|
||||||
00000000 T FLASHD_Write
|
|
||||||
00000000 r __FUNCTION__.6150
|
|
||||||
0000000d r __FUNCTION__.6202
|
|
||||||
0000001d r __FUNCTION__.6211
|
|
||||||
0000002f r __FUNCTION__.6215
|
|
||||||
0000003f r __FUNCTION__.6219
|
|
||||||
00000051 r __FUNCTION__.6224
|
|
||||||
U __assert_func
|
|
||||||
00000004 b _adwPageBuffer
|
|
||||||
00000000 b _dwUseIAP
|
|
||||||
U memcpy
|
|
||||||
|
|
||||||
pio.o:
|
|
||||||
00000000 T PIO_Clear
|
|
||||||
00000000 T PIO_Configure
|
|
||||||
00000000 T PIO_DisableInterrupt
|
|
||||||
00000000 T PIO_Get
|
|
||||||
00000000 T PIO_GetOutputDataStatus
|
|
||||||
00000000 T PIO_PullUp
|
|
||||||
00000000 T PIO_Set
|
|
||||||
00000000 T PIO_SetDebounceFilter
|
|
||||||
00000000 T PIO_SetInput
|
|
||||||
00000000 T PIO_SetOutput
|
|
||||||
00000000 T PIO_SetPeripheral
|
|
||||||
U PMC_EnablePeripheral
|
|
||||||
|
|
||||||
pio_capture.o:
|
|
||||||
00000000 T PIO_CaptureDisable
|
|
||||||
00000000 T PIO_CaptureDisableIt
|
|
||||||
00000000 T PIO_CaptureEnable
|
|
||||||
00000000 T PIO_CaptureEnableIt
|
|
||||||
00000000 T PIO_CaptureHandler
|
|
||||||
00000000 T PIO_CaptureInit
|
|
||||||
U PMC_EnablePeripheral
|
|
||||||
00000000 b _PioCaptureCopy
|
|
||||||
00000000 r __FUNCTION__.6372
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
pmc.o:
|
|
||||||
00000000 T PMC_DisableAllPeripherals
|
|
||||||
00000000 T PMC_DisablePeripheral
|
|
||||||
00000000 T PMC_EnableAllPeripherals
|
|
||||||
00000000 T PMC_EnablePeripheral
|
|
||||||
00000000 T PMC_IsPeriphEnabled
|
|
||||||
00000000 r __FUNCTION__.5774
|
|
||||||
00000015 r __FUNCTION__.5778
|
|
||||||
0000002b r __FUNCTION__.5800
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
pwmc.o:
|
|
||||||
00000000 r C.1.7002
|
|
||||||
00000000 t FindClockConfiguration
|
|
||||||
00000000 T PWMC_ConfigureChannel
|
|
||||||
00000000 T PWMC_ConfigureChannelExt
|
|
||||||
00000000 T PWMC_ConfigureClocks
|
|
||||||
00000000 T PWMC_ConfigureComparisonUnit
|
|
||||||
00000000 T PWMC_ConfigureEventLineMode
|
|
||||||
00000000 T PWMC_ConfigureSyncChannel
|
|
||||||
00000000 T PWMC_DisableChannel
|
|
||||||
00000000 T PWMC_DisableChannelIt
|
|
||||||
00000000 T PWMC_DisableIt
|
|
||||||
00000000 T PWMC_DisableOverrideOutput
|
|
||||||
00000000 T PWMC_EnableChannel
|
|
||||||
00000000 T PWMC_EnableChannelIt
|
|
||||||
00000000 T PWMC_EnableFaultProtection
|
|
||||||
00000000 T PWMC_EnableIt
|
|
||||||
00000000 T PWMC_EnableOverrideOutput
|
|
||||||
00000000 T PWMC_FaultClear
|
|
||||||
00000000 T PWMC_SetDeadTime
|
|
||||||
00000000 T PWMC_SetDutyCycle
|
|
||||||
00000000 T PWMC_SetFaultMode
|
|
||||||
00000000 T PWMC_SetFaultProtectionValue
|
|
||||||
00000000 T PWMC_SetOverrideValue
|
|
||||||
00000000 T PWMC_SetPeriod
|
|
||||||
00000000 T PWMC_SetSyncChannelUpdatePeriod
|
|
||||||
00000000 T PWMC_SetSyncChannelUpdateUnlock
|
|
||||||
00000000 T PWMC_WriteBuffer
|
|
||||||
0000002c r __FUNCTION__.5778
|
|
||||||
00000043 r __FUNCTION__.5789
|
|
||||||
00000059 r __FUNCTION__.5804
|
|
||||||
00000072 r __FUNCTION__.5815
|
|
||||||
00000087 r __FUNCTION__.5826
|
|
||||||
00000099 r __FUNCTION__.5833
|
|
||||||
000000aa r __FUNCTION__.5915
|
|
||||||
000000c7 r __FUNCTION__.5921
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
rtc.o:
|
|
||||||
00000000 T RTC_ClearSCCR
|
|
||||||
00000000 T RTC_DisableIt
|
|
||||||
00000000 T RTC_EnableIt
|
|
||||||
00000000 T RTC_GetDate
|
|
||||||
00000000 T RTC_GetHourMode
|
|
||||||
00000000 T RTC_GetSR
|
|
||||||
00000000 T RTC_GetTime
|
|
||||||
00000000 T RTC_SetDate
|
|
||||||
00000000 T RTC_SetDateAlarm
|
|
||||||
00000000 T RTC_SetHourMode
|
|
||||||
00000000 T RTC_SetTime
|
|
||||||
00000000 T RTC_SetTimeAlarm
|
|
||||||
00000000 r __FUNCTION__.5775
|
|
||||||
00000010 r __FUNCTION__.5784
|
|
||||||
0000001d r __FUNCTION__.5789
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
rtt.o:
|
|
||||||
00000000 T RTT_EnableIT
|
|
||||||
00000000 T RTT_GetStatus
|
|
||||||
00000000 T RTT_GetTime
|
|
||||||
00000000 T RTT_SetAlarm
|
|
||||||
00000000 T RTT_SetPrescaler
|
|
||||||
00000000 r __FUNCTION__.5782
|
|
||||||
0000000d r __FUNCTION__.5790
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
spi.o:
|
|
||||||
U PMC_EnablePeripheral
|
|
||||||
00000000 T SPI_Configure
|
|
||||||
00000000 T SPI_ConfigureNPCS
|
|
||||||
00000000 T SPI_Disable
|
|
||||||
00000000 T SPI_DisableIt
|
|
||||||
00000000 T SPI_Enable
|
|
||||||
00000000 T SPI_EnableIt
|
|
||||||
00000000 T SPI_GetStatus
|
|
||||||
00000000 T SPI_IsFinished
|
|
||||||
00000000 T SPI_PdcDisableRx
|
|
||||||
00000000 T SPI_PdcDisableTx
|
|
||||||
00000000 T SPI_PdcEnableRx
|
|
||||||
00000000 T SPI_PdcEnableTx
|
|
||||||
00000000 T SPI_PdcSetRx
|
|
||||||
00000000 T SPI_PdcSetTx
|
|
||||||
00000000 T SPI_Read
|
|
||||||
00000000 T SPI_ReadBuffer
|
|
||||||
00000000 T SPI_Write
|
|
||||||
00000000 T SPI_WriteBuffer
|
|
||||||
|
|
||||||
spi_pdc.o:
|
|
||||||
U PMC_DisablePeripheral
|
|
||||||
U PMC_EnablePeripheral
|
|
||||||
00000000 T SPID_Configure
|
|
||||||
00000000 T SPID_ConfigureCS
|
|
||||||
00000000 T SPID_Handler
|
|
||||||
00000000 T SPID_IsBusy
|
|
||||||
00000000 T SPID_SendCommand
|
|
||||||
U SPI_Configure
|
|
||||||
U SPI_ConfigureNPCS
|
|
||||||
U SPI_DisableIt
|
|
||||||
U SPI_Enable
|
|
||||||
U SPI_EnableIt
|
|
||||||
U SPI_PdcDisableRx
|
|
||||||
U SPI_PdcDisableTx
|
|
||||||
U SPI_PdcEnableRx
|
|
||||||
U SPI_PdcEnableTx
|
|
||||||
U SPI_PdcSetRx
|
|
||||||
U SPI_PdcSetTx
|
|
||||||
|
|
||||||
ssc.o:
|
|
||||||
00000000 T SSC_Configure
|
|
||||||
00000000 T SSC_ConfigureReceiver
|
|
||||||
00000000 T SSC_ConfigureTransmitter
|
|
||||||
00000000 T SSC_DisableInterrupts
|
|
||||||
00000000 T SSC_DisableReceiver
|
|
||||||
00000000 T SSC_DisableTransmitter
|
|
||||||
00000000 T SSC_EnableInterrupts
|
|
||||||
00000000 T SSC_EnableReceiver
|
|
||||||
00000000 T SSC_EnableTransmitter
|
|
||||||
00000000 T SSC_Read
|
|
||||||
00000000 T SSC_ReadBuffer
|
|
||||||
00000000 T SSC_Write
|
|
||||||
00000000 T SSC_WriteBuffer
|
|
||||||
|
|
||||||
tc.o:
|
|
||||||
00000000 T TC_Configure
|
|
||||||
00000000 T TC_FindMckDivisor
|
|
||||||
00000000 T TC_Start
|
|
||||||
00000000 T TC_Stop
|
|
||||||
00000000 r __FUNCTION__.5777
|
|
||||||
0000000d r __FUNCTION__.5783
|
|
||||||
00000016 r __FUNCTION__.5789
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
twi.o:
|
|
||||||
00000000 T TWI_ByteReceived
|
|
||||||
00000000 T TWI_ByteSent
|
|
||||||
00000000 T TWI_ConfigureMaster
|
|
||||||
00000000 T TWI_ConfigureSlave
|
|
||||||
00000000 T TWI_DisableIt
|
|
||||||
00000000 T TWI_EnableIt
|
|
||||||
00000000 T TWI_GetMaskedStatus
|
|
||||||
00000000 T TWI_GetStatus
|
|
||||||
00000000 T TWI_ReadByte
|
|
||||||
00000000 T TWI_SendSTOPCondition
|
|
||||||
00000000 T TWI_StartRead
|
|
||||||
00000000 T TWI_StartWrite
|
|
||||||
00000000 T TWI_Stop
|
|
||||||
00000000 T TWI_TransferComplete
|
|
||||||
00000000 T TWI_WriteByte
|
|
||||||
00000000 r __FUNCTION__.6360
|
|
||||||
00000014 r __FUNCTION__.6375
|
|
||||||
00000027 r __FUNCTION__.6379
|
|
||||||
00000030 r __FUNCTION__.6386
|
|
||||||
0000003e r __FUNCTION__.6390
|
|
||||||
0000004b r __FUNCTION__.6395
|
|
||||||
00000059 r __FUNCTION__.6403
|
|
||||||
00000068 r __FUNCTION__.6417
|
|
||||||
00000075 r __FUNCTION__.6422
|
|
||||||
00000083 r __FUNCTION__.6426
|
|
||||||
00000091 r __FUNCTION__.6431
|
|
||||||
000000a5 r __FUNCTION__.6435
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
twid.o:
|
|
||||||
00000000 T TWID_Handler
|
|
||||||
00000000 T TWID_Initialize
|
|
||||||
00000000 T TWID_Read
|
|
||||||
00000000 T TWID_Write
|
|
||||||
U TWI_ByteReceived
|
|
||||||
U TWI_ByteSent
|
|
||||||
U TWI_DisableIt
|
|
||||||
U TWI_EnableIt
|
|
||||||
U TWI_GetMaskedStatus
|
|
||||||
U TWI_ReadByte
|
|
||||||
U TWI_SendSTOPCondition
|
|
||||||
U TWI_StartRead
|
|
||||||
U TWI_StartWrite
|
|
||||||
U TWI_Stop
|
|
||||||
U TWI_TransferComplete
|
|
||||||
U TWI_WriteByte
|
|
||||||
00000000 r __FUNCTION__.6365
|
|
||||||
00000010 r __FUNCTION__.6372
|
|
||||||
0000001d r __FUNCTION__.6385
|
|
||||||
00000027 r __FUNCTION__.6407
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
usart.o:
|
|
||||||
00000000 T USART_Configure
|
|
||||||
00000000 T USART_DisableIt
|
|
||||||
00000000 T USART_EnableIt
|
|
||||||
00000000 T USART_GetChar
|
|
||||||
00000000 T USART_GetStatus
|
|
||||||
00000000 T USART_IsDataAvailable
|
|
||||||
00000000 T USART_IsRxReady
|
|
||||||
00000000 T USART_PutChar
|
|
||||||
00000000 T USART_Read
|
|
||||||
00000000 T USART_ReadBuffer
|
|
||||||
00000000 T USART_SetIrdaFilter
|
|
||||||
00000000 T USART_SetReceiverEnabled
|
|
||||||
00000000 T USART_SetTransmitterEnabled
|
|
||||||
00000000 T USART_Write
|
|
||||||
00000000 T USART_WriteBuffer
|
|
||||||
00000000 r __FUNCTION__.6159
|
|
||||||
U __assert_func
|
|
||||||
|
|
||||||
wdt.o:
|
|
||||||
00000000 T WDT_Disable
|
|
||||||
00000000 T WDT_Enable
|
|
||||||
00000000 T WDT_GetPeriod
|
|
||||||
00000000 T WDT_GetStatus
|
|
||||||
00000000 T WDT_Restart
|
|
||||||
|
|
||||||
core_cm3.o:
|
|
||||||
|
|
||||||
timetick.o:
|
|
||||||
00000000 T GetTickCount
|
|
||||||
00000000 T Sleep
|
|
||||||
00000000 T TimeTick_Configure
|
|
||||||
00000000 T TimeTick_Increment
|
|
||||||
00000000 T Wait
|
|
||||||
00000000 b _dwTickCount
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
#include "Arduino.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* UART objects
|
* UART objects
|
||||||
|
@ -7,8 +8,8 @@ ring_buffer tx_buffer1 = { { 0 }, 0, 0 } ;
|
||||||
ring_buffer rx_buffer2 = { { 0 }, 0, 0 } ;
|
ring_buffer rx_buffer2 = { { 0 }, 0, 0 } ;
|
||||||
ring_buffer tx_buffer2 = { { 0 }, 0, 0 } ;
|
ring_buffer tx_buffer2 = { { 0 }, 0, 0 } ;
|
||||||
|
|
||||||
UARTClass Serial1( &rx_buffer1, &tx_buffer1, UART0, UART0_IRQn, ID_UART0 ) ;
|
UARTClass Serial1( UART0, UART0_IRQn, ID_UART0, &rx_buffer1, &tx_buffer1 ) ;
|
||||||
UARTClass Serial2( &rx_buffer2, &tx_buffer2, UART1, UART1_IRQn, ID_UART1 ) ;
|
UARTClass Serial2( UART1, UART1_IRQn, ID_UART1, &rx_buffer2, &tx_buffer2 ) ;
|
||||||
|
|
||||||
// IT handlers
|
// IT handlers
|
||||||
extern void UART0_IrqHandler( void )
|
extern void UART0_IrqHandler( void )
|
||||||
|
@ -23,7 +24,7 @@ extern void UART1_IrqHandler( void )
|
||||||
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
#if 0
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* USART objects
|
* USART objects
|
||||||
|
@ -33,8 +34,8 @@ ring_buffer tx_buffer3 = { { 0 }, 0, 0 } ;
|
||||||
ring_buffer rx_buffer4 = { { 0 }, 0, 0 } ;
|
ring_buffer rx_buffer4 = { { 0 }, 0, 0 } ;
|
||||||
ring_buffer tx_buffer4 = { { 0 }, 0, 0 } ;
|
ring_buffer tx_buffer4 = { { 0 }, 0, 0 } ;
|
||||||
|
|
||||||
USARTClass Serial3( &rx_buffer3, &tx_buffer3, USART0, USART0_IRQn, ID_USART0 ) ;
|
USARTClass Serial3( USART0, USART0_IRQn, ID_USART0, &rx_buffer3, &tx_buffer3 ) ;
|
||||||
USARTClass Serial4( &rx_buffer4, &tx_buffer4, USART1, USART1_IRQn, ID_USART1 ) ;
|
USARTClass Serial4( USART1, USART1_IRQn, ID_USART1, &rx_buffer4, &tx_buffer4 ) ;
|
||||||
|
|
||||||
// IT handlers
|
// IT handlers
|
||||||
extern void USART0_IrqHandler( void )
|
extern void USART0_IrqHandler( void )
|
||||||
|
@ -46,6 +47,6 @@ extern void USART1_IrqHandler( void )
|
||||||
{
|
{
|
||||||
Serial4.IrqHandler() ;
|
Serial4.IrqHandler() ;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue