Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 217d741d31 | |||
| f464838ed4 |
+37
-1
@@ -32,7 +32,8 @@
|
||||
#include "dr_util.h"
|
||||
#include "main.h"
|
||||
#include "dr_adc121s051.h"
|
||||
|
||||
#include "led_control.h"
|
||||
#include "app_timer.h"
|
||||
|
||||
/*==============================================================================
|
||||
* 외부 함수 선언부
|
||||
@@ -408,6 +409,9 @@ static int Cmd_mbb(const ParsedCmd *cmd); /* mbb? 6채널 캡처 + 센서 측
|
||||
static int Cmd_mcf(const ParsedCmd *cmd); /* mcf? 피에조 파라미터 읽기 (FDS) */
|
||||
static int Cmd_mcs(const ParsedCmd *cmd); /* mcs? 피에조 파라미터 쓰기 (FDS) */
|
||||
|
||||
/* E. LED 제어 */
|
||||
static int Cmd_mls(const ParsedCmd *cmd); /* mls? LED 상태 설정 (앱 → 기기) */
|
||||
|
||||
|
||||
/* ---- 명령 테이블 ---- */
|
||||
|
||||
@@ -452,6 +456,9 @@ static CmdEntry g_cmd_table[] = {
|
||||
{ "mbb?", true, Cmd_mbb },
|
||||
{ "mcf?", true, Cmd_mcf },
|
||||
{ "mcs?", true, Cmd_mcs },
|
||||
|
||||
/* F. LED 제어 */
|
||||
{ "mls?", true, Cmd_mls },
|
||||
};
|
||||
|
||||
/* 명령 테이블 엔트리 수 (컴파일 타임 계산) */
|
||||
@@ -1194,6 +1201,35 @@ static int Cmd_mcs(const ParsedCmd *cmd)
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief mls? - LED 상태 설정 (앱 → 기기)
|
||||
*
|
||||
* 파라미터: [state(2)] - led_state_t enum 값
|
||||
* 0: OFF, 4: DETACH_WARNING, 5: ALIGN_SEARCHING, 6: ALIGN_COMPLETE
|
||||
* 응답: rls: [state(2)] - 에코
|
||||
*/
|
||||
static int Cmd_mls(const ParsedCmd *cmd)
|
||||
{
|
||||
if (cmd->data_len < 2) {
|
||||
dr_ble_return_1("rls:", 0xFFFF);
|
||||
return 1;
|
||||
}
|
||||
|
||||
uint16_t state;
|
||||
dr_get_u16(cmd, 0, &state);
|
||||
|
||||
if (state > LED_STATE_ERROR) {
|
||||
dr_ble_return_1("rls:", 0xFFFE);
|
||||
return 1;
|
||||
}
|
||||
|
||||
led_set_state((led_state_t)state);
|
||||
dr_ble_return_1("rls:", state);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
/*==============================================================================
|
||||
* 설정: HW/시리얼 넘버 FDS 읽기/쓰기
|
||||
*
|
||||
|
||||
@@ -253,7 +253,7 @@ void led_init(void)
|
||||
void led_set_state(led_state_t state)
|
||||
{
|
||||
if (state >= LED_STATE_COUNT) return;
|
||||
|
||||
|
||||
/* 이전 패턴 중단 */
|
||||
app_timer_stop(m_led_timer);
|
||||
led_all_off();
|
||||
|
||||
@@ -144,8 +144,8 @@
|
||||
#define APP_ADV_DURATION 18000 /* 광고 지속시간: 18000 x 10ms = 3분 → 타임아웃 시 슬립 */
|
||||
#endif
|
||||
|
||||
#define MIN_CONN_INTERVAL MSEC_TO_UNITS(20, UNIT_1_25_MS) /* 최소 연결 간격: 20ms */
|
||||
#define MAX_CONN_INTERVAL MSEC_TO_UNITS(75, UNIT_1_25_MS) /* 최대 연결 간격: 75ms */
|
||||
#define MIN_CONN_INTERVAL MSEC_TO_UNITS(30, UNIT_1_25_MS) /* 최소 연결 간격: 30ms */
|
||||
#define MAX_CONN_INTERVAL MSEC_TO_UNITS(30, UNIT_1_25_MS) /* 최대 연결 간격: 30ms */
|
||||
#define SLAVE_LATENCY 4 /* 슬레이브 지연: 0 (매 연결 이벤트마다 응답) */
|
||||
#define CONN_SUP_TIMEOUT MSEC_TO_UNITS(4000, UNIT_10_MS) /* 연결 감독 타임아웃: 4초 */
|
||||
#define FIRST_CONN_PARAMS_UPDATE_DELAY APP_TIMER_TICKS(5000) /* 첫 파라미터 갱신 요청까지 5초 대기 */
|
||||
|
||||
Reference in New Issue
Block a user