mirror of
https://github.com/oopuuu/zTC1.git
synced 2025-12-20 00:43:22 +08:00
修复mico-sdk错误
This commit is contained in:
@@ -1 +1 @@
|
||||
# This file needs to be customized to your MCU and is intentionally left blank
|
||||
# This file needs to be customized to your MCU and is intentionally left blank
|
||||
|
||||
@@ -1 +1 @@
|
||||
# This file needs to be customized to your MCU and is intentionally left blank
|
||||
# This file needs to be customized to your MCU and is intentionally left blank
|
||||
|
||||
@@ -51,45 +51,45 @@
|
||||
* The file is automatically generated and will be re-written when
|
||||
* running the ASF driver selector tool. Any changes will be discarded.
|
||||
*/
|
||||
|
||||
// From module: CPU specific features
|
||||
#include <mega_reset_cause.h>
|
||||
|
||||
// From module: Delay routines
|
||||
#include <delay.h>
|
||||
|
||||
// From module: GPIO - General purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: IOPORT - General purpose I/O service
|
||||
#include <ioport.h>
|
||||
|
||||
// From module: Interrupt management - megaAVR and tinyAVR implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEGA compiler driver
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - MEGARF implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - MEGA RF A1 implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: USART - Serial interface - MEGARF implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart_megarf.h>
|
||||
|
||||
// From module: CPU specific features
|
||||
#include <mega_reset_cause.h>
|
||||
|
||||
// From module: Delay routines
|
||||
#include <delay.h>
|
||||
|
||||
// From module: GPIO - General purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: IOPORT - General purpose I/O service
|
||||
#include <ioport.h>
|
||||
|
||||
// From module: Interrupt management - megaAVR and tinyAVR implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEGA compiler driver
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - MEGARF implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - MEGA RF A1 implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: USART - Serial interface - MEGARF implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart_megarf.h>
|
||||
|
||||
#endif // ASF_H
|
||||
|
||||
@@ -51,45 +51,45 @@
|
||||
* The file is automatically generated and will be re-written when
|
||||
* running the ASF driver selector tool. Any changes will be discarded.
|
||||
*/
|
||||
|
||||
// From module: CPU specific features
|
||||
#include <mega_reset_cause.h>
|
||||
|
||||
// From module: Delay routines
|
||||
#include <delay.h>
|
||||
|
||||
// From module: GPIO - General purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: IOPORT - General purpose I/O service
|
||||
#include <ioport.h>
|
||||
|
||||
// From module: Interrupt management - megaAVR and tinyAVR implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEGA compiler driver
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - MEGARF implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - MEGA RF A1 implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: USART - Serial interface - MEGARF implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart_megarf.h>
|
||||
|
||||
// From module: CPU specific features
|
||||
#include <mega_reset_cause.h>
|
||||
|
||||
// From module: Delay routines
|
||||
#include <delay.h>
|
||||
|
||||
// From module: GPIO - General purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: IOPORT - General purpose I/O service
|
||||
#include <ioport.h>
|
||||
|
||||
// From module: Interrupt management - megaAVR and tinyAVR implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEGA compiler driver
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - MEGARF implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - MEGA RF A1 implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: USART - Serial interface - MEGARF implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart_megarf.h>
|
||||
|
||||
#endif // ASF_H
|
||||
|
||||
@@ -51,45 +51,45 @@
|
||||
* The file is automatically generated and will be re-written when
|
||||
* running the ASF driver selector tool. Any changes will be discarded.
|
||||
*/
|
||||
|
||||
// From module: CPU specific features
|
||||
#include <mega_reset_cause.h>
|
||||
|
||||
// From module: Delay routines
|
||||
#include <delay.h>
|
||||
|
||||
// From module: GPIO - General purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: IOPORT - General purpose I/O service
|
||||
#include <ioport.h>
|
||||
|
||||
// From module: Interrupt management - megaAVR and tinyAVR implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEGA compiler driver
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - MEGARF implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - MEGA RF A1 implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: USART - Serial interface - MEGARF implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart_megarf.h>
|
||||
|
||||
// From module: CPU specific features
|
||||
#include <mega_reset_cause.h>
|
||||
|
||||
// From module: Delay routines
|
||||
#include <delay.h>
|
||||
|
||||
// From module: GPIO - General purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: IOPORT - General purpose I/O service
|
||||
#include <ioport.h>
|
||||
|
||||
// From module: Interrupt management - megaAVR and tinyAVR implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEGA compiler driver
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - MEGARF implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - MEGA RF A1 implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: USART - Serial interface - MEGARF implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart_megarf.h>
|
||||
|
||||
#endif // ASF_H
|
||||
|
||||
@@ -51,45 +51,45 @@
|
||||
* The file is automatically generated and will be re-written when
|
||||
* running the ASF driver selector tool. Any changes will be discarded.
|
||||
*/
|
||||
|
||||
// From module: CPU specific features
|
||||
#include <mega_reset_cause.h>
|
||||
|
||||
// From module: Delay routines
|
||||
#include <delay.h>
|
||||
|
||||
// From module: GPIO - General purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: IOPORT - General purpose I/O service
|
||||
#include <ioport.h>
|
||||
|
||||
// From module: Interrupt management - megaAVR and tinyAVR implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEGA compiler driver
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - MEGARF implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - MEGA RF A1 implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: USART - Serial interface - MEGARF implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart_megarf.h>
|
||||
|
||||
// From module: CPU specific features
|
||||
#include <mega_reset_cause.h>
|
||||
|
||||
// From module: Delay routines
|
||||
#include <delay.h>
|
||||
|
||||
// From module: GPIO - General purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: IOPORT - General purpose I/O service
|
||||
#include <ioport.h>
|
||||
|
||||
// From module: Interrupt management - megaAVR and tinyAVR implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEGA compiler driver
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - MEGARF implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - MEGA RF A1 implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: USART - Serial interface - MEGARF implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart_megarf.h>
|
||||
|
||||
#endif // ASF_H
|
||||
|
||||
@@ -1,54 +1,54 @@
|
||||
/**
|
||||
* \file
|
||||
*
|
||||
* \brief SAM3/SAM4 Sleep manager implementation.
|
||||
*
|
||||
* 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
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
|
||||
*/
|
||||
|
||||
#include <compiler.h>
|
||||
#include <sleepmgr.h>
|
||||
|
||||
#if defined(CONFIG_SLEEPMGR_ENABLE) || defined(__DOXYGEN__)
|
||||
|
||||
uint8_t sleepmgr_locks[SLEEPMGR_NR_OF_MODES];
|
||||
|
||||
#endif /* CONFIG_SLEEPMGR_ENABLE */
|
||||
/**
|
||||
* \file
|
||||
*
|
||||
* \brief SAM3/SAM4 Sleep manager implementation.
|
||||
*
|
||||
* 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
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
|
||||
*/
|
||||
|
||||
#include <compiler.h>
|
||||
#include <sleepmgr.h>
|
||||
|
||||
#if defined(CONFIG_SLEEPMGR_ENABLE) || defined(__DOXYGEN__)
|
||||
|
||||
uint8_t sleepmgr_locks[SLEEPMGR_NR_OF_MODES];
|
||||
|
||||
#endif /* CONFIG_SLEEPMGR_ENABLE */
|
||||
|
||||
@@ -1,136 +1,136 @@
|
||||
/**
|
||||
* \file
|
||||
*
|
||||
* \brief SAM3/SAM4 Sleep manager implementation.
|
||||
*
|
||||
* 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
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
|
||||
*/
|
||||
|
||||
#ifndef SAM_SLEEPMGR_INCLUDED
|
||||
#define SAM_SLEEPMGR_INCLUDED
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <compiler.h>
|
||||
#include <conf_sleepmgr.h>
|
||||
#include <sleep.h>
|
||||
#include <interrupt.h>
|
||||
|
||||
/**
|
||||
* \weakgroup sleepmgr_group
|
||||
* @{
|
||||
*/
|
||||
#if (SAMG51 || SAMG53 || SAMG54)
|
||||
enum sleepmgr_mode {
|
||||
//! Active mode.
|
||||
SLEEPMGR_ACTIVE = 0,
|
||||
/*! Wait mode, wakeup fast (in 3ms).
|
||||
* Potential Wake Up sources: fast startup events */
|
||||
SLEEPMGR_WAIT_FAST,
|
||||
/*! Wait mode.
|
||||
* Potential Wake Up sources: fast startup events */
|
||||
SLEEPMGR_WAIT,
|
||||
|
||||
SLEEPMGR_NR_OF_MODES,
|
||||
};
|
||||
|
||||
#else
|
||||
enum sleepmgr_mode {
|
||||
//! Active mode.
|
||||
SLEEPMGR_ACTIVE = 0,
|
||||
/*! WFE sleep mode.
|
||||
* Potential Wake Up sources:
|
||||
* fast startup events (USB, RTC, RTT, WKUPs),
|
||||
* interrupt, and events. */
|
||||
SLEEPMGR_SLEEP_WFE,
|
||||
/*! WFI sleep mode.
|
||||
* Potential Wake Up sources: fast startup events and interrupt. */
|
||||
SLEEPMGR_SLEEP_WFI,
|
||||
/*! Wait mode, wakeup fast (in 3ms).
|
||||
* XTAL is not disabled when sleep.
|
||||
* Potential Wake Up sources: fast startup events */
|
||||
SLEEPMGR_WAIT_FAST,
|
||||
/*! Wait mode.
|
||||
* Potential Wake Up sources: fast startup events */
|
||||
SLEEPMGR_WAIT,
|
||||
//! Backup mode. Potential Wake Up sources: WKUPs, SM, RTT, RTC.
|
||||
SLEEPMGR_BACKUP,
|
||||
|
||||
SLEEPMGR_NR_OF_MODES,
|
||||
};
|
||||
#endif
|
||||
|
||||
/**
|
||||
* \internal
|
||||
* \name Internal arrays
|
||||
* @{
|
||||
*/
|
||||
#if defined(CONFIG_SLEEPMGR_ENABLE) || defined(__DOXYGEN__)
|
||||
//! Sleep mode lock counters
|
||||
extern uint8_t sleepmgr_locks[];
|
||||
#endif /* CONFIG_SLEEPMGR_ENABLE */
|
||||
//! @}
|
||||
|
||||
|
||||
static inline void sleepmgr_sleep(const enum sleepmgr_mode sleep_mode)
|
||||
{
|
||||
Assert(sleep_mode != SLEEPMGR_ACTIVE);
|
||||
#ifdef CONFIG_SLEEPMGR_ENABLE
|
||||
cpu_irq_disable();
|
||||
|
||||
// Atomically enable the global interrupts and enter the sleep mode.
|
||||
pmc_sleep(sleep_mode);
|
||||
#else
|
||||
UNUSED(sleep_mode);
|
||||
cpu_irq_enable();
|
||||
#endif /* CONFIG_SLEEPMGR_ENABLE */
|
||||
|
||||
}
|
||||
|
||||
//! @}
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* SAM_SLEEPMGR_INCLUDED */
|
||||
/**
|
||||
* \file
|
||||
*
|
||||
* \brief SAM3/SAM4 Sleep manager implementation.
|
||||
*
|
||||
* 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
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
|
||||
*/
|
||||
|
||||
#ifndef SAM_SLEEPMGR_INCLUDED
|
||||
#define SAM_SLEEPMGR_INCLUDED
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <compiler.h>
|
||||
#include <conf_sleepmgr.h>
|
||||
#include <sleep.h>
|
||||
#include <interrupt.h>
|
||||
|
||||
/**
|
||||
* \weakgroup sleepmgr_group
|
||||
* @{
|
||||
*/
|
||||
#if (SAMG51 || SAMG53 || SAMG54)
|
||||
enum sleepmgr_mode {
|
||||
//! Active mode.
|
||||
SLEEPMGR_ACTIVE = 0,
|
||||
/*! Wait mode, wakeup fast (in 3ms).
|
||||
* Potential Wake Up sources: fast startup events */
|
||||
SLEEPMGR_WAIT_FAST,
|
||||
/*! Wait mode.
|
||||
* Potential Wake Up sources: fast startup events */
|
||||
SLEEPMGR_WAIT,
|
||||
|
||||
SLEEPMGR_NR_OF_MODES,
|
||||
};
|
||||
|
||||
#else
|
||||
enum sleepmgr_mode {
|
||||
//! Active mode.
|
||||
SLEEPMGR_ACTIVE = 0,
|
||||
/*! WFE sleep mode.
|
||||
* Potential Wake Up sources:
|
||||
* fast startup events (USB, RTC, RTT, WKUPs),
|
||||
* interrupt, and events. */
|
||||
SLEEPMGR_SLEEP_WFE,
|
||||
/*! WFI sleep mode.
|
||||
* Potential Wake Up sources: fast startup events and interrupt. */
|
||||
SLEEPMGR_SLEEP_WFI,
|
||||
/*! Wait mode, wakeup fast (in 3ms).
|
||||
* XTAL is not disabled when sleep.
|
||||
* Potential Wake Up sources: fast startup events */
|
||||
SLEEPMGR_WAIT_FAST,
|
||||
/*! Wait mode.
|
||||
* Potential Wake Up sources: fast startup events */
|
||||
SLEEPMGR_WAIT,
|
||||
//! Backup mode. Potential Wake Up sources: WKUPs, SM, RTT, RTC.
|
||||
SLEEPMGR_BACKUP,
|
||||
|
||||
SLEEPMGR_NR_OF_MODES,
|
||||
};
|
||||
#endif
|
||||
|
||||
/**
|
||||
* \internal
|
||||
* \name Internal arrays
|
||||
* @{
|
||||
*/
|
||||
#if defined(CONFIG_SLEEPMGR_ENABLE) || defined(__DOXYGEN__)
|
||||
//! Sleep mode lock counters
|
||||
extern uint8_t sleepmgr_locks[];
|
||||
#endif /* CONFIG_SLEEPMGR_ENABLE */
|
||||
//! @}
|
||||
|
||||
|
||||
static inline void sleepmgr_sleep(const enum sleepmgr_mode sleep_mode)
|
||||
{
|
||||
Assert(sleep_mode != SLEEPMGR_ACTIVE);
|
||||
#ifdef CONFIG_SLEEPMGR_ENABLE
|
||||
cpu_irq_disable();
|
||||
|
||||
// Atomically enable the global interrupts and enter the sleep mode.
|
||||
pmc_sleep(sleep_mode);
|
||||
#else
|
||||
UNUSED(sleep_mode);
|
||||
cpu_irq_enable();
|
||||
#endif /* CONFIG_SLEEPMGR_ENABLE */
|
||||
|
||||
}
|
||||
|
||||
//! @}
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* SAM_SLEEPMGR_INCLUDED */
|
||||
|
||||
@@ -51,56 +51,56 @@
|
||||
* The file is automatically generated and will be re-written when
|
||||
* running the ASF driver selector tool. Any changes will be discarded.
|
||||
*/
|
||||
|
||||
// From module: Compiler abstraction layer and code utilities
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: FLASH Controller Double-Word (FLASHCDW)
|
||||
#include <flashcdw.h>
|
||||
|
||||
// From module: GPIO - General-Purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: Interrupt management - UC3 implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEMBAG Memory Bag Allocator
|
||||
#include <membag.h>
|
||||
|
||||
// From module: PM Power Manager - UC3 L0 implementation
|
||||
#include <power_clocks_lib.h>
|
||||
#include <sleep.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: SCIF System Control Interface - UC3L implementation
|
||||
#include <scif_uc3l.h>
|
||||
|
||||
// From module: Sleep manager - UC3 implementation
|
||||
#include <sleepmgr.h>
|
||||
#include <uc3/sleepmgr.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - UC3 implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - UC3 L0 implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: UC3-L0 Xplained
|
||||
#include <led.h>
|
||||
|
||||
// From module: USART - Serial interface - UC3 implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart.h>
|
||||
|
||||
// From module: Compiler abstraction layer and code utilities
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: FLASH Controller Double-Word (FLASHCDW)
|
||||
#include <flashcdw.h>
|
||||
|
||||
// From module: GPIO - General-Purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: Interrupt management - UC3 implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEMBAG Memory Bag Allocator
|
||||
#include <membag.h>
|
||||
|
||||
// From module: PM Power Manager - UC3 L0 implementation
|
||||
#include <power_clocks_lib.h>
|
||||
#include <sleep.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: SCIF System Control Interface - UC3L implementation
|
||||
#include <scif_uc3l.h>
|
||||
|
||||
// From module: Sleep manager - UC3 implementation
|
||||
#include <sleepmgr.h>
|
||||
#include <uc3/sleepmgr.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - UC3 implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - UC3 L0 implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: UC3-L0 Xplained
|
||||
#include <led.h>
|
||||
|
||||
// From module: USART - Serial interface - UC3 implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart.h>
|
||||
|
||||
#endif // ASF_H
|
||||
|
||||
@@ -51,56 +51,56 @@
|
||||
* The file is automatically generated and will be re-written when
|
||||
* running the ASF driver selector tool. Any changes will be discarded.
|
||||
*/
|
||||
|
||||
// From module: Compiler abstraction layer and code utilities
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: FLASH Controller Double-Word (FLASHCDW)
|
||||
#include <flashcdw.h>
|
||||
|
||||
// From module: GPIO - General-Purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: Interrupt management - UC3 implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEMBAG Memory Bag Allocator
|
||||
#include <membag.h>
|
||||
|
||||
// From module: PM Power Manager - UC3 L0 implementation
|
||||
#include <power_clocks_lib.h>
|
||||
#include <sleep.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: SCIF System Control Interface - UC3L implementation
|
||||
#include <scif_uc3l.h>
|
||||
|
||||
// From module: Sleep manager - UC3 implementation
|
||||
#include <sleepmgr.h>
|
||||
#include <uc3/sleepmgr.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - UC3 implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - UC3 L0 implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: UC3-L0 Xplained
|
||||
#include <led.h>
|
||||
|
||||
// From module: USART - Serial interface - UC3 implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart.h>
|
||||
|
||||
// From module: Compiler abstraction layer and code utilities
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: FLASH Controller Double-Word (FLASHCDW)
|
||||
#include <flashcdw.h>
|
||||
|
||||
// From module: GPIO - General-Purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: Interrupt management - UC3 implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEMBAG Memory Bag Allocator
|
||||
#include <membag.h>
|
||||
|
||||
// From module: PM Power Manager - UC3 L0 implementation
|
||||
#include <power_clocks_lib.h>
|
||||
#include <sleep.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: SCIF System Control Interface - UC3L implementation
|
||||
#include <scif_uc3l.h>
|
||||
|
||||
// From module: Sleep manager - UC3 implementation
|
||||
#include <sleepmgr.h>
|
||||
#include <uc3/sleepmgr.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - UC3 implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - UC3 L0 implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: UC3-L0 Xplained
|
||||
#include <led.h>
|
||||
|
||||
// From module: USART - Serial interface - UC3 implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart.h>
|
||||
|
||||
#endif // ASF_H
|
||||
|
||||
@@ -51,59 +51,59 @@
|
||||
* The file is automatically generated and will be re-written when
|
||||
* running the ASF driver selector tool. Any changes will be discarded.
|
||||
*/
|
||||
|
||||
// From module: CPU specific features
|
||||
#include <ccp.h>
|
||||
#include <xmega_reset_cause.h>
|
||||
|
||||
// From module: GPIO - General purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: IOPORT - General purpose I/O service
|
||||
#include <ioport.h>
|
||||
|
||||
// From module: Interrupt management - XMEGA implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEMBAG Memory Bag Allocator
|
||||
#include <membag.h>
|
||||
|
||||
// From module: PMIC - Programmable Multi-level Interrupt Controller
|
||||
#include <pmic.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: Sleep Controller driver
|
||||
#include <sleep.h>
|
||||
|
||||
// From module: Sleep manager - XMEGA A/AU/B/D implementation
|
||||
#include <sleepmgr.h>
|
||||
#include <xmega/sleepmgr.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - XMEGA implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - XMEGA A1/A3/A3B/A4/D/E implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: USART - Serial interface - XMEGA implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart.h>
|
||||
|
||||
// From module: XMEGA compiler driver
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: XMEGA-A1 Xplained LED support enabled
|
||||
#include <led.h>
|
||||
|
||||
// From module: CPU specific features
|
||||
#include <ccp.h>
|
||||
#include <xmega_reset_cause.h>
|
||||
|
||||
// From module: GPIO - General purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: IOPORT - General purpose I/O service
|
||||
#include <ioport.h>
|
||||
|
||||
// From module: Interrupt management - XMEGA implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEMBAG Memory Bag Allocator
|
||||
#include <membag.h>
|
||||
|
||||
// From module: PMIC - Programmable Multi-level Interrupt Controller
|
||||
#include <pmic.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: Sleep Controller driver
|
||||
#include <sleep.h>
|
||||
|
||||
// From module: Sleep manager - XMEGA A/AU/B/D implementation
|
||||
#include <sleepmgr.h>
|
||||
#include <xmega/sleepmgr.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - XMEGA implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - XMEGA A1/A3/A3B/A4/D/E implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: USART - Serial interface - XMEGA implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart.h>
|
||||
|
||||
// From module: XMEGA compiler driver
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: XMEGA-A1 Xplained LED support enabled
|
||||
#include <led.h>
|
||||
|
||||
#endif // ASF_H
|
||||
|
||||
@@ -51,59 +51,59 @@
|
||||
* The file is automatically generated and will be re-written when
|
||||
* running the ASF driver selector tool. Any changes will be discarded.
|
||||
*/
|
||||
|
||||
// From module: CPU specific features
|
||||
#include <ccp.h>
|
||||
#include <xmega_reset_cause.h>
|
||||
|
||||
// From module: GPIO - General purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: IOPORT - General purpose I/O service
|
||||
#include <ioport.h>
|
||||
|
||||
// From module: Interrupt management - XMEGA implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEMBAG Memory Bag Allocator
|
||||
#include <membag.h>
|
||||
|
||||
// From module: PMIC - Programmable Multi-level Interrupt Controller
|
||||
#include <pmic.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: Sleep Controller driver
|
||||
#include <sleep.h>
|
||||
|
||||
// From module: Sleep manager - XMEGA A/AU/B/D implementation
|
||||
#include <sleepmgr.h>
|
||||
#include <xmega/sleepmgr.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - XMEGA implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - XMEGA A1/A3/A3B/A4/D/E implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: USART - Serial interface - XMEGA implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart.h>
|
||||
|
||||
// From module: XMEGA compiler driver
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: XMEGA-A1 Xplained LED support enabled
|
||||
#include <led.h>
|
||||
|
||||
// From module: CPU specific features
|
||||
#include <ccp.h>
|
||||
#include <xmega_reset_cause.h>
|
||||
|
||||
// From module: GPIO - General purpose Input/Output
|
||||
#include <gpio.h>
|
||||
|
||||
// From module: Generic board support
|
||||
#include <board.h>
|
||||
|
||||
// From module: Generic components of unit test framework
|
||||
#include <unit_test/suite.h>
|
||||
|
||||
// From module: IOPORT - General purpose I/O service
|
||||
#include <ioport.h>
|
||||
|
||||
// From module: Interrupt management - XMEGA implementation
|
||||
#include <interrupt.h>
|
||||
|
||||
// From module: MEMBAG Memory Bag Allocator
|
||||
#include <membag.h>
|
||||
|
||||
// From module: PMIC - Programmable Multi-level Interrupt Controller
|
||||
#include <pmic.h>
|
||||
|
||||
// From module: Part identification macros
|
||||
#include <parts.h>
|
||||
|
||||
// From module: Sleep Controller driver
|
||||
#include <sleep.h>
|
||||
|
||||
// From module: Sleep manager - XMEGA A/AU/B/D implementation
|
||||
#include <sleepmgr.h>
|
||||
#include <xmega/sleepmgr.h>
|
||||
|
||||
// From module: Standard serial I/O (stdio) - XMEGA implementation
|
||||
#include <stdio_serial.h>
|
||||
|
||||
// From module: System Clock Control - XMEGA A1/A3/A3B/A4/D/E implementation
|
||||
#include <sysclk.h>
|
||||
|
||||
// From module: USART - Serial interface - XMEGA implementation
|
||||
#include <serial.h>
|
||||
|
||||
// From module: USART - Universal Synchronous/Asynchronous Receiver/Transmitter
|
||||
#include <usart.h>
|
||||
|
||||
// From module: XMEGA compiler driver
|
||||
#include <compiler.h>
|
||||
#include <status_codes.h>
|
||||
|
||||
// From module: XMEGA-A1 Xplained LED support enabled
|
||||
#include <led.h>
|
||||
|
||||
#endif // ASF_H
|
||||
|
||||
Reference in New Issue
Block a user