From ead9c00e26c83ff80da96e0df07c8194418f607c Mon Sep 17 00:00:00 2001 From: jhChun Date: Wed, 25 Mar 2026 15:53:56 +0900 Subject: [PATCH] =?UTF-8?q?BLE=20Slave=20Latency=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - main.c: SLAVE_LATENCY 0 -> 4 - 1초 기준 연결 간격 75ms 마다 폴링이 오는데 데이터가 없는 경우 4번 건너뛰어 Radio On 횟수 줄임 - 전력 소모 방지: BLE 연결 중 Radio 절전 --- project/ble_peripheral/ble_app_bladder_patch/main.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/project/ble_peripheral/ble_app_bladder_patch/main.c b/project/ble_peripheral/ble_app_bladder_patch/main.c index fe79feb..8d66e32 100644 --- a/project/ble_peripheral/ble_app_bladder_patch/main.c +++ b/project/ble_peripheral/ble_app_bladder_patch/main.c @@ -156,7 +156,7 @@ #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 SLAVE_LATENCY 0 /* 슬레이브 지연: 0 (매 연결 이벤트마다 응답) */ +#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초 대기 */ #define NEXT_CONN_PARAMS_UPDATE_DELAY APP_TIMER_TICKS(30000) /* 이후 갱신 요청 간격: 30초 */ @@ -1756,6 +1756,10 @@ int main(void) ble_stack_init(); DBG_PRINTF(" stack OK\r\n"); + /* nRF52840 내장 DC-DC 활성화 — SoftDevice 초기화 후 호출 필수 */ + APP_ERROR_CHECK(sd_power_dcdc_mode_set(NRF_POWER_DCDC_ENABLE)); + DBG_PRINTF(" dcdc OK\r\n"); + // PHASE 6.5: 내장 Flash (FDS) - BLE 스택 이후에 초기화해야 함 DBG_PRINTF("[5.5] FDS\r\n"); fs_storage_init(); @@ -1800,7 +1804,7 @@ int main(void) // PHASE 7.7: 피에조 드라이버 초기화 (GPIO/GPIOTE/Timer/PPI + 전원) //dr_piezo_system_init(); - dr_piezo_init(); + dr_piezo_init(); // Piezo 초기화 (Active X) DBG_PRINTF(" piezo OK\r\n"); // PHASE 8: 완료