2022-04-01 17:00:18 +00:00
|
|
|
/********************************************************************************************************
|
|
|
|
* @file board_glc002p.h
|
|
|
|
*
|
|
|
|
* @brief This is the header file for mini5in1 glc002p
|
|
|
|
*
|
|
|
|
* @author Zigbee Group
|
|
|
|
* @date 2021
|
|
|
|
*
|
|
|
|
* @par Copyright (c) 2021, Telink Semiconductor (Shanghai) Co., Ltd. ("TELINK")
|
|
|
|
*
|
|
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
* you may not use this file except in compliance with the License.
|
|
|
|
* You may obtain a copy of the License at
|
|
|
|
*
|
|
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
*
|
|
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
* See the License for the specific language governing permissions and
|
|
|
|
* limitations under the License.
|
|
|
|
*******************************************************************************************************/
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
/* Enable C linkage for C++ Compilers: */
|
|
|
|
#if defined(__cplusplus)
|
2022-04-01 17:14:59 +00:00
|
|
|
extern "C"
|
|
|
|
{
|
2022-04-01 17:00:18 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
/*******************************************************************************************************
|
|
|
|
*********************TLSR8258F512ET32 32 Pins: Start*****************************************************
|
|
|
|
*******************************************************************************************************/
|
2022-04-01 17:14:59 +00:00
|
|
|
// Option Button
|
|
|
|
#define BUTTON_OPT GPIO_PB7
|
|
|
|
#define PB7_FUNC AS_GPIO
|
|
|
|
#define PB7_OUTPUT_ENABLE 0
|
|
|
|
#define PB7_INPUT_ENABLE 1
|
|
|
|
#define PULL_WAKEUP_SRC_PB7 PM_PIN_PULLUP_10K
|
2022-04-01 17:00:18 +00:00
|
|
|
|
|
|
|
// Factory reset button
|
2022-04-01 17:14:59 +00:00
|
|
|
#define BUTTON_RESET GPIO_PC0
|
|
|
|
#define PC0_FUNC AS_GPIO
|
|
|
|
#define PC0_OUTPUT_ENABLE 0
|
|
|
|
#define PC0_INPUT_ENABLE 1
|
|
|
|
#define PULL_WAKEUP_SRC_PC0 PM_PIN_PULLUP_10K
|
2022-04-01 17:00:18 +00:00
|
|
|
|
|
|
|
// LED load Output Mapping
|
2022-04-01 17:14:59 +00:00
|
|
|
#define LED_B GPIO_PC2 // PWM0
|
|
|
|
#define LED_G GPIO_PC3 // PWM1
|
|
|
|
#define LED_R GPIO_PC4 // PWM2
|
|
|
|
#define LED_C GPIO_PD2 // PWM3
|
|
|
|
#define LED_W GPIO_PB4 // PWM4
|
|
|
|
|
|
|
|
#define PWM_B_CHANNEL 0 // PWM0
|
|
|
|
#define PWM_B_CHANNEL_SET() \
|
|
|
|
do \
|
|
|
|
{ \
|
|
|
|
gpio_set_func(LED_B, AS_PWM0); \
|
|
|
|
} while (0)
|
|
|
|
|
|
|
|
#define PWM_G_CHANNEL 1 // PWM1
|
|
|
|
#define PWM_G_CHANNEL_SET() \
|
|
|
|
do \
|
|
|
|
{ \
|
|
|
|
gpio_set_func(LED_G, AS_PWM1); \
|
|
|
|
} while (0)
|
|
|
|
|
|
|
|
#define PWM_R_CHANNEL 2 // PWM2
|
|
|
|
#define PWM_R_CHANNEL_SET() \
|
|
|
|
do \
|
|
|
|
{ \
|
|
|
|
gpio_set_func(LED_R, AS_PWM2); \
|
|
|
|
} while (0)
|
|
|
|
|
|
|
|
#define PWM_C_CHANNEL 3 // PWM3
|
|
|
|
#define PWM_C_CHANNEL_SET() \
|
|
|
|
do \
|
|
|
|
{ \
|
|
|
|
gpio_set_func(LED_C, AS_PWM3); \
|
|
|
|
} while (0)
|
|
|
|
|
|
|
|
#define PWM_W_CHANNEL 4 // PWM4
|
|
|
|
#define PWM_W_CHANNEL_SET() \
|
|
|
|
do \
|
|
|
|
{ \
|
|
|
|
gpio_set_func(LED_W, AS_PWM4); \
|
|
|
|
} while (0)
|
|
|
|
|
|
|
|
#define R_LIGHT_PWM_CHANNEL PWM_R_CHANNEL
|
|
|
|
#define G_LIGHT_PWM_CHANNEL PWM_G_CHANNEL
|
|
|
|
#define B_LIGHT_PWM_CHANNEL PWM_B_CHANNEL
|
|
|
|
#define COOL_LIGHT_PWM_CHANNEL PWM_C_CHANNEL
|
|
|
|
#define WARM_LIGHT_PWM_CHANNEL PWM_W_CHANNEL
|
|
|
|
|
|
|
|
#define R_LIGHT_PWM_SET() PWM_R_CHANNEL_SET()
|
|
|
|
#define G_LIGHT_PWM_SET() PWM_G_CHANNEL_SET()
|
|
|
|
#define B_LIGHT_PWM_SET() PWM_B_CHANNEL_SET()
|
|
|
|
#define COOL_LIGHT_PWM_SET() PWM_C_CHANNEL_SET()
|
|
|
|
#define WARM_LIGHT_PWM_SET() PWM_W_CHANNEL_SET()
|
2022-04-01 17:00:18 +00:00
|
|
|
|
|
|
|
// On-Board LED Definitions for Mini 5in1
|
2022-04-01 17:14:59 +00:00
|
|
|
#define OB_LED_R GPIO_PA0
|
|
|
|
#define PA0_FUNC AS_GPIO
|
|
|
|
#define PA0_OUTPUT_ENABLE 1
|
|
|
|
#define PA0_INPUT_ENABLE 0
|
2022-04-01 17:00:18 +00:00
|
|
|
|
2022-04-01 17:14:59 +00:00
|
|
|
#define OB_LED_G GPIO_PA1
|
|
|
|
#define PA1_FUNC AS_GPIO
|
|
|
|
#define PA1_OUTPUT_ENABLE 1
|
|
|
|
#define PA1_INPUT_ENABLE 0
|
2022-04-01 17:00:18 +00:00
|
|
|
|
2022-04-01 17:14:59 +00:00
|
|
|
#define OB_LED_B GPIO_PB1
|
|
|
|
#define PB1_FUNC AS_GPIO
|
|
|
|
#define PB1_OUTPUT_ENABLE 1
|
|
|
|
#define PB1_INPUT_ENABLE 0
|
2022-04-01 17:00:18 +00:00
|
|
|
|
2022-04-01 17:14:59 +00:00
|
|
|
#define LED_STATUS_R OB_LED_R
|
|
|
|
#define LED_STATUS_G OB_LED_G
|
|
|
|
#define LED_STATUS_B OB_LED_B
|
2022-04-01 17:00:18 +00:00
|
|
|
|
|
|
|
// UART
|
|
|
|
#if ZBHCI_UART
|
2022-04-01 17:14:59 +00:00
|
|
|
#error please configure the uart PIN!!!!!!
|
2022-04-01 17:00:18 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
// DEBUG
|
|
|
|
#if UART_PRINTF_MODE
|
2022-04-01 17:14:59 +00:00
|
|
|
#define DEBUG_INFO_TX_PIN GPIO_PC4 // print
|
2022-04-01 17:00:18 +00:00
|
|
|
#endif
|
|
|
|
|
2022-04-01 17:14:59 +00:00
|
|
|
enum
|
|
|
|
{
|
|
|
|
VK_SW1 = 0x01,
|
|
|
|
VK_SW2 = 0x02
|
|
|
|
};
|
|
|
|
|
|
|
|
#define KB_MAP_NORMAL \
|
|
|
|
{ \
|
|
|
|
{ \
|
|
|
|
VK_SW1, \
|
|
|
|
}, \
|
|
|
|
{ \
|
|
|
|
VK_SW2, \
|
|
|
|
}, \
|
|
|
|
}
|
|
|
|
|
|
|
|
#define KB_MAP_NUM KB_MAP_NORMAL
|
|
|
|
#define KB_MAP_FN KB_MAP_NORMAL
|
|
|
|
|
|
|
|
#define KB_DRIVE_PINS \
|
|
|
|
{ \
|
|
|
|
NULL \
|
|
|
|
}
|
|
|
|
#define KB_SCAN_PINS \
|
|
|
|
{ \
|
|
|
|
BUTTON_OPT, BUTTON_RESET \
|
|
|
|
}
|
2022-04-01 17:00:18 +00:00
|
|
|
|
|
|
|
/* Disable C linkage for C++ Compilers: */
|
|
|
|
#if defined(__cplusplus)
|
|
|
|
}
|
|
|
|
#endif
|