本文整理汇总了C++中VERIFY_SUCCESS函数的典型用法代码示例。如果您正苦于以下问题:C++ VERIFY_SUCCESS函数的具体用法?C++ VERIFY_SUCCESS怎么用?C++ VERIFY_SUCCESS使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了VERIFY_SUCCESS函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: uuid_list_encode
static uint32_t uuid_list_encode(const ble_advdata_uuid_list_t * p_uuid_list,
uint8_t adv_type_16,
uint8_t adv_type_128,
uint8_t * p_encoded_data,
uint16_t * p_offset,
uint16_t max_size)
{
uint32_t err_code;
// Encode 16 bit UUIDs.
err_code = uuid_list_sized_encode(p_uuid_list,
adv_type_16,
sizeof(uint16_le_t),
p_encoded_data,
p_offset,
max_size);
VERIFY_SUCCESS(err_code);
// Encode 128 bit UUIDs.
err_code = uuid_list_sized_encode(p_uuid_list,
adv_type_128,
sizeof(ble_uuid128_t),
p_encoded_data,
p_offset,
max_size);
VERIFY_SUCCESS(err_code);
return NRF_SUCCESS;
}
示例2: ant_search_init
uint32_t ant_search_init(ant_search_config_t const * p_config)
{
uint32_t err_code;
if (p_config->low_priority_timeout == ANT_LOW_PRIORITY_SEARCH_DISABLE
&& p_config->high_priority_timeout == ANT_HIGH_PRIORITY_SEARCH_DISABLE)
{
return NRF_ERROR_INVALID_PARAM;
}
err_code = sd_ant_search_channel_priority_set(p_config->channel_number,
p_config->search_priority);
VERIFY_SUCCESS(err_code);
err_code = sd_ant_search_waveform_set(p_config->channel_number,
p_config->waveform);
VERIFY_SUCCESS(err_code);
err_code = sd_ant_channel_rx_search_timeout_set(p_config->channel_number,
p_config->high_priority_timeout);
VERIFY_SUCCESS(err_code);
err_code = sd_ant_channel_low_priority_rx_search_timeout_set(p_config->channel_number,
p_config->low_priority_timeout);
VERIFY_SUCCESS(err_code);
err_code = sd_ant_active_search_sharing_cycles_set(p_config->channel_number,
p_config->search_sharing_cycles);
return err_code;
}
示例3: ble_lbs_init
uint32_t ble_lbs_init(ble_lbs_t * p_lbs, const ble_lbs_init_t * p_lbs_init)
{
uint32_t err_code;
ble_uuid_t ble_uuid;
// Initialize service structure.
p_lbs->conn_handle = BLE_CONN_HANDLE_INVALID;
p_lbs->led_write_handler = p_lbs_init->led_write_handler;
// Add service.
ble_uuid128_t base_uuid = {LBS_UUID_BASE};
err_code = sd_ble_uuid_vs_add(&base_uuid, &p_lbs->uuid_type);
VERIFY_SUCCESS(err_code);
ble_uuid.type = p_lbs->uuid_type;
ble_uuid.uuid = LBS_UUID_SERVICE;
err_code = sd_ble_gatts_service_add(BLE_GATTS_SRVC_TYPE_PRIMARY, &ble_uuid, &p_lbs->service_handle);
VERIFY_SUCCESS(err_code);
// Add characteristics.
err_code = button_char_add(p_lbs, p_lbs_init);
VERIFY_SUCCESS(err_code);
err_code = led_char_add(p_lbs, p_lbs_init);
VERIFY_SUCCESS(err_code);
return NRF_SUCCESS;
}
示例4: advertising_start
/**@brief Function for starting advertising.
*/
static uint32_t advertising_start(void)
{
uint32_t err_code;
ble_gap_adv_params_t adv_params;
if ((m_flags & DFU_BLE_FLAG_IS_ADVERTISING) != 0)
{
return NRF_SUCCESS;
}
// Initialize advertising parameters (used when starting advertising).
memset(&adv_params, 0, sizeof(adv_params));
err_code = advertising_init(BLE_GAP_ADV_FLAGS_LE_ONLY_GENERAL_DISC_MODE);
VERIFY_SUCCESS(err_code);
adv_params.type = BLE_GAP_ADV_TYPE_ADV_IND;
adv_params.p_peer_addr = NULL;
adv_params.fp = BLE_GAP_ADV_FP_ANY;
adv_params.interval = APP_ADV_INTERVAL;
adv_params.timeout = APP_ADV_TIMEOUT_IN_SECONDS;
err_code = sd_ble_gap_adv_start(&adv_params);
VERIFY_SUCCESS(err_code);
dfu_set_status(DFUS_ADVERTISING_START);
m_flags |= DFU_BLE_FLAG_IS_ADVERTISING;
return NRF_SUCCESS;
}
示例5: ble_stack_init
static uint32_t ble_stack_init(bool init_softdevice)
{
uint32_t err_code;
nrf_clock_lf_cfg_t clock_lf_cfg = NRF_CLOCK_LFCLKSRC;
if (init_softdevice)
{
err_code = nrf_dfu_mbr_init_sd();
VERIFY_SUCCESS(err_code);
}
NRF_LOG_INFO("vector table: 0x%08x\r\n", BOOTLOADER_START_ADDR);
err_code = sd_softdevice_vector_table_base_set(BOOTLOADER_START_ADDR);
VERIFY_SUCCESS(err_code);
SOFTDEVICE_HANDLER_APPSH_INIT(&clock_lf_cfg, true);
ble_enable_params_t ble_enable_params;
// Only one connection as a central is used when performing dfu.
err_code = softdevice_enable_get_default_config(1, 1, &ble_enable_params);
VERIFY_SUCCESS(err_code);
#if (NRF_SD_BLE_API_VERSION == 3)
ble_enable_params.gatt_enable_params.att_mtu = NRF_BLE_MAX_MTU_SIZE;
#endif
// Enable BLE stack.
err_code = softdevice_enable(&ble_enable_params);
return err_code;
}
示例6: gap_params_init
/**@brief Function for the GAP initialization.
*
* @details This function will setup all the necessary GAP (Generic Access Profile) parameters of
* the device. It also sets the permissions and appearance.
*/
static uint32_t gap_params_init(void)
{
uint32_t err_code;
ble_gap_conn_params_t gap_conn_params = {0};
ble_gap_conn_sec_mode_t sec_mode;
BLE_GAP_CONN_SEC_MODE_SET_OPEN(&sec_mode);
err_code = gap_address_change();
VERIFY_SUCCESS(err_code);
err_code = sd_ble_gap_device_name_set(&sec_mode,
(const uint8_t *)DEVICE_NAME,
strlen(DEVICE_NAME));
VERIFY_SUCCESS(err_code);
gap_conn_params.min_conn_interval = MIN_CONN_INTERVAL;
gap_conn_params.max_conn_interval = MAX_CONN_INTERVAL;
gap_conn_params.slave_latency = SLAVE_LATENCY;
gap_conn_params.conn_sup_timeout = CONN_SUP_TIMEOUT;
err_code = sd_ble_gap_ppcp_set(&gap_conn_params);
return err_code;
}
示例7: gap_address_change
static uint32_t gap_address_change(void)
{
uint32_t err_code;
ble_gap_addr_t addr;
#ifdef NRF51
err_code = sd_ble_gap_address_get(&addr);
#elif NRF52
err_code = sd_ble_gap_addr_get(&addr);
#else
#endif
VERIFY_SUCCESS(err_code);
// Increase the BLE address by one when advertising openly.
addr.addr[0] += 1;
#ifdef NRF51
err_code = sd_ble_gap_address_set(BLE_GAP_ADDR_CYCLE_MODE_NONE, &addr);
#elif NRF52
err_code = sd_ble_gap_addr_set(&addr);
#else
#endif
VERIFY_SUCCESS(err_code);
return NRF_SUCCESS;
}
示例8: esb_init
uint32_t esb_init( void )
{
uint32_t err_code;
uint8_t base_addr_0[4] = {0xE7, 0xE7, 0xE7, 0xE7};
uint8_t base_addr_1[4] = {0xC2, 0xC2, 0xC2, 0xC2};
uint8_t addr_prefix[8] = {0xE7, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8 };
nrf_esb_config_t nrf_esb_config = NRF_ESB_DEFAULT_CONFIG;
nrf_esb_config.protocol = NRF_ESB_PROTOCOL_ESB_DPL;
nrf_esb_config.retransmit_delay = 600;
nrf_esb_config.bitrate = NRF_ESB_BITRATE_2MBPS;
nrf_esb_config.event_handler = nrf_esb_event_handler;
nrf_esb_config.mode = NRF_ESB_MODE_PTX;
nrf_esb_config.selective_auto_ack = false;
err_code = nrf_esb_init(&nrf_esb_config);
VERIFY_SUCCESS(err_code);
err_code = nrf_esb_set_base_address_0(base_addr_0);
VERIFY_SUCCESS(err_code);
err_code = nrf_esb_set_base_address_1(base_addr_1);
VERIFY_SUCCESS(err_code);
err_code = nrf_esb_set_prefixes(addr_prefix, 8);
VERIFY_SUCCESS(err_code);
return err_code;
}
示例9: ble_dfu_transport_close
uint32_t ble_dfu_transport_close(void)
{
uint32_t err_code = NRF_SUCCESS;
if ((m_flags & DFU_BLE_FLAG_TEAR_DOWN_IN_PROGRESS) != 0)
{
return NRF_SUCCESS;
}
m_flags |= DFU_BLE_FLAG_TEAR_DOWN_IN_PROGRESS;
NRF_LOG_INFO("Waiting for buffers to be cleared before disconnect\r\n");
nrf_delay_ms(MAX_CONN_INTERVAL_MS*4);
NRF_LOG_INFO("Disconnecting\r\n");
if (m_conn_handle != BLE_CONN_HANDLE_INVALID)
{
// Disconnect from peer.
err_code = sd_ble_gap_disconnect(m_conn_handle, BLE_HCI_REMOTE_USER_TERMINATED_CONNECTION);
VERIFY_SUCCESS(err_code);
}
else if ((m_flags & DFU_BLE_FLAG_IS_ADVERTISING) != 0)
{
// If not connected, then the device will be advertising. Hence stop the advertising.
err_code = advertising_stop();
VERIFY_SUCCESS(err_code);
}
// Stop the timer, disregard the result.
(void)ble_conn_params_stop();
return err_code;
}
示例10: dfu_sd_img_block_swap
static uint32_t dfu_sd_img_block_swap(uint32_t * src,
uint32_t * dst,
uint32_t len,
uint32_t block_size)
{
// It is neccesarry to swap the new SoftDevice in 3 rounds to ensure correct copy of data
// and verifucation of data in case power reset occurs during write to flash.
// To ensure the robustness of swapping the images are compared backwards till start of
// image swap. If the back is identical everything is swapped.
uint32_t err_code = dfu_compare_block(src, dst, len);
if (err_code == NRF_SUCCESS)
{
return err_code;
}
if ((uint32_t)dst > SOFTDEVICE_REGION_START)
{
err_code = dfu_sd_img_block_swap((uint32_t *)((uint32_t)src - block_size),
(uint32_t *)((uint32_t)dst - block_size),
block_size,
block_size);
VERIFY_SUCCESS(err_code);
}
err_code = dfu_copy_sd(src, dst, len);
VERIFY_SUCCESS(err_code);
return dfu_compare_block(src, dst, len);
}
示例11: AmsMgrAclReqCallback
static OCStackApplicationResult AmsMgrAclReqCallback(void *ctx, OCDoHandle handle,
OCClientResponse * clientResponse)
{
OC_LOG_V(INFO, TAG, "%s Begin", __func__ );
(void)handle;
PEContext_t *context = (PEContext_t *) ctx;
SRMAccessResponse_t rsps;
if (!ctx ||
!clientResponse ||
!clientResponse->payload||
(PAYLOAD_TYPE_SECURITY != clientResponse->payload->type) ||
(clientResponse->result != OC_STACK_OK))
{
SRMSendResponse(ACCESS_DENIED_AMS_SERVICE_ERROR);
goto exit;
}
if (context->state != AWAITING_AMS_RESPONSE)
{
OC_LOG_V(ERROR, TAG, "%s Invalid State ", __func__);
context->retVal = ACCESS_DENIED_AMS_SERVICE_ERROR;
SRMSendResponse(context->retVal);
return OC_STACK_DELETE_TRANSACTION;
}
// Verify before installing ACL if the ID of the sender of this ACL is an AMS
//service that this device trusts.
rsps = ACCESS_DENIED;
if((UUID_LENGTH == clientResponse->identity.id_length) &&
memcmp(context->amsMgrContext->amsDeviceId.id, clientResponse->identity.id,
sizeof(context->amsMgrContext->amsDeviceId.id)) == 0)
{
OCStackResult ret =
InstallNewACL(((OCSecurityPayload*)clientResponse->payload)->securityData);
VERIFY_SUCCESS(TAG, OC_STACK_OK == ret, ERROR);
OC_LOG_V(INFO, TAG, "%s : Calling checkPermission", __func__);
rsps = CheckPermission(context, &context->subject, context->resource, context->permission);
VERIFY_SUCCESS(TAG, (true == IsAccessGranted(rsps)), ERROR);
OC_LOG_V(INFO, TAG, "%sAccess granted, Calling SRMCallCARequestHandler", __func__);
context->retVal = ACCESS_GRANTED;
SRMSendResponse(context->retVal);
return OC_STACK_DELETE_TRANSACTION;
}
exit:
context->retVal = ACCESS_DENIED_AMS_SERVICE_ERROR;
SRMSendResponse(context->retVal);
FreeCARequestInfo(context->amsMgrContext->requestInfo);
OICFree(context->amsMgrContext->endpoint);
return OC_STACK_DELETE_TRANSACTION;
}
示例12: app_uart_init
uint32_t app_uart_init(const app_uart_comm_params_t * p_comm_params,
app_uart_buffers_t * p_buffers,
app_uart_event_handler_t event_handler,
app_irq_priority_t irq_priority)
{
uint32_t err_code;
m_event_handler = event_handler;
if (p_buffers == NULL)
{
return NRF_ERROR_INVALID_PARAM;
}
// Configure buffer RX buffer.
err_code = app_fifo_init(&m_rx_fifo, p_buffers->rx_buf, p_buffers->rx_buf_size);
VERIFY_SUCCESS(err_code);
// Configure buffer TX buffer.
err_code = app_fifo_init(&m_tx_fifo, p_buffers->tx_buf, p_buffers->tx_buf_size);
VERIFY_SUCCESS(err_code);
nrf_drv_uart_config_t config = NRF_DRV_UART_DEFAULT_CONFIG;
config.baudrate = (nrf_uart_baudrate_t)p_comm_params->baud_rate;
config.hwfc = (p_comm_params->flow_control == APP_UART_FLOW_CONTROL_DISABLED) ?
NRF_UART_HWFC_DISABLED : NRF_UART_HWFC_ENABLED;
config.interrupt_priority = irq_priority;
config.parity = p_comm_params->use_parity ? NRF_UART_PARITY_INCLUDED : NRF_UART_PARITY_EXCLUDED;
config.pselcts = p_comm_params->cts_pin_no;
config.pselrts = p_comm_params->rts_pin_no;
config.pselrxd = p_comm_params->rx_pin_no;
config.pseltxd = p_comm_params->tx_pin_no;
err_code = nrf_drv_uart_init(&app_uart_inst, &config, uart_event_handler);
VERIFY_SUCCESS(err_code);
m_rx_ovf = false;
// Turn on receiver if RX pin is connected
if (p_comm_params->rx_pin_no != UART_PIN_DISCONNECTED)
{
#ifdef UARTE_PRESENT
if (!config.use_easy_dma)
#endif
{
nrf_drv_uart_rx_enable(&app_uart_inst);
}
return nrf_drv_uart_rx(&app_uart_inst, rx_buffer,1);
}
else
{
return NRF_SUCCESS;
}
}
示例13: app_uart_flush
uint32_t app_uart_flush(void)
{
uint32_t err_code;
err_code = app_fifo_flush(&m_rx_fifo);
VERIFY_SUCCESS(err_code);
err_code = app_fifo_flush(&m_tx_fifo);
VERIFY_SUCCESS(err_code);
return NRF_SUCCESS;
}
示例14: ble_ancs_c_request_attrs
uint32_t ble_ancs_c_request_attrs(ble_ancs_c_t * p_ancs,
const ble_ancs_c_evt_notif_t * p_notif)
{
uint32_t err_code;
err_code = ble_ancs_verify_notification_format(p_notif);
VERIFY_SUCCESS(err_code);
err_code = ble_ancs_get_notif_attrs(p_ancs, p_notif->notif_uid);
p_ancs->parse_state = COMMAND_ID_AND_NOTIF_UID;
VERIFY_SUCCESS(err_code);
return NRF_SUCCESS;
}
示例15: dfu_sd_image_swap
uint32_t dfu_sd_image_swap(void)
{
bootloader_settings_t boot_settings;
bootloader_settings_get(&boot_settings);
if (boot_settings.sd_image_size == 0)
{
return NRF_SUCCESS;
}
if ((SOFTDEVICE_REGION_START + boot_settings.sd_image_size) > boot_settings.sd_image_start)
{
uint32_t err_code;
uint32_t sd_start = SOFTDEVICE_REGION_START;
uint32_t block_size = (boot_settings.sd_image_start - sd_start) / 2;
uint32_t image_end = boot_settings.sd_image_start + boot_settings.sd_image_size;
uint32_t img_block_start = boot_settings.sd_image_start + 2 * block_size;
uint32_t sd_block_start = sd_start + 2 * block_size;
if (SD_SIZE_GET(MBR_SIZE) < boot_settings.sd_image_size)
{
// This will clear a page thus ensuring the old image is invalidated before swapping.
err_code = dfu_copy_sd((uint32_t *)(sd_start + block_size),
(uint32_t *)(sd_start + block_size),
sizeof(uint32_t));
VERIFY_SUCCESS(err_code);
err_code = dfu_copy_sd((uint32_t *)sd_start, (uint32_t *)sd_start, sizeof(uint32_t));
VERIFY_SUCCESS(err_code);
}
return dfu_sd_img_block_swap((uint32_t *)img_block_start,
(uint32_t *)sd_block_start,
image_end - img_block_start,
block_size);
}
else
{
if (boot_settings.sd_image_size != 0)
{
return dfu_copy_sd((uint32_t *)boot_settings.sd_image_start,
(uint32_t *)SOFTDEVICE_REGION_START,
boot_settings.sd_image_size);
}
}
return NRF_SUCCESS;
}