Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
118 changes: 118 additions & 0 deletions boards.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1193,6 +1193,124 @@ electroniccats_bastwan.menu.usb.none=USB_DISABLED
electroniccats_bastwan.menu.usb.none.build.usbcom=USB_DISABLED
electroniccats_bastwan.menu.usb.none.build.pid=0xEB68

# Microchip ATSAMR34 Xplained Pro (S)

samr34xpro.name=ATSAMR34 Xplained Pro
samr34xpro.vid.0=0x03EB
samr34xpro.pid.0=0x2150
samr34xpro.vid.1=0x03EB
samr34xpro.pid.1=0x2150
samr34xpro.vid.2=0x03EB
samr34xpro.pid.2=0x2150
samr34xpro.vid.3=0x03EB
samr34xpro.pid.3=0x2150
samr34xpro.vid.4=0x03EB
samr34xpro.pid.4=0x2150
samr34xpro.vid.5=0x03EB
samr34xpro.pid.5=0x2150
samr34xpro.upload.maximum_size=253952
samr34xpro.build.mcu=cortex-m0plus
samr34xpro.build.mathlib=arm_cortexM0l_math
samr34xpro.build.f_cpu=48000000L
samr34xpro.build.usb_product="ATSAMR34 Xplained Pro"
samr34xpro.build.extra_flags=-D__SAMR34J18B__ {build.usb_flags} -DARM_MATH_CM0PLUS
samr34xpro.build.usb_manufacturer="Microchip"
samr34xpro.build.board=SAMD_ZERO
samr34xpro.build.core=arduino
samr34xpro.build.variant=samr34xpro
samr34xpro.build.variant_system_lib=
samr34xpro.build.vid=0x03EB
samr34xpro.upload.protocol=sam-ba
samr34xpro.bootloader.tool=arduino:openocd
samr34xpro.build.ldscript=flash_256KB.ld
samr34xpro.build.openocdscript=openocd_scripts/SAML21J18B.cfg
samr34xpro.bootloader.file=samr34xpro/bootloader-samr34xpro-v3.4.0.bin
samr34xpro.menu.float.default=Print & String use auto-promoted doubles only
samr34xpro.menu.float.default.build.floatconfig=FLOAT_BOTH_DOUBLES_ONLY
samr34xpro.menu.float.print=Print uses separate singles and doubles
samr34xpro.menu.float.print.build.floatconfig=FLOAT_PRINT_SINGLES_DOUBLES
samr34xpro.menu.float.string=String uses separate singles and doubles
samr34xpro.menu.float.string.build.floatconfig=FLOAT_STRING_SINGLES_DOUBLES
samr34xpro.menu.float.both=Print & String use separate singles and doubles
samr34xpro.menu.float.both.build.floatconfig=FLOAT_BOTH_SINGLES_DOUBLES
samr34xpro.menu.config.disabled=config.h disabled
samr34xpro.menu.config.disabled.build.buildconfig=CONFIG_H_DISABLED
samr34xpro.menu.config.enabled=config.h enabled (mostly code size reductions)
samr34xpro.menu.config.enabled.build.buildconfig=CONFIG_H_ENABLED
samr34xpro.menu.clock.internal_usb=INTERNAL_USB_CALIBRATED_OSCILLATOR
samr34xpro.menu.clock.internal_usb.build.clockconfig=CLOCKCONFIG_INTERNAL_USB
samr34xpro.menu.clock.internal=INTERNAL_OSCILLATOR
samr34xpro.menu.clock.internal.build.clockconfig=CLOCKCONFIG_INTERNAL
samr34xpro.menu.clock.crystal_32k=32KHZ_CRYSTAL
samr34xpro.menu.clock.crystal_32k.build.clockconfig=CLOCKCONFIG_32768HZ_CRYSTAL
samr34xpro.menu.clock.crystal_hs=HIGH_SPEED_CRYSTAL
samr34xpro.menu.clock.crystal_hs.build.clockconfig=CLOCKCONFIG_HS_CRYSTAL
samr34xpro.menu.timer.timer_732Hz=732.4Hz (16-bit)
samr34xpro.menu.timer.timer_732Hz.build.timerconfig=TIMER_732Hz
samr34xpro.menu.timer.timer_366Hz=366.2Hz (16-bit)
samr34xpro.menu.timer.timer_366Hz.build.timerconfig=TIMER_366Hz
samr34xpro.menu.timer.timer_244Hz=244.1Hz (16-bit)
samr34xpro.menu.timer.timer_244Hz.build.timerconfig=TIMER_244Hz
samr34xpro.menu.timer.timer_183Hz=183.1Hz (16-bit)
samr34xpro.menu.timer.timer_183Hz.build.timerconfig=TIMER_183Hz
samr34xpro.menu.timer.timer_146Hz=146.5Hz (16-bit)
samr34xpro.menu.timer.timer_146Hz.build.timerconfig=TIMER_146Hz
samr34xpro.menu.timer.timer_122Hz=122.1Hz (16-bit)
samr34xpro.menu.timer.timer_122Hz.build.timerconfig=TIMER_122Hz
samr34xpro.menu.timer.timer_105Hz=104.6Hz (16-bit)
samr34xpro.menu.timer.timer_105Hz.build.timerconfig=TIMER_105Hz
samr34xpro.menu.timer.timer_81Hz=81.38Hz (16-bit)
samr34xpro.menu.timer.timer_81Hz.build.timerconfig=TIMER_81Hz
samr34xpro.menu.timer.timer_61Hz=61.04Hz (16-bit)
samr34xpro.menu.timer.timer_61Hz.build.timerconfig=TIMER_61Hz
samr34xpro.menu.timer.timer_31Hz=30.52Hz (16-bit)
samr34xpro.menu.timer.timer_31Hz.build.timerconfig=TIMER_31Hz
samr34xpro.menu.timer.timer_187500Hz=187500Hz (8-bit)
samr34xpro.menu.timer.timer_187500Hz.build.timerconfig=TIMER_187500Hz
samr34xpro.menu.timer.timer_93750Hz=93750Hz (8-bit)
samr34xpro.menu.timer.timer_93750Hz.build.timerconfig=TIMER_93750Hz
samr34xpro.menu.timer.timer_62500Hz=62500Hz (8-bit)
samr34xpro.menu.timer.timer_62500Hz.build.timerconfig=TIMER_62500Hz
samr34xpro.menu.timer.timer_37500Hz=37500Hz (8-bit)
samr34xpro.menu.timer.timer_37500Hz.build.timerconfig=TIMER_37500Hz
samr34xpro.menu.timer.timer_20833Hz=20833Hz (8-bit)
samr34xpro.menu.timer.timer_20833Hz.build.timerconfig=TIMER_20833Hz
samr34xpro.menu.timer.timer_12500Hz=12500Hz (8-bit)
samr34xpro.menu.timer.timer_12500Hz.build.timerconfig=TIMER_12500Hz
samr34xpro.menu.timer.timer_7500Hz=7500Hz (8-bit)
samr34xpro.menu.timer.timer_7500Hz.build.timerconfig=TIMER_7500Hz
samr34xpro.menu.timer.timer_4166Hz=4166Hz (8-bit)
samr34xpro.menu.timer.timer_4166Hz.build.timerconfig=TIMER_4166Hz
samr34xpro.menu.timer.timer_2930Hz=2930Hz (8-bit)
samr34xpro.menu.timer.timer_2930Hz.build.timerconfig=TIMER_2930Hz
samr34xpro.menu.timer.timer_1465Hz=1465Hz (8-bit, 16-bit for D51)
samr34xpro.menu.timer.timer_1465Hz.build.timerconfig=TIMER_1465Hz
samr34xpro.menu.bootloader.8kb=8KB_BOOTLOADER
samr34xpro.menu.bootloader.8kb.build.bootloader_size=__8KB_BOOTLOADER__
samr34xpro.menu.bootloader.8kb.build.ldscript_path=linker_scripts/gcc/8KB_Bootloader
samr34xpro.menu.bootloader.8kb.upload.tool=bossac
samr34xpro.menu.bootloader.8kb.upload.use_1200bps_touch=true
samr34xpro.menu.bootloader.8kb.upload.wait_for_upload_port=true
samr34xpro.menu.bootloader.8kb.upload.native_usb=true
samr34xpro.menu.usb.cdc=CDC_ONLY
samr34xpro.menu.usb.cdc.build.usbcom=CDC_ONLY
samr34xpro.menu.usb.cdc.build.pid=0x2150
samr34xpro.menu.usb.cdc_hid=CDC_HID
samr34xpro.menu.usb.cdc_hid.build.usbcom=CDC_HID
samr34xpro.menu.usb.cdc_hid.build.pid=0x2150
samr34xpro.menu.usb.withcdc=WITH_CDC
samr34xpro.menu.usb.withcdc.build.usbcom=WITH_CDC
samr34xpro.menu.usb.withcdc.build.pid=0x2150
samr34xpro.menu.usb.hid=HID_ONLY
samr34xpro.menu.usb.hid.build.usbcom=HID_ONLY
samr34xpro.menu.usb.hid.build.pid=0x2150
samr34xpro.menu.usb.nocdc=WITHOUT_CDC
samr34xpro.menu.usb.nocdc.build.usbcom=WITHOUT_CDC
samr34xpro.menu.usb.nocdc.build.pid=0x2150
samr34xpro.menu.usb.none=USB_DISABLED
samr34xpro.menu.usb.none.build.usbcom=USB_DISABLED
samr34xpro.menu.usb.none.build.pid=0x2150

