- Piezo 6ch 측정 + 센서(배터리, IMU, 온도) 측정: mbb 명령어 추가
- Flash Memory Piezo 측정 파라미터 추가 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -278,7 +278,7 @@ char HW_NO[HW_NO_LENGTH]; /* 하드웨어 번호 (FDS
|
||||
bool bond_data_delete; /* 본딩 데이터 삭제 요청 플래그 */
|
||||
uint32_t m_life_cycle; /* 디바이스 수명 사이클 카운터 */
|
||||
uint8_t resetCount = 0; /* 통신 타임아웃 카운터 (리셋 감지용) */
|
||||
bool info4; /* 추가 정보(배터리/온도/IMU) 포함 측정 플래그 */
|
||||
bool info4; /* 센서 측정 정보(배터리/IMU/온도) 포함 측정 플래그 */
|
||||
uint8_t m_reset_status; /* 리셋 상태 코드 (1=정상, 2=SW리셋, 5=보안리셋, 10=본딩완료) */
|
||||
|
||||
/*==============================================================================
|
||||
@@ -318,10 +318,13 @@ static void power_hold_init(void)
|
||||
*/
|
||||
static void power_control_handler(on_off_cont_t device_power_st)
|
||||
{
|
||||
if (device_power_st == OFF) {
|
||||
if (device_power_st == OFF)
|
||||
{
|
||||
nrf_gpio_pin_clear(POWER_HOLD); /* P0.8 LOW → 전원 래치 해제 → 전원 차단 */
|
||||
DBG_PRINTF("[PWR] OFF\r\n");
|
||||
} else if (device_power_st == ON) {
|
||||
}
|
||||
else if (device_power_st == ON)
|
||||
{
|
||||
nrf_gpio_pin_set(POWER_HOLD); /* P0.8 HIGH → 전원 유지 */
|
||||
DBG_PRINTF("[PWR] ON\r\n");
|
||||
}
|
||||
@@ -404,7 +407,8 @@ static void load_flash_config(void)
|
||||
m_need_save_defaults = false;
|
||||
|
||||
/* 하드웨어 번호 — 비어있으면 기본값 채움 */
|
||||
if (m_config.hw_no[0] == 0 || m_config.hw_no[0] == (char)0xFF) {
|
||||
if (m_config.hw_no[0] == 0 || m_config.hw_no[0] == (char)0xFF)
|
||||
{
|
||||
memset(m_config.hw_no, 0, HW_NO_LENGTH);
|
||||
memcpy(m_config.hw_no, HARDWARE_VERSION, strlen(HARDWARE_VERSION));
|
||||
DBG_PRINTF("[CFG] HW empty, set default: %s\r\n", HARDWARE_VERSION);
|
||||
@@ -412,7 +416,8 @@ static void load_flash_config(void)
|
||||
}
|
||||
|
||||
/* 시리얼 번호 — 비어있으면 기본값 채움 */
|
||||
if (m_config.serial_no[0] == 0 || m_config.serial_no[0] == (char)0xFF) {
|
||||
if (m_config.serial_no[0] == 0 || m_config.serial_no[0] == (char)0xFF)
|
||||
{
|
||||
memset(m_config.serial_no, 0, SERIAL_NO_LENGTH);
|
||||
memcpy(m_config.serial_no, FIRMWARE_SERIAL_NO, strlen(FIRMWARE_SERIAL_NO));
|
||||
DBG_PRINTF("[CFG] S/N empty, set default: %s\r\n", FIRMWARE_SERIAL_NO);
|
||||
@@ -472,7 +477,8 @@ static void PM_s(void * p_context)
|
||||
UNUSED_PARAMETER(p_context);
|
||||
APP_ERROR_CHECK(app_timer_stop(m_PM_timer_id));
|
||||
|
||||
if (m_reset_status == 5) {
|
||||
if (m_reset_status == 5)
|
||||
{
|
||||
DBG_PRINTF("[PM] Kill\r\n");
|
||||
sd_ble_gap_disconnect(m_conn_handle, BLE_HCI_REMOTE_USER_TERMINATED_CONNECTION);
|
||||
}
|
||||
@@ -628,7 +634,8 @@ static void nus_data_handler(ble_nus_evt_t * p_evt)
|
||||
DBG_PRINTF("[NUS] RX len=%d\r\n", p_evt->params.rx_data.length);
|
||||
|
||||
/* 콜백에서는 복사만 하고, 메인 루프에서 처리 */
|
||||
if (p_evt->params.rx_data.length <= BLE_NUS_MAX_DATA_LEN) {
|
||||
if (p_evt->params.rx_data.length <= BLE_NUS_MAX_DATA_LEN)
|
||||
{
|
||||
memcpy((void *)pending_cmd_buf, p_evt->params.rx_data.p_data, p_evt->params.rx_data.length);
|
||||
pending_cmd_len = p_evt->params.rx_data.length;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user