Progen data refactor

The new format progen = dict() should allow to add more data used by progen.
The target can add tool flags to be overwritten by the default mbed template, or
even inject own template. This might be required for some targets. Therefore we
shall allow thiss.
pull/1563/head
Martin Kojtal 2016-02-24 17:58:53 +00:00
parent 8081c39aba
commit ba6ba1f687
3 changed files with 225 additions and 83 deletions

View File

@ -88,7 +88,7 @@ def export(project_path, project_name, ide, target, destination='/tmp/',
except AttributeError:
pass
if use_progen:
if not ProGenDef(ide).is_supported(TARGET_MAP[target].progen_target):
if not ProGenDef(ide).is_supported(TARGET_MAP[target].progen['target']):
supported = False
else:
if target not in Exporter.TARGETS:

View File

@ -64,7 +64,7 @@ class Exporter(object):
'includes': {
'Include Files': self.resources.headers + self.resources.inc_dirs,
},
'target': [TARGET_MAP[self.target].progen_target],
'target': [TARGET_MAP[self.target].progen['target']],
'macros': self.get_symbols(),
'export_dir': [self.inputDir],
'linker_file': [self.resources.linker_script],

View File

@ -123,7 +123,10 @@ class LPC11C24(LPCTarget):
self.core = "Cortex-M0"
self.extra_labels = ['NXP', 'LPC11XX_11CXX', 'LPC11CXX']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "IAR"]
self.progen_target = 'lpc11c24_301'
self.progen = {
"target":"lpc11c24_301",
}
class LPC1114(LPCTarget):
def __init__(self):
@ -132,7 +135,9 @@ class LPC1114(LPCTarget):
self.extra_labels = ['NXP', 'LPC11XX_11CXX', 'LPC11XX']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "GCC_CR", "IAR"]
self.default_toolchain = "uARM"
self.progen_target = 'lpc1114_102'
self.progen = {
"target":"lpc1114_102",
}
class LPC11U24(LPCTarget):
def __init__(self):
@ -142,7 +147,9 @@ class LPC11U24(LPCTarget):
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "IAR"]
self.default_toolchain = "uARM"
self.detect_code = ["1040"]
self.progen_target = 'lpc11u24_201'
self.progen = {
"target":"lpc11u24_201",
}
class OC_MBUINO(LPC11U24):
def __init__(self):
@ -152,7 +159,9 @@ class OC_MBUINO(LPC11U24):
self.macros = ['TARGET_LPC11U24']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "IAR"]
self.default_toolchain = "uARM"
self.progen_target = 'lpc11u24_201'
self.progen = {
"target":"lpc11u24_201",
}
class LPC11U24_301(LPCTarget):
def __init__(self):
@ -184,7 +193,9 @@ class LPC11U35_401(LPCTarget):
self.extra_labels = ['NXP', 'LPC11UXX']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "GCC_CR", "IAR"]
self.default_toolchain = "uARM"
self.progen_target = 'lpc11u35_401'
self.progen = {
"target":"lpc11u35_401",
}
class LPC11U35_501(LPCTarget):
def __init__(self):
@ -193,8 +204,9 @@ class LPC11U35_501(LPCTarget):
self.extra_labels = ['NXP', 'LPC11UXX', 'MCU_LPC11U35_501']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "GCC_CR" , "IAR"]
self.default_toolchain = "uARM"
self.progen_target ='lpc11u35_501'
self.progen = {
"target":"lpc11u35_501",
}
class LPC11U35_501_IBDAP(LPCTarget):
def __init__(self):
LPCTarget.__init__(self)
@ -249,15 +261,18 @@ class LPC11U68(LPCTarget):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO"]
self.detect_code = ["1168"]
self.progen_target ='lpc11u68'
self.progen = {
"target":"lpc11u68",
}
class LPC1347(LPCTarget):
def __init__(self):
LPCTarget.__init__(self)
self.core = "Cortex-M3"
self.extra_labels = ['NXP', 'LPC13XX']
self.supported_toolchains = ["ARM", "GCC_ARM","IAR"]
self.progen_target = 'lpc1347'
self.progen = {
"target":"lpc1347",
}
class LPC1549(LPCTarget):
def __init__(self):
@ -268,8 +283,9 @@ class LPC1549(LPCTarget):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO"]
self.detect_code = ["1549"]
self.progen_target ='lpc1549'
self.progen = {
"target":"lpc1549",
}
class LPC1768(LPCTarget):
def __init__(self):
LPCTarget.__init__(self)
@ -277,7 +293,9 @@ class LPC1768(LPCTarget):
self.extra_labels = ['NXP', 'LPC176X', 'MBED_LPC1768']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "GCC_CR", "IAR"]
self.detect_code = ["1010"]
self.progen_target = 'mbed-lpc1768'
self.progen = {
"target":"mbed-lpc1768",
}
class ARCH_PRO(LPCTarget):
def __init__(self):
@ -287,7 +305,9 @@ class ARCH_PRO(LPCTarget):
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "GCC_CR", "IAR"]
self.macros = ['TARGET_LPC1768']
self.supported_form_factors = ["ARDUINO"]
self.progen_target ='arch-pro'
self.progen = {
"target":"arch-pro",
}
class UBLOX_C027(LPCTarget):
def __init__(self):
@ -297,7 +317,9 @@ class UBLOX_C027(LPCTarget):
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "GCC_CR", "IAR"]
self.macros = ['TARGET_LPC1768']
self.supported_form_factors = ["ARDUINO"]
self.progen_target ='ublox-c027'
self.progen = {
"target":"ublox-c027",
}
class XBED_LPC1768(LPCTarget):
def __init__(self):
@ -341,7 +363,9 @@ class LPC812(LPCTarget):
self.supported_form_factors = ["ARDUINO"]
self.is_disk_virtual = True
self.detect_code = ["1050"]
self.progen_target = 'lpc812m101'
self.progen = {
"target":"lpc812m101",
}
class LPC824(LPCTarget):
def __init__(self):
@ -352,7 +376,9 @@ class LPC824(LPCTarget):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO"]
self.is_disk_virtual = True
self.progen_target = 'lpc824m201'
self.progen = {
"target":"lpc824m201",
}
class SSCI824(LPCTarget):
def __init__(self):
@ -370,7 +396,9 @@ class LPC4088(LPCTarget):
self.extra_labels = ['NXP', 'LPC408X']
self.supported_toolchains = ["ARM", "GCC_CR", "GCC_ARM", "IAR"]
self.is_disk_virtual = True
self.progen_target = 'lpc4088'
self.progen = {
"target":"lpc4088",
}
def init_hooks(self, hook, toolchain_name):
if toolchain_name in ['ARM_STD', 'ARM_MICRO']:
@ -415,7 +443,9 @@ class LPC4330_M4(LPCTarget):
self.core = "Cortex-M4F"
self.extra_labels = ['NXP', 'LPC43XX', 'LPC4330']
self.supported_toolchains = ["ARM", "GCC_CR", "IAR", "GCC_ARM"]
self.progen_target = 'lpc4330'
self.progen = {
"target":"lpc4330",
}
class LPC4330_M0(LPCTarget):
def __init__(self):
@ -430,7 +460,9 @@ class LPC4337(LPCTarget):
self.core = "Cortex-M4F"
self.extra_labels = ['NXP', 'LPC43XX', 'LPC4337']
self.supported_toolchains = ["ARM"]
self.progen_target = 'lpc4337'
self.progen = {
"target":"lpc4337",
}
class LPC1800(LPCTarget):
def __init__(self):
LPCTarget.__init__(self)
@ -446,8 +478,9 @@ class LPC11U37H_401(LPCTarget):
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "GCC_CR"]
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO"]
self.progen_target ='lpc11u37_401'
self.progen = {
"target":"lpc11u37_401",
}
### Freescale ###
class KL05Z(Target):
@ -459,7 +492,9 @@ class KL05Z(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO"]
self.is_disk_virtual = True
self.progen_target ='frdm-kl05z'
self.progen = {
"target":"frdm-kl05z",
}
class KL25Z(Target):
def __init__(self):
@ -470,7 +505,9 @@ class KL25Z(Target):
self.supported_form_factors = ["ARDUINO"]
self.is_disk_virtual = True
self.detect_code = ["0200"]
self.progen_target ='frdm-kl25z'
self.progen = {
"target":"frdm-kl25z",
}
class KL26Z(Target):
def __init__(self):
@ -489,7 +526,9 @@ class KL43Z(Target):
self.supported_toolchains = ["GCC_ARM", "ARM"]
self.supported_form_factors = ["ARDUINO"]
self.is_disk_virtual = True
self.progen_target ='frdm-kl43z'
self.progen = {
"target":"frdm-kl43z",
}
class KL46Z(Target):
def __init__(self):
@ -500,7 +539,9 @@ class KL46Z(Target):
self.supported_form_factors = ["ARDUINO"]
self.is_disk_virtual = True
self.detect_code = ["0220"]
self.progen_target ='frdm-kl46z'
self.progen = {
"target":"frdm-kl46z",
}
class K20D50M(Target):
def __init__(self):
@ -510,7 +551,9 @@ class K20D50M(Target):
self.supported_toolchains = ["GCC_ARM", "ARM", "IAR"]
self.is_disk_virtual = True
self.detect_code = ["0230"]
self.progen_target = 'frdm-k20d50m'
self.progen = {
"target":"frdm-k20d50m",
}
class TEENSY3_1(Target):
OUTPUT_EXT = 'hex'
@ -522,7 +565,9 @@ class TEENSY3_1(Target):
self.supported_toolchains = ["GCC_ARM", "ARM"]
self.is_disk_virtual = True
self.detect_code = ["0230"]
self.progen_target ='teensy-31'
self.progen = {
"target":"teensy-31",
}
def init_hooks(self, hook, toolchain_name):
if toolchain_name in ['ARM_STD', 'ARM_MICRO', 'GCC_ARM']:
@ -547,7 +592,9 @@ class K22F(Target):
self.supported_form_factors = ["ARDUINO"]
self.is_disk_virtual = True
self.detect_code = ["0201"]
self.progen_target = 'frdm-k22f'
self.progen = {
"target":"frdm-k22f",
}
class K64F(Target):
def __init__(self):
@ -560,7 +607,9 @@ class K64F(Target):
self.is_disk_virtual = True
self.default_toolchain = "ARM"
self.detect_code = ["0240"]
self.progen_target = 'frdm-k64f'
self.progen = {
"target":"frdm-k64f",
}
class MTS_GAMBIT(Target):
def __init__(self):
@ -571,7 +620,9 @@ class MTS_GAMBIT(Target):
self.macros = ["CPU_MK64FN1M0VMD12", "FSL_RTOS_MBED", "TARGET_K64F"]
self.is_disk_virtual = True
self.default_toolchain = "ARM"
self.progen_target ='mts-gambit'
self.progen = {
"target":"mts-gambit",
}
### STMicro ###
@ -584,7 +635,9 @@ class NUCLEO_F030R8(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0725"]
self.progen_target ='nucleo-f030r8'
self.progen = {
"target":"nucleo-f030r8",
}
class NUCLEO_F031K6(Target):
def __init__(self):
@ -595,7 +648,9 @@ class NUCLEO_F031K6(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO"]
self.detect_code = ["0791"]
self.progen_target ='nucleo-f031k6'
self.progen = {
"target":"nucleo-f031k6",
}
class NUCLEO_F042K6(Target):
def __init__(self):
@ -606,7 +661,9 @@ class NUCLEO_F042K6(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO"]
self.detect_code = ["0785"]
self.progen_target ='nucleo-f042k6'
self.progen = {
"target":"nucleo-f042k6",
}
class NUCLEO_F070RB(Target):
def __init__(self):
@ -617,7 +674,9 @@ class NUCLEO_F070RB(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0755"]
self.progen_target ='nucleo-f070rb'
self.progen = {
"target":"nucleo-f070rb",
}
class NUCLEO_F072RB(Target):
def __init__(self):
@ -628,7 +687,9 @@ class NUCLEO_F072RB(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0730"]
self.progen_target ='nucleo-f072rb'
self.progen = {
"target":"nucleo-f072rb",
}
class NUCLEO_F091RC(Target):
def __init__(self):
@ -639,7 +700,9 @@ class NUCLEO_F091RC(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0750"]
self.progen_target ='nucleo-f091rc'
self.progen = {
"target":"nucleo-f091rc",
}
class NUCLEO_F103RB(Target):
def __init__(self):
@ -650,7 +713,9 @@ class NUCLEO_F103RB(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0700"]
self.progen_target ='nucleo-f103rb'
self.progen = {
"target":"nucleo-f103rb",
}
class NUCLEO_F302R8(Target):
def __init__(self):
@ -661,7 +726,9 @@ class NUCLEO_F302R8(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0705"]
self.progen_target ='nucleo-f302r8'
self.progen = {
"target":"nucleo-f302r8",
}
class NUCLEO_F303K8(Target):
def __init__(self):
@ -672,7 +739,9 @@ class NUCLEO_F303K8(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO"]
self.detect_code = ["0775"]
self.progen_target ='nucleo-f303k8'
self.progen = {
"target":"nucleo-f303k8",
}
class NUCLEO_F303RE(Target):
def __init__(self):
@ -683,7 +752,9 @@ class NUCLEO_F303RE(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0745"]
self.progen_target ='nucleo-f303re'
self.progen = {
"target":"nucleo-f303re",
}
class NUCLEO_F334R8(Target):
def __init__(self):
@ -694,7 +765,9 @@ class NUCLEO_F334R8(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0735"]
self.progen_target ='nucleo-f334r8'
self.progen = {
"target":"nucleo-f334r8",
}
class NUCLEO_F401RE(Target):
def __init__(self):
@ -705,7 +778,9 @@ class NUCLEO_F401RE(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0720"]
self.progen_target ='nucleo-f401re'
self.progen = {
"target":"nucleo-f401re",
}
class NUCLEO_F410RB(Target):
def __init__(self):
@ -716,7 +791,9 @@ class NUCLEO_F410RB(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0740"]
self.progen_target ='nucleo-f410rb'
self.progen = {
"target":"",
}
class NUCLEO_F411RE(Target):
def __init__(self):
@ -727,7 +804,9 @@ class NUCLEO_F411RE(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0740"]
self.progen_target ='nucleo-f411re'
self.progen = {
"target":"nucleo-f411re",
}
class ELMO_F411RE(Target):
def __init__(self):
@ -748,7 +827,9 @@ class NUCLEO_F446RE(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0777"]
self.progen_target ='nucleo-f446re'
self.progen = {
"target":"nucleo-f446re",
}
class B96B_F446VE(Target):
def __init__(self):
@ -769,7 +850,9 @@ class NUCLEO_L053R8(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0715"]
self.progen_target ='nucleo-l053r8'
self.progen = {
"target":"nucleo-l053r8",
}
class NUCLEO_L073RZ(Target):
def __init__(self):
@ -780,7 +863,9 @@ class NUCLEO_L073RZ(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0760"]
self.progen_target ='nucleo-l073rz'
self.progen = {
"target":"nucleo-l073rz",
}
class NUCLEO_L152RE(Target):
def __init__(self):
@ -791,7 +876,9 @@ class NUCLEO_L152RE(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0710"]
self.progen_target ='nucleo-l152re'
self.progen = {
"target":"nucleo-l152re",
}
class NUCLEO_L476RG(Target):
def __init__(self):
@ -802,7 +889,9 @@ class NUCLEO_L476RG(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO", "MORPHO"]
self.detect_code = ["0765"]
self.progen_target ='nucleo-l476rg'
self.progen = {
"target":"nucleo-l476rg",
}
class STM32F3XX(Target):
def __init__(self):
@ -827,8 +916,9 @@ class ARCH_MAX(Target):
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM"]
self.supported_form_factors = ["ARDUINO"]
self.macros = ['LSI_VALUE=32000']
self.progen_target ='lpc1768'
self.progen = {
"target":"lpc1768",
}
def program_cycle_s(self):
return 2
@ -864,7 +954,9 @@ class DISCO_F334C8(Target):
self.supported_toolchains = ["ARM", "uARM", "IAR", "GCC_ARM"]
self.default_toolchain = "uARM"
self.detect_code = ["0810"]
self.progen_target ='disco-f334c8'
self.progen = {
"target":"disco-f334c8",
}
class DISCO_F407VG(Target):
def __init__(self):
@ -872,7 +964,9 @@ class DISCO_F407VG(Target):
self.core = "Cortex-M4F"
self.extra_labels = ['STM', 'STM32F4', 'STM32F407', 'STM32F407VG']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM"]
self.progen_target ='disco-f407vg'
self.progen = {
"target":"disco-f407vg",
}
self.default_toolchain = "ARM"
class DISCO_F429ZI(Target):
@ -882,7 +976,9 @@ class DISCO_F429ZI(Target):
self.extra_labels = ['STM', 'STM32F4', 'STM32F429', 'STM32F429ZI']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "IAR"]
self.default_toolchain = "uARM"
self.progen_target ='disco-f429zi'
self.progen = {
"target":"",
}
class DISCO_F469NI(Target):
def __init__(self):
@ -893,7 +989,9 @@ class DISCO_F469NI(Target):
self.default_toolchain = "uARM"
self.supported_form_factors = ["ARDUINO"]
self.detect_code = ["0788"]
self.progen_target ='disco-f469ni'
self.progen = {
"target":"disco-f469ni",
}
class DISCO_L053C8(Target):
def __init__(self):
@ -902,7 +1000,9 @@ class DISCO_L053C8(Target):
self.extra_labels = ['STM', 'STM32L0', 'STM32L053C8']
self.supported_toolchains = ["ARM", "uARM", "IAR", "GCC_ARM"]
self.default_toolchain = "uARM"
self.progen_target ='disco-l053c8'
self.progen = {
"target":"disco-l053c8",
}
class DISCO_F746NG(Target):
def __init__(self):
@ -911,7 +1011,9 @@ class DISCO_F746NG(Target):
self.extra_labels = ['STM', 'STM32F7', 'STM32F746', 'STM32F746NG']
self.supported_toolchains = ["ARM", "uARM", "IAR", "GCC_ARM"]
self.detect_code = ["0815"]
self.progen_target ='disco-f746ng'
self.progen = {
"target":"disco-f746ng",
}
class DISCO_L476VG(Target):
def __init__(self):
@ -921,7 +1023,9 @@ class DISCO_L476VG(Target):
self.supported_toolchains = ["ARM", "uARM", "IAR", "GCC_ARM"]
self.default_toolchain = "uARM"
self.detect_code = ["0820"]
self.progen_target ='disco-l476vg'
self.progen = {
"target":"disco-l476vg",
}
class MTS_MDOT_F405RG(Target):
def __init__(self):
@ -932,7 +1036,9 @@ class MTS_MDOT_F405RG(Target):
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "IAR"]
self.is_disk_virtual = True
self.default_toolchain = "ARM"
self.progen_target ='mts-mdot-f405rg'
self.progen = {
"target":"mts-mdot-f405rg",
}
class MTS_MDOT_F411RE(Target):
def __init__(self):
@ -942,7 +1048,9 @@ class MTS_MDOT_F411RE(Target):
self.macros = ['HSE_VALUE=26000000', 'OS_CLOCK=96000000', 'USE_PLL_HSE_EXTC=0', 'VECT_TAB_OFFSET=0x00010000']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "IAR"]
self.default_toolchain = "ARM"
self.progen_target = 'mts-mdot-f411re'
self.progen = {
"target":"mts-mdot-f411re",
}
def init_hooks(self, hook, toolchain_name):
if toolchain_name in ['GCC_ARM', 'ARM_STD', 'ARM_MICRO']:
@ -984,7 +1092,9 @@ class MTS_DRAGONFLY_F411RE(Target):
self.macros = ['HSE_VALUE=26000000', 'VECT_TAB_OFFSET=0x08010000']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "IAR"]
self.default_toolchain = "ARM"
self.progen_target = 'mts-dragonfly-f411re'
self.progen = {
"target":"mts-dragonfly-f411re",
}
def init_hooks(self, hook, toolchain_name):
if toolchain_name in ['GCC_ARM', 'ARM_STD', 'ARM_MICRO']:
@ -1026,8 +1136,9 @@ class MOTE_L152RC(Target):
self.supported_toolchains = ["ARM", "uARM", "IAR", "GCC_ARM"]
self.default_toolchain = "uARM"
self.detect_code = ["4100"]
self.progen_target ='stm32l151rc'
self.progen = {
"target":"stm32l151rc",
}
class DISCO_F401VC(Target):
def __init__(self):
Target.__init__(self)
@ -1053,7 +1164,9 @@ class NZ32_SC151(Target):
self.extra_labels = ['STM', 'STM32L1', 'STM32L151RC']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM"]
self.default_toolchain = "uARM"
self.progen_target ='stm32l151rc'
self.progen = {
"target":"stm32l151rc",
}
# After flashing device, how long to delay until we assume program is running
def program_cycle_s(self):
return 1.5
@ -1281,8 +1394,9 @@ class NRF51822(MCU_NRF51_16K):
MCU_NRF51_16K.__init__(self)
self.extra_labels += ['NRF51822', 'NRF51822_MKIT']
self.macros += ['TARGET_NRF51822_MKIT']
self.progen_target ='mkit'
self.progen = {
"target":"mkit",
}
class NRF51822_BOOT(MCU_NRF51_16K_BOOT):
def __init__(self):
MCU_NRF51_16K_BOOT.__init__(self)
@ -1299,7 +1413,9 @@ class ARCH_BLE(MCU_NRF51_16K):
def __init__(self):
MCU_NRF51_16K.__init__(self)
self.supported_form_factors = ["ARDUINO"]
self.progen_target ='arch-ble'
self.progen = {
"target":"arch-ble",
}
class ARCH_BLE_BOOT(MCU_NRF51_16K_BOOT):
def __init__(self):
@ -1339,7 +1455,9 @@ class ARCH_LINK_OTA(MCU_NRF51_16K_OTA):
class SEEED_TINY_BLE(MCU_NRF51_16K):
def __init__(self):
MCU_NRF51_16K.__init__(self)
self.progen_target ='seed-tinyble'
self.progen = {
"target":"seed-tinyble",
}
class SEEED_TINY_BLE_BOOT(MCU_NRF51_16K_BOOT):
def __init__(self):
@ -1357,8 +1475,9 @@ class HRM1017(MCU_NRF51_16K):
def __init__(self):
MCU_NRF51_16K.__init__(self)
self.macros += ['TARGET_NRF_LFCLK_RC']
self.progen_target ='hrm1017'
self.progen = {
"target":"hrm1017",
}
class HRM1017_BOOT(MCU_NRF51_16K_BOOT):
def __init__(self):
MCU_NRF51_16K_BOOT.__init__(self)
@ -1375,7 +1494,9 @@ class RBLAB_NRF51822(MCU_NRF51_16K):
def __init__(self):
MCU_NRF51_16K.__init__(self)
self.supported_form_factors = ["ARDUINO"]
self.progen_target ='rblab-nrf51822'
self.progen = {
"target":"rblab-nrf51822",
}
class RBLAB_NRF51822_BOOT(MCU_NRF51_16K_BOOT):
def __init__(self):
@ -1432,7 +1553,9 @@ class DELTA_DFCM_NNN40(MCU_NRF51_32K):
MCU_NRF51_32K.__init__(self)
self.supported_toolchains = ["ARM", "GCC_ARM"]
self.macros += ['TARGET_NRF_LFCLK_RC']
self.progen_target ='dfcm-nnn40'
self.progen = {
"target":"dfcm-nnn40",
}
def program_cycle_s(self):
return 10
@ -1459,7 +1582,9 @@ class NRF51_DK(MCU_NRF51_32K):
MCU_NRF51_32K.__init__(self)
self.supported_toolchains = ["ARM", "GCC_ARM"]
self.supported_form_factors = ["ARDUINO"]
self.progen_target ='nrf51-dk'
self.progen = {
"target":"nrf51-dk",
}
class NRF51_DK_BOOT(MCU_NRF51_32K_BOOT):
def __init__(self):
@ -1480,7 +1605,9 @@ class NRF51_DK_OTA(MCU_NRF51_32K_OTA):
class NRF51_DONGLE(MCU_NRF51_32K):
def __init__(self):
MCU_NRF51_32K.__init__(self)
self.progen_target ='nrf51-dongle'
self.progen = {
"target":"nrf51-dongle",
}
class NRF51_DONGLE_BOOT(MCU_NRF51_32K_BOOT):
def __init__(self):
@ -1633,6 +1760,9 @@ class RZ_A1H(Target):
self.supported_toolchains = ["ARM", "GCC_ARM", "IAR"]
self.supported_form_factors = ["ARDUINO"]
self.default_toolchain = "ARM"
self.progen = {
"target": "gr-peach",
}
def program_cycle_s(self):
return 2
@ -1648,7 +1778,9 @@ class MAXWSNENV(Target):
self.macros = ['__SYSTEM_HFX=24000000']
self.supported_toolchains = ["GCC_ARM", "IAR", "ARM"]
self.default_toolchain = "ARM"
self.progen_target ='maxwsnenv'
self.progen = {
"target": "maxwsnenv",
}
class MAX32600MBED(Target):
def __init__(self):
@ -1658,7 +1790,9 @@ class MAX32600MBED(Target):
self.macros = ['__SYSTEM_HFX=24000000']
self.supported_toolchains = ["GCC_ARM", "IAR", "ARM"]
self.default_toolchain = "ARM"
self.progen_target ='max32600mbed'
self.progen = {
"target": "max32600mbed",
}
### Silicon Labs ###
@ -1757,7 +1891,9 @@ class SAMR21G18A(Target):
self.macros = ['__SAMR21G18A__', 'I2C_MASTER_CALLBACK_MODE=true', 'EXTINT_CALLBACK_MODE=true', 'USART_CALLBACK_MODE=true', 'TC_ASYNC=true']
self.supported_toolchains = ["GCC_ARM", "ARM", "uARM"]
self.default_toolchain = "ARM"
self.progen_target ='samr21g18a'
self.progen = {
"target":"samr21g18a",
}
class SAMD21J18A(Target):
def __init__(self):
@ -1767,7 +1903,9 @@ class SAMD21J18A(Target):
self.macros = ['__SAMD21J18A__', 'I2C_MASTER_CALLBACK_MODE=true', 'EXTINT_CALLBACK_MODE=true', 'USART_CALLBACK_MODE=true', 'TC_ASYNC=true']
self.supported_toolchains = ["GCC_ARM", "ARM", "uARM"]
self.default_toolchain = "ARM"
self.progen_target ='samd21j18a'
self.progen = {
"target":"samd21j18a",
}
class SAMD21G18A(Target):
def __init__(self):
@ -1777,7 +1915,9 @@ class SAMD21G18A(Target):
self.macros = ['__SAMD21G18A__', 'I2C_MASTER_CALLBACK_MODE=true', 'EXTINT_CALLBACK_MODE=true', 'USART_CALLBACK_MODE=true', 'TC_ASYNC=true']
self.supported_toolchains = ["GCC_ARM", "ARM", "uARM"]
self.default_toolchain = "ARM"
self.progen_target ='samd21g18a'
self.progen = {
"target":"samd21g18a",
}
class SAML21J18A(Target):
def __init__(self):
@ -1787,7 +1927,9 @@ class SAML21J18A(Target):
self.macros = ['__SAML21J18A__', 'I2C_MASTER_CALLBACK_MODE=true', 'EXTINT_CALLBACK_MODE=true', 'USART_CALLBACK_MODE=true', 'TC_ASYNC=true']
self.supported_toolchains = ["GCC_ARM", "ARM", "uARM"]
self.default_toolchain = "ARM"
self.progen_target ='samr21j18a'
self.progen = {
"target":"samr21j18a",
}
# Get a single instance for each target
TARGETS = [