# Meow Meow Mini based on D11D14A (SOIC-20)
electroniccats_meowmeow_mini.name= Meow Meow Mini
electroniccats_meowmeow_mini.vid.0=0x1209
Expand Down
9 changes: 0 additions & 9 deletions cores/arduino/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -44,15 +44,6 @@ int main( void )
USBDevice.init();
USBDevice.attach();
#endif
#if (SAMR34)
//Init Osiclator and Rf switch
pinMode(RFM_TCX_ON, OUTPUT);
pinMode(RFM_RFSW_ON, OUTPUT);
//Enable Oscilator and Rf switch
digitalWrite(RFM_TCX_ON, HIGH);
digitalWrite(RFM_RFSW_ON, HIGH);
delay(1);
#endif
setup();

for (;;)
Expand Down
11 changes: 11 additions & 0 deletions variants/bastwan/variant.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@


#include "variant.h"
#include "Arduino.h"

/*
* Pins descriptions
Expand Down Expand Up @@ -98,6 +99,16 @@ const PinDescription g_APinDescription[]=

const void* g_apTCInstances[TCC_INST_NUM+TC_INST_NUM]={ TCC0, TCC1, TCC2, TC0, TC1, TC2, TC3, TC4 } ;

void initVariant() {
//Init Osiclator and Rf switch
pinMode(RFM_TCX_ON, OUTPUT);
pinMode(RFM_RFSW_ON, OUTPUT);
//Enable Oscilator and Rf switch
digitalWrite(RFM_TCX_ON, HIGH);
digitalWrite(RFM_RFSW_ON, HIGH);
delay(1);
}

// Multi-serial objects instantiation
SERCOM sercom0( SERCOM0 ) ;
SERCOM sercom1( SERCOM1 ) ;
Expand Down
31 changes: 31 additions & 0 deletions variants/samr34xpro/debug_scripts/SAML21J18B.gdb
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#
# Arduino Zero OpenOCD script.
#
# Copyright (c) 2014-2015 Arduino LLC. All right reserved.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#

# Define 'reset' command
define reset

info reg

break main

# End of 'reset' command
end

target remote | openocd -c "interface cmsis-dap" -c "set CHIPNAME at91saml21j18" -f target/at91samlXX.cfg -c "gdb_port pipe; log_output openocd.log"
Loading