This module contains SAMD21 BSP APIs implementation.
Copyright (c) 2017-2019 Microchip Technology Inc. and its subsidiaries.
#include "common/include/nm_common.h"
Data Structures | |
struct | tstrTimer |
struct | tstrWakeTimer |
Macros | |
#define | BSP_MIN(x, y) ((x)>(y)?(y):(x)) |
#define | DEBOUNCE_TIME (40/TICK_RES) |
#define | LONG_PRESS_TIME (1500/TICK_RES) |
#define | SW1_LINE |
#define | SW1_MUX |
#define | SW1_PIN |
Functions | |
static void | _tcc_callback_to_change_duty_cycle (struct tcc_module *const module_inst) |
static void | _tcc_configurable_timer_callback (struct tcc_module *const module_inst) |
static void | btn_isr (void) |
static void | btn_poll (void) |
Static functions. More... | |
static void | configurable_timer_init (uint32_t u32Period) |
void | nm_bsp_app_configurable_timer_init (uint32_t u32Period) |
sint8 | nm_bsp_app_deinit (void) |
sint8 | nm_bsp_app_init (void) |
void | nm_bsp_btn_init (tpfNmBspBtnPress pfBtnCb) |
void | nm_bsp_start_1ms_timer (tpfNmBspTimerCb pfCb) |
void | nm_bsp_start_configurable_timer (tpfNmBspTimerCb pfCb) |
void | nm_bsp_start_timer (tpfNmBspTimerCb pfCb, uint32 u32Period) |
void | nm_bsp_stop_1ms_timer (void) |
void | nm_bsp_stop_configurable_timer (void) |
void | nm_bsp_stop_timer (void) |
Start 20ms timer. More... | |
void | nm_bsp_uart_send (const uint8 *pu8Buf, uint16 u16Sz) |
static void | timer0_init (void) |
Variables | |
struct tcc_module | configurable_tcc |
static tpfNmBspBtnPress | gpfBtns |
static tstrTimer | gstrConfigurableTimer |
static tstrTimer | gstrTimer1ms |
static tstrTimer | gstrTimer20ms |
static uint16 | gu16Btn1Cnt |
static uint16 | gu16Btn2Cnt |
uint32 | gu32Jiffies1ms |
Global variables. More... | |
uint32 | gu32Jiffies20ms |
Extern global variables. More... | |
static uint8 | gu8BtnIfg |
struct tcc_module | tcc_instance |
#define BSP_MIN | ( | x, | |
y | |||
) | ((x)>(y)?(y):(x)) |
Referenced by spi_flash_write().
#define DEBOUNCE_TIME (40/TICK_RES) |
Referenced by btn_poll().
#define LONG_PRESS_TIME (1500/TICK_RES) |
Referenced by btn_poll().
#define SW1_LINE |
#define SW1_MUX |
#define SW1_PIN |
|
static |
References btn_poll(), gu32Jiffies1ms, gu32Jiffies20ms, NM_BSP_TIME_MSEC, tstrTimer::pfCb, tstrWakeTimer::strTimer, TICK_RES, TICK_RES_SLEEP, tstrTimer::u32Period, tstrTimer::u32Timeout, and tstrWakeTimer::u8Enabled.
Referenced by timer0_init().
|
static |
References tstrTimer::pfCb.
Referenced by configurable_timer_init().
|
static |
References EXTINT_CALLBACK_TYPE_DETECT, extint_chan_disable_callback(), gu8BtnIfg, and SW1.
Referenced by nm_bsp_btn_init().
|
static |
Static functions.
References DEBOUNCE_TIME, EXTINT_CALLBACK_TYPE_DETECT, extint_chan_enable_callback(), gpfBtns, gu16Btn1Cnt, gu16Btn2Cnt, gu8BtnIfg, LONG_PRESS_TIME, port_pin_get_input_level(), SW1, and SW2.
Referenced by _tcc_callback_to_change_duty_cycle().
|
static |
[setup_change_config]
[setup_register_callback]
References _tcc_configurable_timer_callback(), configurable_tcc, tcc_config::counter, M2M_DBG, tcc_counter_config::period, TCC_CALLBACK_OVERFLOW, tcc_enable(), tcc_get_config_defaults(), tcc_init(), and tcc_register_callback().
Referenced by nm_bsp_app_configurable_timer_init().
void nm_bsp_app_configurable_timer_init | ( | uint32_t | u32Period | ) |
sint8 nm_bsp_app_deinit | ( | void | ) |
void nm_bsp_btn_init | ( | tpfNmBspBtnPress | pfBtnCb | ) |
Referenced by app_main().
void nm_bsp_start_1ms_timer | ( | tpfNmBspTimerCb | pfCb | ) |
Referenced by IperfIncrementTimerUse().
void nm_bsp_start_configurable_timer | ( | tpfNmBspTimerCb | pfCb | ) |
void nm_bsp_start_timer | ( | tpfNmBspTimerCb | pfCb, |
uint32 | u32Period | ||
) |
void nm_bsp_stop_1ms_timer | ( | void | ) |
Referenced by IperfDecrementTimerUse().
void nm_bsp_stop_configurable_timer | ( | void | ) |
nm_bsp_stop_timer | ( | void | ) |
Start 20ms timer.
Start periodic timer.
Stop 20ms timer.
Referenced by app_ble_wifi_provisioning(), ble_bat_handle_disconnect_event(), ble_bat_handle_paired_event(), ble_heart_rate_handle_disconnect_event(), ble_heart_rate_handle_paired_event(), led_clear(), led_flash(), and wifi_connect_timeout().
|
static |
[setup_change_config]
[setup_register_callback]
References _tcc_callback_to_change_duty_cycle(), tcc_counter_config::clock_prescaler, tcc_config::counter, tcc_counter_config::period, tcc_counter_config::reload_action, TCC_CLOCK_PRESCALER_DIV64, tcc_enable(), tcc_enable_callback(), tcc_get_config_defaults(), tcc_init(), tcc_instance, tcc_register_callback(), and TCC_RELOAD_ACTION_GCLK.
Referenced by nm_bsp_app_init().
struct tcc_module configurable_tcc |
Referenced by configurable_timer_init(), nm_bsp_start_configurable_timer(), and nm_bsp_stop_configurable_timer().
|
static |
Referenced by btn_poll(), and nm_bsp_btn_init().
|
static |
|
static |
|
static |
|
static |
Referenced by btn_poll(), and nm_bsp_btn_init().
|
static |
Referenced by btn_poll(), and nm_bsp_btn_init().
uint32 gu32Jiffies1ms |
Global variables.
Referenced by _tcc_callback_to_change_duty_cycle(), platform_cmd_cmpl_wait(), and platform_event_wait().
uint32 gu32Jiffies20ms |
Extern global variables.
Referenced by _tcc_callback_to_change_duty_cycle().
|
static |
Referenced by btn_isr(), btn_poll(), and nm_bsp_btn_init().
struct tcc_module tcc_instance |