atmel-samd: Make UART REPL Arduino Zero specific. Most will use USB REPL.
This commit is contained in:
parent
67372b369e
commit
284d3414e1
@ -148,7 +148,6 @@ SRC_C = \
|
||||
rom_fs.c \
|
||||
samdneopixel.c \
|
||||
storage.c \
|
||||
uart.c \
|
||||
asf/common/services/sleepmgr/samd/sleepmgr.c \
|
||||
asf/common/services/storage/ctrl_access/ctrl_access.c \
|
||||
asf/common/services/usb/class/cdc/device/udi_cdc.c \
|
||||
|
@ -11,8 +11,29 @@
|
||||
#include "board.h"
|
||||
#include "conf_board.h"
|
||||
#include "mpconfigboard.h"
|
||||
#include "asf/sam0/drivers/sercom/usart/usart.h"
|
||||
#include "asf/sam0/drivers/port/port.h"
|
||||
|
||||
extern struct usart_module usart_instance;
|
||||
|
||||
void configure_usart(void)
|
||||
{
|
||||
struct usart_config config_usart;
|
||||
|
||||
usart_get_config_defaults(&config_usart);
|
||||
|
||||
config_usart.baudrate = 115200;
|
||||
config_usart.mux_setting = EDBG_CDC_SERCOM_MUX_SETTING;
|
||||
config_usart.pinmux_pad0 = EDBG_CDC_SERCOM_PINMUX_PAD0;
|
||||
config_usart.pinmux_pad1 = EDBG_CDC_SERCOM_PINMUX_PAD1;
|
||||
config_usart.pinmux_pad2 = EDBG_CDC_SERCOM_PINMUX_PAD2;
|
||||
config_usart.pinmux_pad3 = EDBG_CDC_SERCOM_PINMUX_PAD3;
|
||||
|
||||
while (usart_init(&usart_instance, EDBG_CDC_MODULE, &config_usart) != STATUS_OK) {
|
||||
}
|
||||
usart_enable(&usart_instance);
|
||||
}
|
||||
|
||||
void board_init(void)
|
||||
{
|
||||
/* This function is meant to contain board-specific initialization code
|
||||
@ -28,4 +49,9 @@ void board_init(void)
|
||||
|
||||
port_pin_set_config(MICROPY_HW_LED_RX, &pin_conf);
|
||||
port_pin_set_output_level(MICROPY_HW_LED_RX, true);
|
||||
|
||||
// TODO(tannewt): Switch to proper pyb based UARTs.
|
||||
#ifdef UART_REPL
|
||||
configure_usart();
|
||||
#endif
|
||||
}
|
||||
|
@ -11,12 +11,4 @@
|
||||
#ifndef CONF_BOARD_H
|
||||
#define CONF_BOARD_H
|
||||
|
||||
#define EDBG_CDC_SERCOM_MUX_SETTING USART_RX_3_TX_2_XCK_3
|
||||
#define EDBG_CDC_SERCOM_PINMUX_PAD0 PINMUX_UNUSED
|
||||
#define EDBG_CDC_SERCOM_PINMUX_PAD1 PINMUX_UNUSED
|
||||
#define EDBG_CDC_SERCOM_PINMUX_PAD2 PINMUX_PB22D_SERCOM5_PAD2
|
||||
#define EDBG_CDC_SERCOM_PINMUX_PAD3 PINMUX_PB23D_SERCOM5_PAD3
|
||||
|
||||
#define EDBG_CDC_MODULE SERCOM5
|
||||
|
||||
#endif // CONF_BOARD_H
|
||||
|
@ -24,7 +24,6 @@
|
||||
#include "mpconfigboard.h"
|
||||
#include "modmachine_pin.h"
|
||||
#include "storage.h"
|
||||
#include "uart.h"
|
||||
|
||||
fs_user_mount_t fs_user_mount_flash;
|
||||
|
||||
@ -328,11 +327,6 @@ void samd21_init(void) {
|
||||
#ifdef USB_REPL
|
||||
udc_start();
|
||||
#endif
|
||||
|
||||
// TODO(tannewt): Switch to proper pyb based UARTs.
|
||||
#ifdef UART_REPL
|
||||
configure_usart();
|
||||
#endif
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@ -1,68 +0,0 @@
|
||||
/**
|
||||
* \file
|
||||
*
|
||||
* \brief SAM USART Quick Start
|
||||
*
|
||||
* Copyright (C) 2012-2015 Atmel Corporation. All rights reserved.
|
||||
*
|
||||
* \asf_license_start
|
||||
*
|
||||
* \page License
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright notice,
|
||||
* this list of conditions and the following disclaimer.
|
||||
*
|
||||
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
* this list of conditions and the following disclaimer in the documentation
|
||||
* and/or other materials provided with the distribution.
|
||||
*
|
||||
* 3. The name of Atmel may not be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* 4. This software may only be redistributed and used in connection with an
|
||||
* Atmel microcontroller product.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
|
||||
* EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
|
||||
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||||
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* \asf_license_stop
|
||||
*
|
||||
*/
|
||||
#include "asf/sam0/drivers/sercom/usart/usart.h"
|
||||
#include "asf/sam0/drivers/port/port.h"
|
||||
|
||||
#include "uart.h"
|
||||
|
||||
#include "conf_board.h"
|
||||
|
||||
extern struct usart_module usart_instance;
|
||||
|
||||
void configure_usart(void)
|
||||
{
|
||||
struct usart_config config_usart;
|
||||
|
||||
usart_get_config_defaults(&config_usart);
|
||||
|
||||
config_usart.baudrate = 115200;
|
||||
config_usart.mux_setting = EDBG_CDC_SERCOM_MUX_SETTING;
|
||||
config_usart.pinmux_pad0 = EDBG_CDC_SERCOM_PINMUX_PAD0;
|
||||
config_usart.pinmux_pad1 = EDBG_CDC_SERCOM_PINMUX_PAD1;
|
||||
config_usart.pinmux_pad2 = EDBG_CDC_SERCOM_PINMUX_PAD2;
|
||||
config_usart.pinmux_pad3 = EDBG_CDC_SERCOM_PINMUX_PAD3;
|
||||
|
||||
while (usart_init(&usart_instance, EDBG_CDC_MODULE, &config_usart) != STATUS_OK) {
|
||||
}
|
||||
usart_enable(&usart_instance);
|
||||
}
|
@ -1,33 +0,0 @@
|
||||
/*
|
||||
* This file is part of the Micro Python project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2016 Scott Shawcroft
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __MICROPY_INCLUDED_ATMEL_SAMD_UART_H__
|
||||
#define __MICROPY_INCLUDED_ATMEL_SAMD_UART_H__
|
||||
|
||||
void configure_usart(void);
|
||||
|
||||
#endif // __MICROPY_INCLUDED_ATMEL_SAMD_UART_H__
|
Loading…
x
Reference in New Issue
Block a user