2026-03-09 09:39:24 +00:00
|
|
|
|
#include "kt.h"
|
2026-03-23 06:20:03 +00:00
|
|
|
|
#include "app_task.h"
|
|
|
|
|
|
#include "avctp_user.h"
|
2026-03-09 09:39:24 +00:00
|
|
|
|
|
2026-03-23 06:20:03 +00:00
|
|
|
|
extern void kt_auto_mute_pa_init(void);
|
|
|
|
|
|
|
|
|
|
|
|
static u16 led_timer_id = 0;
|
|
|
|
|
|
static int led_cnt = 0;
|
|
|
|
|
|
|
|
|
|
|
|
/* static int mute_test = 0;
|
|
|
|
|
|
static u8 mute_test_flag = 0; */
|
2026-03-09 09:39:24 +00:00
|
|
|
|
|
|
|
|
|
|
void kt_boot_init(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
// mute pin
|
|
|
|
|
|
gpio_set_pull_up(KT_CFG_MUTE_PIN, 0);
|
|
|
|
|
|
gpio_set_pull_down(KT_CFG_MUTE_PIN, 0);
|
|
|
|
|
|
gpio_set_direction(KT_CFG_MUTE_PIN, 0);
|
2026-03-23 06:20:03 +00:00
|
|
|
|
gpio_set_output_value(KT_CFG_MUTE_PIN, 0);
|
2026-03-09 09:39:24 +00:00
|
|
|
|
PA_MUTE();
|
|
|
|
|
|
// b led pin
|
|
|
|
|
|
gpio_set_pull_up(KT_CFG_B_LED_PIN, 0);
|
|
|
|
|
|
gpio_set_pull_down(KT_CFG_B_LED_PIN, 0);
|
|
|
|
|
|
gpio_set_direction(KT_CFG_B_LED_PIN, 0);
|
|
|
|
|
|
KT_CFG_B_LED_OFF();
|
|
|
|
|
|
// r led pin
|
|
|
|
|
|
gpio_set_pull_up(KT_CFG_R_LED_PIN, 0);
|
|
|
|
|
|
gpio_set_pull_down(KT_CFG_R_LED_PIN, 0);
|
|
|
|
|
|
gpio_set_direction(KT_CFG_R_LED_PIN, 0);
|
|
|
|
|
|
KT_CFG_R_LED_OFF();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-03-13 09:16:59 +00:00
|
|
|
|
extern void eff_file_switch(u8 *path);
|
2026-03-09 09:39:24 +00:00
|
|
|
|
/**
|
2026-03-13 09:16:59 +00:00
|
|
|
|
* @brief 切换EQ
|
|
|
|
|
|
* @param eq_idx EQ索引,0:NORMAL 1:LP
|
2026-03-09 09:39:24 +00:00
|
|
|
|
*/
|
2026-03-13 09:16:59 +00:00
|
|
|
|
void kt_eq_switch_to(u8 eq_idx)
|
2026-03-09 09:39:24 +00:00
|
|
|
|
{
|
2026-03-13 09:16:59 +00:00
|
|
|
|
if (eq_idx == KT_EQ_IDX_LP)
|
2026-03-09 09:39:24 +00:00
|
|
|
|
{
|
2026-03-23 06:20:03 +00:00
|
|
|
|
// LP EQ
|
|
|
|
|
|
// strcpy(EFF_CFG_FILE_NAME, EQ_FILE_BT);
|
2026-03-13 09:16:59 +00:00
|
|
|
|
printf("kt_eq_switch_to: LP\n");
|
|
|
|
|
|
eff_file_switch(EQ_FILE_LP);
|
2026-03-09 09:39:24 +00:00
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
2026-03-23 06:20:03 +00:00
|
|
|
|
// BT EQ
|
|
|
|
|
|
// strcpy(EFF_CFG_FILE_NAME, EQ_FILE_BT);
|
2026-03-13 09:16:59 +00:00
|
|
|
|
printf("kt_eq_switch_to: BT\n");
|
|
|
|
|
|
eff_file_switch(EQ_FILE_BT);
|
|
|
|
|
|
}
|
2026-03-09 09:39:24 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
2026-03-23 06:20:03 +00:00
|
|
|
|
static void led_timer_callback(void *priv)
|
|
|
|
|
|
{
|
|
|
|
|
|
/* mute_test++;
|
|
|
|
|
|
if (mute_test > 100)
|
|
|
|
|
|
{
|
|
|
|
|
|
mute_test = 0;
|
|
|
|
|
|
if (mute_test_flag)
|
|
|
|
|
|
{
|
|
|
|
|
|
PA_MUTE();
|
|
|
|
|
|
mute_test_flag = 0;
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
PA_UNMUTE();
|
|
|
|
|
|
mute_test_flag = 1;
|
|
|
|
|
|
}
|
|
|
|
|
|
} */
|
|
|
|
|
|
|
|
|
|
|
|
if (app_get_curr_task() == APP_BT_TASK)
|
|
|
|
|
|
{
|
|
|
|
|
|
KT_CFG_R_LED_OFF();
|
|
|
|
|
|
if (get_bt_connect_status() >= BT_STATUS_CONNECTING)
|
|
|
|
|
|
{
|
|
|
|
|
|
KT_CFG_B_LED_ON();
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
led_cnt++;
|
|
|
|
|
|
if (led_cnt < 4)
|
|
|
|
|
|
{
|
|
|
|
|
|
KT_CFG_B_LED_ON();
|
|
|
|
|
|
}
|
|
|
|
|
|
else if (led_cnt < 8)
|
|
|
|
|
|
{
|
|
|
|
|
|
KT_CFG_B_LED_OFF();
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
led_cnt = 0;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
else if (app_get_curr_task() == APP_MUSIC_TASK)
|
|
|
|
|
|
{
|
|
|
|
|
|
KT_CFG_R_LED_OFF();
|
|
|
|
|
|
led_cnt++;
|
|
|
|
|
|
if (led_cnt < 10)
|
|
|
|
|
|
{
|
|
|
|
|
|
KT_CFG_B_LED_ON();
|
|
|
|
|
|
}
|
|
|
|
|
|
else if (led_cnt < 20)
|
|
|
|
|
|
{
|
|
|
|
|
|
KT_CFG_B_LED_OFF();
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
led_cnt = 0;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
KT_CFG_R_LED_ON();
|
|
|
|
|
|
KT_CFG_B_LED_OFF();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
static void start_led_timer(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (led_timer_id)
|
|
|
|
|
|
{
|
|
|
|
|
|
sys_timer_del(led_timer_id);
|
|
|
|
|
|
led_timer_id = 0;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
sys_timer_add(NULL, led_timer_callback, 50);
|
|
|
|
|
|
}
|
2026-03-09 09:39:24 +00:00
|
|
|
|
|
|
|
|
|
|
void kt_init(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
printf("kt_init\n");
|
2026-03-23 06:20:03 +00:00
|
|
|
|
kt_auto_mute_pa_init();
|
|
|
|
|
|
start_led_timer();
|
|
|
|
|
|
|
|
|
|
|
|
//gpio_set_output_value(KT_CFG_MUTE_PIN, 1);
|
2026-03-09 09:39:24 +00:00
|
|
|
|
}
|