在好例子网,分享、交流、成长!
您当前所在位置:首页C/C++ 开发实例嵌入式开发 → nRF52832的蓝牙串口透传实例代码

nRF52832的蓝牙串口透传实例代码

嵌入式开发

下载此实例
  • 开发语言:C/C++
  • 实例大小:72.24M
  • 下载次数:13
  • 浏览次数:84
  • 发布时间:2022-12-29
  • 实例类别:嵌入式开发
  • 发 布 人:小码
  • 文件格式:.zip
  • 所需积分:4
 相关标签: NRF52832 NRF 32 RF 蓝牙

实例介绍

【实例简介】nRF52832的蓝牙串口透传实例代码,可以通过串口与手机端app通信,蓝牙负责无线数据传输,本实例为蓝牙主控代码

【实例截图】

from clipboard

from clipboard



//主函数
int main(void)
{
    //初始化log程序模块
    log_init();
    //初始化串口
    uart_config();
    //初始化APP定时器
    timers_init();
    //出使唤按键和指示灯
    leds_init();
    //初始化电源管理
    power_management_init();
    //初始化协议栈
    ble_stack_init();
    //配置GAP参数
    gap_params_init();
    //初始化GATT
    gatt_init();
    //初始化服务
    services_init();
    //初始化广播
    advertising_init();
    //连接参数协商初始化
  conn_params_init();
   
   
  NRF_LOG_INFO("BLE Template example started.");  
    //启动广播
    advertising_start();
  //主循环
    while(true)
    {
        //处理挂起的LOG和运行电源管理
        idle_state_handle();
    }
}


//串口事件回调函数,串口初始化时注册,该函数中判断事件类型并进行处理
//当接收的数据长度达到设定的最大值或者接收到换行符后,则认为一包数据接收完成,之后将接收的数据发送给主机
void uart_event_handle(app_uart_evt_t * p_event)
{
    static uint8_t data_array[BLE_UARTS_MAX_DATA_LEN];
    static uint8_t index = 0;
    static uint8_t recv_flag = 0;
    uint32_t       err_code;
    //判断事件类型
    switch (p_event->evt_type)
    {
        case APP_UART_DATA_READY://串口接收事件
            UNUSED_VARIABLE(app_uart_get(&data_array[index]));
            index ;
            //接收串口数据,当接收的数据长度达到m_ble_uarts_max_data_len或者接收到换行符后认为一包数据接收完成
            if ((data_array[index - 1] == '\n'))
                        {
                            recv_flag = 1;
                        }
                        if(((recv_flag==1)&&(data_array[index - 1] == '\r')) ||
                (index >= m_ble_uarts_max_data_len))
            {
                                recv_flag = 0;
                if (index > 1)
                {
                    NRF_LOG_DEBUG("Ready to send data over BLE NUS");
                    NRF_LOG_HEXDUMP_DEBUG(data_array, index);
                    //串口接收的数据使用notify发送给BLE主机
                    do
                    {
                        uint16_t length = (uint16_t)index-2;
                        err_code = ble_uarts_data_send(&m_uarts, data_array, &length, m_conn_handle);
                        if ((err_code != NRF_ERROR_INVALID_STATE) &&
                            (err_code != NRF_ERROR_RESOURCES) &&
                            (err_code != NRF_ERROR_NOT_FOUND))
                        {
                            APP_ERROR_CHECK(err_code);
                        }
                    } while (err_code == NRF_ERROR_RESOURCES);
                }

                index = 0;
            }
            break;
        //通讯错误事件,进入错误处理
        case APP_UART_COMMUNICATION_ERROR:
            APP_ERROR_HANDLER(p_event->data.error_communication);
            break;
        //FIFO错误事件,进入错误处理
        case APP_UART_FIFO_ERROR:
            APP_ERROR_HANDLER(p_event->data.error_code);
            break;

        default:
            break;
    }
}

【核心代码】

.
├── app
│   ├── ble_uarts
│   │   ├── my_ble_uarts.c
│   │   └── my_ble_uarts.h
│   └── main.c
├── components
│   ├── 802_15_4
│   │   ├── api
│   │   │   ├── HAL
│   │   │   ├── MAC
│   │   │   ├── PHY
│   │   │   ├── RAL
│   │   │   ├── SecAL
│   │   │   └── SysAL
│   │   ├── raw
│   │   │   ├── 802_15_4_config.h
│   │   │   ├── 802_15_4_lib_gcc.a
│   │   │   ├── 802_15_4_lib_iar.a
│   │   │   ├── 802_15_4_lib_keil.lib
│   │   │   └── license.txt
│   │   ├── secure
│   │   │   ├── 802_15_4_config.h
│   │   │   ├── 802_15_4_lib_gcc.a
│   │   │   ├── 802_15_4_lib_iar.a
│   │   │   ├── 802_15_4_lib_keil.lib
│   │   │   └── license.txt
│   │   └── src
│   │       ├── rng_entity.c
│   │       └── sec_aes_entity.c
│   ├── ant
│   │   ├── ant_channel_config
│   │   │   ├── ant_channel_config.c
│   │   │   └── ant_channel_config.h
│   │   ├── ant_encryption
│   │   │   ├── ant_encrypt_config.c
│   │   │   ├── ant_encrypt_config.h
│   │   │   ├── ant_encrypt_negotiation_slave.c
│   │   │   └── ant_encrypt_negotiation_slave.h
│   │   ├── ant_fs
│   │   │   ├── antfs.c
│   │   │   ├── antfs.h
│   │   │   ├── crc.c
│   │   │   ├── crc.h
│   │   │   └── defines.h
│   │   ├── ant_key_manager
│   │   │   ├── ant_key_manager.c
│   │   │   ├── ant_key_manager.h
│   │   │   └── config
│   │   ├── ant_profiles
│   │   │   ├── ant_bpwr
│   │   │   ├── ant_bsc
│   │   │   ├── ant_common
│   │   │   ├── ant_hrm
│   │   │   └── ant_sdm
│   │   ├── ant_search_config
│   │   │   ├── ant_search_config.c
│   │   │   └── ant_search_config.h
│   │   └── ant_state_indicator
│   │       ├── ant_state_indicator.c
│   │       └── ant_state_indicator.h
│   ├── ble
│   │   ├── ble_advertising
│   │   │   ├── ble_advertising.c
│   │   │   └── ble_advertising.h
│   │   ├── ble_db_discovery
│   │   │   ├── ble_db_discovery.c
│   │   │   └── ble_db_discovery.h
│   │   ├── ble_dtm
│   │   │   ├── ble_dtm.c
│   │   │   ├── ble_dtm.h
│   │   │   ├── ble_dtm_hw.h
│   │   │   ├── ble_dtm_hw_nrf51.c
│   │   │   └── ble_dtm_hw_nrf52.c
│   │   ├── ble_link_ctx_manager
│   │   │   ├── ble_link_ctx_manager.c
│   │   │   └── ble_link_ctx_manager.h
│   │   ├── ble_racp
│   │   │   ├── ble_racp.c
│   │   │   └── ble_racp.h
│   │   ├── ble_radio_notification
│   │   │   ├── ble_radio_notification.c
│   │   │   └── ble_radio_notification.h
│   │   ├── ble_services
│   │   │   ├── ble_ancs_c
│   │   │   ├── ble_ans_c
│   │   │   ├── ble_bas
│   │   │   ├── ble_bas_c
│   │   │   ├── ble_bps
│   │   │   ├── ble_cscs
│   │   │   ├── ble_cts_c
│   │   │   ├── ble_dfu
│   │   │   ├── ble_dis
│   │   │   ├── ble_dis_c
│   │   │   ├── ble_escs
│   │   │   ├── ble_gls
│   │   │   ├── ble_hids
│   │   │   ├── ble_hrs
│   │   │   ├── ble_hrs_c
│   │   │   ├── ble_hts
│   │   │   ├── ble_ias
│   │   │   ├── ble_ias_c
│   │   │   ├── ble_ipsp
│   │   │   ├── ble_lbs
│   │   │   ├── ble_lbs_c
│   │   │   ├── ble_lls
│   │   │   ├── ble_nus
│   │   │   ├── ble_nus_c
│   │   │   ├── ble_rscs
│   │   │   ├── ble_rscs_c
│   │   │   ├── ble_tps
│   │   │   ├── eddystone
│   │   │   ├── experimental_ble_lns
│   │   │   ├── experimental_ble_ots
│   │   │   ├── experimental_gatts_c
│   │   │   ├── experimental_nrf_ble_cgms
│   │   │   ├── experimental_nrf_ble_ots_c
│   │   │   └── nrf_ble_bms
│   │   ├── common
│   │   │   ├── ble_advdata.c
│   │   │   ├── ble_advdata.h
│   │   │   ├── ble_conn_params.c
│   │   │   ├── ble_conn_params.h
│   │   │   ├── ble_conn_state.c
│   │   │   ├── ble_conn_state.h
│   │   │   ├── ble_date_time.h
│   │   │   ├── ble_gatt_db.h
│   │   │   ├── ble_sensor_location.h
│   │   │   ├── ble_srv_common.c
│   │   │   └── ble_srv_common.h
│   │   ├── nrf_ble_gatt
│   │   │   ├── nrf_ble_gatt.c
│   │   │   └── nrf_ble_gatt.h
│   │   ├── nrf_ble_gq
│   │   │   ├── nrf_ble_gq.c
│   │   │   └── nrf_ble_gq.h
│   │   ├── nrf_ble_qwr
│   │   │   ├── nrf_ble_qwr.c
│   │   │   └── nrf_ble_qwr.h
│   │   ├── nrf_ble_scan
│   │   │   ├── nrf_ble_scan.c
│   │   │   └── nrf_ble_scan.h
│   │   └── peer_manager
│   │       ├── auth_status_tracker.c
│   │       ├── auth_status_tracker.h
│   │       ├── gatt_cache_manager.c
│   │       ├── gatt_cache_manager.h
│   │       ├── gatts_cache_manager.c
│   │       ├── gatts_cache_manager.h
│   │       ├── id_manager.c
│   │       ├── id_manager.h
│   │       ├── nrf_ble_lesc.c
│   │       ├── nrf_ble_lesc.h
│   │       ├── peer_data_storage.c
│   │       ├── peer_data_storage.h
│   │       ├── peer_database.c
│   │       ├── peer_database.h
│   │       ├── peer_id.c
│   │       ├── peer_id.h
│   │       ├── peer_manager.c
│   │       ├── peer_manager.h
│   │       ├── peer_manager_handler.c
│   │       ├── peer_manager_handler.h
│   │       ├── peer_manager_internal.h
│   │       ├── peer_manager_types.h
│   │       ├── pm_buffer.c
│   │       ├── pm_buffer.h
│   │       ├── security_dispatcher.c
│   │       ├── security_dispatcher.h
│   │       ├── security_manager.c
│   │       └── security_manager.h
│   ├── boards
│   │   ├── arduino_joystick_shield_v1a.h
│   │   ├── arduino_primo.h
│   │   ├── boards.c
│   │   ├── boards.h
│   │   ├── d52_starterkit.h
│   │   ├── n5_starterkit.h
│   │   ├── nrf6310.h
│   │   ├── pca10000.h
│   │   ├── pca10001.h
│   │   ├── pca10003.h
│   │   ├── pca10028.h
│   │   ├── pca10031.h
│   │   ├── pca10036.h
│   │   ├── pca10040.h
│   │   ├── pca10056.h
│   │   ├── pca10059.h
│   │   ├── pca10100.h
│   │   ├── pca10112.h
│   │   ├── pca20006.h
│   │   ├── pca20020.h
│   │   └── wt51822.h
│   ├── drivers_ext
│   │   ├── adns2080
│   │   │   ├── adns2080.c
│   │   │   └── adns2080.h
│   │   ├── bh1745
│   │   │   ├── bh1745.c
│   │   │   ├── bh1745.h
│   │   │   └── bh1745_internal.h
│   │   ├── ccs811
│   │   │   ├── ccs811.c
│   │   │   ├── ccs811.h
│   │   │   └── ccs811_internal.h
│   │   ├── cherry8x16
│   │   │   ├── cherry8x16.c
│   │   │   └── cherry8x16.h
│   │   ├── ds1624
│   │   │   ├── ds1624.c
│   │   │   └── ds1624.h
│   │   ├── hts221
│   │   │   ├── hts221.c
│   │   │   ├── hts221.h
│   │   │   └── hts221_internal.h
│   │   ├── ili9341
│   │   │   └── ili9341.c
│   │   ├── lis2dh12
│   │   │   ├── lis2dh12.c
│   │   │   ├── lis2dh12.h
│   │   │   └── lis2dh12_internal.h
│   │   ├── lps22hb
│   │   │   ├── lps22hb.c
│   │   │   ├── lps22hb.h
│   │   │   └── lps22hb_internal.h
│   │   ├── max9850
│   │   │   ├── max9850.c
│   │   │   └── max9850.h
│   │   ├── mcp4725
│   │   │   ├── mcp4725.c
│   │   │   └── mcp4725.h
│   │   ├── mpu6050
│   │   │   ├── mpu6050.c
│   │   │   └── mpu6050.h
│   │   ├── nrf21540
│   │   │   ├── nrf21540.c
│   │   │   ├── nrf21540.h
│   │   │   ├── nrf21540_defs.h
│   │   │   ├── nrf21540_gpio.c
│   │   │   ├── nrf21540_gpio.h
│   │   │   ├── nrf21540_macro.h
│   │   │   ├── nrf21540_spi.c
│   │   │   ├── nrf21540_spi.h
│   │   │   └── nrf21540_types.h
│   │   ├── nrf6350
│   │   │   ├── nrf6350.c
│   │   │   └── nrf6350.h
│   │   ├── pcal6408a
│   │   │   ├── pcal6408a.c
│   │   │   ├── pcal6408a.h
│   │   │   └── pcal6408a_internal.h
│   │   ├── st7735
│   │   │   └── st7735.c
│   │   ├── sx1509b
│   │   │   ├── sx1509b.c
│   │   │   ├── sx1509b.h
│   │   │   └── sx1509b_internal.h
│   │   ├── synaptics_touchpad
│   │   │   ├── synaptics_touchpad.c
│   │   │   └── synaptics_touchpad.h
│   │   └── uda1380
│   │       ├── uda1380.c
│   │       └── uda1380.h
│   ├── drivers_nrf
│   │   ├── nrf_soc_nosd
│   │   │   ├── nrf_error.h
│   │   │   ├── nrf_nvic.c
│   │   │   ├── nrf_nvic.h
│   │   │   ├── nrf_sdm.h
│   │   │   ├── nrf_soc.c
│   │   │   └── nrf_soc.h
│   │   ├── radio_config
│   │   │   ├── radio_config.c
│   │   │   └── radio_config.h
│   │   ├── sdio
│   │   │   ├── config
│   │   │   ├── sdio.c
│   │   │   └── sdio.h
│   │   ├── spi_master
│   │   │   ├── spi_5W_master.c
│   │   │   └── spi_5W_master.h
│   │   └── twi_master
│   │       └── deprecated
│   ├── libraries
│   │   ├── atomic
│   │   │   ├── nrf_atomic.c
│   │   │   ├── nrf_atomic.h
│   │   │   ├── nrf_atomic_internal.h
│   │   │   └── nrf_atomic_sanity_check.h
│   │   ├── atomic_fifo
│   │   │   ├── nrf_atfifo.c
│   │   │   ├── nrf_atfifo.h
│   │   │   └── nrf_atfifo_internal.h
│   │   ├── atomic_flags
│   │   │   ├── nrf_atflags.c
│   │   │   └── nrf_atflags.h
│   │   ├── balloc
│   │   │   ├── nrf_balloc.c
│   │   │   └── nrf_balloc.h
│   │   ├── block_dev
│   │   │   ├── empty
│   │   │   ├── nrf_block_dev.h
│   │   │   ├── qspi
│   │   │   ├── ram
│   │   │   └── sdc
│   │   ├── bootloader
│   │   │   ├── ant_dfu
│   │   │   ├── ble_dfu
│   │   │   ├── dfu
│   │   │   ├── nrf_bootloader.c
│   │   │   ├── nrf_bootloader.h
│   │   │   ├── nrf_bootloader_app_start.c
│   │   │   ├── nrf_bootloader_app_start.h
│   │   │   ├── nrf_bootloader_app_start_final.c
│   │   │   ├── nrf_bootloader_dfu_timers.c
│   │   │   ├── nrf_bootloader_dfu_timers.h
│   │   │   ├── nrf_bootloader_fw_activation.c
│   │   │   ├── nrf_bootloader_fw_activation.h
│   │   │   ├── nrf_bootloader_info.c
│   │   │   ├── nrf_bootloader_info.h
│   │   │   ├── nrf_bootloader_wdt.c
│   │   │   ├── nrf_bootloader_wdt.h
│   │   │   └── serial_dfu
│   │   ├── bsp
│   │   │   ├── bsp.c
│   │   │   ├── bsp.h
│   │   │   ├── bsp_btn_ant.c
│   │   │   ├── bsp_btn_ant.h
│   │   │   ├── bsp_btn_ble.c
│   │   │   ├── bsp_btn_ble.h
│   │   │   ├── bsp_cli.c
│   │   │   ├── bsp_cli.h
│   │   │   ├── bsp_config.h
│   │   │   ├── bsp_nfc.c
│   │   │   └── bsp_nfc.h
│   │   ├── button
│   │   │   ├── app_button.c
│   │   │   └── app_button.h
│   │   ├── cli
│   │   │   ├── ble_uart
│   │   │   ├── cdc_acm
│   │   │   ├── cli_utils_cmds.c
│   │   │   ├── libuarte
│   │   │   ├── nrf_cli.c
│   │   │   ├── nrf_cli.h
│   │   │   ├── nrf_cli_types.h
│   │   │   ├── nrf_cli_vt100.h
│   │   │   ├── rtt
│   │   │   └── uart
│   │   ├── crc16
│   │   │   ├── crc16.c
│   │   │   └── crc16.h
│   │   ├── crc32
│   │   │   ├── crc32.c
│   │   │   └── crc32.h
│   │   ├── crypto
│   │   │   ├── backend
│   │   │   ├── nrf_crypto.h
│   │   │   ├── nrf_crypto_aead.c
│   │   │   ├── nrf_crypto_aead.h
│   │   │   ├── nrf_crypto_aead_backend.h
│   │   │   ├── nrf_crypto_aead_shared.h
│   │   │   ├── nrf_crypto_aes.c
│   │   │   ├── nrf_crypto_aes.h
│   │   │   ├── nrf_crypto_aes_backend.h
│   │   │   ├── nrf_crypto_aes_shared.c
│   │   │   ├── nrf_crypto_aes_shared.h
│   │   │   ├── nrf_crypto_ecc.c
│   │   │   ├── nrf_crypto_ecc.h
│   │   │   ├── nrf_crypto_ecc_backend.h
│   │   │   ├── nrf_crypto_ecc_shared.h
│   │   │   ├── nrf_crypto_ecdh.c
│   │   │   ├── nrf_crypto_ecdh.h
│   │   │   ├── nrf_crypto_ecdh_backend.h
│   │   │   ├── nrf_crypto_ecdh_shared.h
│   │   │   ├── nrf_crypto_ecdsa.c
│   │   │   ├── nrf_crypto_ecdsa.h
│   │   │   ├── nrf_crypto_ecdsa_backend.h
│   │   │   ├── nrf_crypto_ecdsa_shared.h
│   │   │   ├── nrf_crypto_eddsa.c
│   │   │   ├── nrf_crypto_eddsa.h
│   │   │   ├── nrf_crypto_eddsa_backend.h
│   │   │   ├── nrf_crypto_eddsa_shared.h
│   │   │   ├── nrf_crypto_error.c
│   │   │   ├── nrf_crypto_error.h
│   │   │   ├── nrf_crypto_hash.c
│   │   │   ├── nrf_crypto_hash.h
│   │   │   ├── nrf_crypto_hash_backend.h
│   │   │   ├── nrf_crypto_hash_shared.h
│   │   │   ├── nrf_crypto_hkdf.c
│   │   │   ├── nrf_crypto_hkdf.h
│   │   │   ├── nrf_crypto_hmac.c
│   │   │   ├── nrf_crypto_hmac.h
│   │   │   ├── nrf_crypto_hmac_backend.h
│   │   │   ├── nrf_crypto_hmac_shared.h
│   │   │   ├── nrf_crypto_init.c
│   │   │   ├── nrf_crypto_init.h
│   │   │   ├── nrf_crypto_mem.h
│   │   │   ├── nrf_crypto_rng.c
│   │   │   ├── nrf_crypto_rng.h
│   │   │   ├── nrf_crypto_rng_backend.h
│   │   │   ├── nrf_crypto_rng_shared.h
│   │   │   ├── nrf_crypto_shared.c
│   │   │   ├── nrf_crypto_shared.h
│   │   │   └── nrf_crypto_types.h
│   │   ├── csense
│   │   │   ├── nrf_csense.c
│   │   │   ├── nrf_csense.h
│   │   │   └── nrf_csense_macros.h
│   │   ├── csense_drv
│   │   │   ├── nrf_drv_csense.c
│   │   │   └── nrf_drv_csense.h
│   │   ├── delay
│   │   │   └── nrf_delay.h
│   │   ├── ecc
│   │   │   ├── ecc.c
│   │   │   └── ecc.h
│   │   ├── experimental_section_vars
│   │   │   ├── nrf_section.h
│   │   │   ├── nrf_section_iter.c
│   │   │   └── nrf_section_iter.h
│   │   ├── experimental_task_manager
│   │   │   ├── task_manager.c
│   │   │   ├── task_manager.h
│   │   │   ├── task_manager_core_armgcc.S
│   │   │   ├── task_manager_core_iar.s
│   │   │   └── task_manager_core_keil.s
│   │   ├── fds
│   │   │   ├── fds.c
│   │   │   ├── fds.h
│   │   │   └── fds_internal_defs.h
│   │   ├── fifo
│   │   │   ├── app_fifo.c
│   │   │   └── app_fifo.h
│   │   ├── fstorage
│   │   │   ├── nrf_fstorage.c
│   │   │   ├── nrf_fstorage.h
│   │   │   ├── nrf_fstorage_nvmc.c
│   │   │   ├── nrf_fstorage_nvmc.h
│   │   │   ├── nrf_fstorage_sd.c
│   │   │   └── nrf_fstorage_sd.h
│   │   ├── gfx
│   │   │   ├── nrf_gfx.c
│   │   │   ├── nrf_gfx.h
│   │   │   └── nrf_lcd.h
│   │   ├── gpiote
│   │   │   ├── app_gpiote.c
│   │   │   └── app_gpiote.h
│   │   ├── hardfault
│   │   │   ├── hardfault.h
│   │   │   ├── hardfault_genhf.h
│   │   │   ├── hardfault_implementation.c
│   │   │   ├── nrf51
│   │   │   └── nrf52
│   │   ├── hci
│   │   │   ├── hci_mem_pool.c
│   │   │   ├── hci_mem_pool.h
│   │   │   ├── hci_slip.c
│   │   │   ├── hci_slip.h
│   │   │   ├── hci_transport.c
│   │   │   └── hci_transport.h
│   │   ├── led_softblink
│   │   │   ├── led_softblink.c
│   │   │   └── led_softblink.h
│   │   ├── libuarte
│   │   │   ├── nrf_libuarte_async.c
│   │   │   ├── nrf_libuarte_async.h
│   │   │   ├── nrf_libuarte_drv.c
│   │   │   └── nrf_libuarte_drv.h
│   │   ├── log
│   │   │   ├── nrf_log.h
│   │   │   ├── nrf_log_backend_flash.h
│   │   │   ├── nrf_log_backend_interface.h
│   │   │   ├── nrf_log_backend_rtt.h
│   │   │   ├── nrf_log_backend_uart.h
│   │   │   ├── nrf_log_ctrl.h
│   │   │   ├── nrf_log_default_backends.h
│   │   │   ├── nrf_log_instance.h
│   │   │   ├── nrf_log_str_formatter.h
│   │   │   ├── nrf_log_types.h
│   │   │   └── src
│   │   ├── low_power_pwm
│   │   │   ├── low_power_pwm.c
│   │   │   └── low_power_pwm.h
│   │   ├── mem_manager
│   │   │   ├── mem_manager.c
│   │   │   └── mem_manager.h
│   │   ├── memobj
│   │   │   ├── nrf_memobj.c
│   │   │   └── nrf_memobj.h
│   │   ├── mpu
│   │   │   ├── nrf_mpu_lib.c
│   │   │   └── nrf_mpu_lib.h
│   │   ├── mutex
│   │   │   └── nrf_mtx.h
│   │   ├── pwm
│   │   │   ├── app_pwm.c
│   │   │   └── app_pwm.h
│   │   ├── pwr_mgmt
│   │   │   ├── nrf_pwr_mgmt.c
│   │   │   └── nrf_pwr_mgmt.h
│   │   ├── queue
│   │   │   ├── nrf_queue.c
│   │   │   └── nrf_queue.h
│   │   ├── ringbuf
│   │   │   ├── nrf_ringbuf.c
│   │   │   └── nrf_ringbuf.h
│   │   ├── scheduler
│   │   │   ├── app_scheduler.c
│   │   │   ├── app_scheduler.h
│   │   │   └── app_scheduler_serconn.c
│   │   ├── sdcard
│   │   │   ├── app_sdcard.c
│   │   │   └── app_sdcard.h
│   │   ├── sensorsim
│   │   │   ├── sensorsim.c
│   │   │   └── sensorsim.h
│   │   ├── sha256
│   │   │   ├── sha256.c
│   │   │   └── sha256.h
│   │   ├── simple_timer
│   │   │   ├── app_simple_timer.c
│   │   │   └── app_simple_timer.h
│   │   ├── slip
│   │   │   ├── slip.c
│   │   │   └── slip.h
│   │   ├── sortlist
│   │   │   ├── nrf_sortlist.c
│   │   │   └── nrf_sortlist.h
│   │   ├── spi_mngr
│   │   │   ├── nrf_spi_mngr.c
│   │   │   └── nrf_spi_mngr.h
│   │   ├── stack_guard
│   │   │   ├── nrf_stack_guard.c
│   │   │   └── nrf_stack_guard.h
│   │   ├── stack_info
│   │   │   └── nrf_stack_info.h
│   │   ├── strerror
│   │   │   ├── nrf_strerror.c
│   │   │   └── nrf_strerror.h
│   │   ├── svc
│   │   │   ├── nrf_svc_function.h
│   │   │   ├── nrf_svc_handler.c
│   │   │   ├── nrf_svci.h
│   │   │   ├── nrf_svci_async_function.h
│   │   │   └── nrf_svci_async_handler.h
│   │   ├── timer
│   │   │   ├── app_timer.c
│   │   │   ├── app_timer.h
│   │   │   ├── app_timer2.c
│   │   │   ├── app_timer_freertos.c
│   │   │   ├── app_timer_rtx.c
│   │   │   ├── drv_rtc.c
│   │   │   └── drv_rtc.h
│   │   ├── twi_mngr
│   │   │   ├── nrf_twi_mngr.c
│   │   │   └── nrf_twi_mngr.h
│   │   ├── twi_sensor
│   │   │   ├── nrf_twi_sensor.c
│   │   │   └── nrf_twi_sensor.h
│   │   ├── uart
│   │   │   ├── app_uart.c
│   │   │   ├── app_uart.h
│   │   │   ├── app_uart_fifo.c
│   │   │   └── retarget.c
│   │   ├── usbd
│   │   │   ├── app_usbd.c
│   │   │   ├── app_usbd.h
│   │   │   ├── app_usbd_class_base.h
│   │   │   ├── app_usbd_core.c
│   │   │   ├── app_usbd_core.h
│   │   │   ├── app_usbd_descriptor.h
│   │   │   ├── app_usbd_langid.h
│   │   │   ├── app_usbd_request.h
│   │   │   ├── app_usbd_serial_num.c
│   │   │   ├── app_usbd_serial_num.h
│   │   │   ├── app_usbd_string_desc.c
│   │   │   ├── app_usbd_string_desc.h
│   │   │   ├── app_usbd_types.h
│   │   │   └── class
│   │   └── util
│   │       ├── app_error.c
│   │       ├── app_error.h
│   │       ├── app_error_handler_gcc.c
│   │       ├── app_error_handler_iar.c
│   │       ├── app_error_handler_keil.c
│   │       ├── app_error_weak.c
│   │       ├── app_error_weak.h
│   │       ├── app_util.h
│   │       ├── app_util_bds.h
│   │       ├── app_util_platform.c
│   │       ├── app_util_platform.h
│   │       ├── nordic_common.h
│   │       ├── nrf_assert.c
│   │       ├── nrf_assert.h
│   │       ├── nrf_bitmask.h
│   │       ├── sdk_alloca.h
│   │       ├── sdk_common.h
│   │       ├── sdk_errors.h
│   │       ├── sdk_macros.h
│   │       ├── sdk_mapped_flags.c
│   │       ├── sdk_mapped_flags.h
│   │       ├── sdk_os.h
│   │       └── sdk_resources.h
│   ├── nfc
│   │   ├── ndef
│   │   │   ├── conn_hand_parser
│   │   │   ├── connection_handover
│   │   │   ├── generic
│   │   │   ├── launchapp
│   │   │   ├── parser
│   │   │   ├── text
│   │   │   └── uri
│   │   ├── platform
│   │   │   ├── nfc_platform.c
│   │   │   └── nfc_platform.h
│   │   ├── t2t_lib
│   │   │   ├── license.txt
│   │   │   ├── nfc_t2t_lib.h
│   │   │   ├── nfc_t2t_lib_gcc.a
│   │   │   ├── nfc_t2t_lib_gcc_no_fpu.a
│   │   │   ├── nfc_t2t_lib_iar.a
│   │   │   └── nfc_t2t_lib_keil.lib
│   │   ├── t2t_parser
│   │   │   ├── nfc_t2t_parser.c
│   │   │   ├── nfc_t2t_parser.h
│   │   │   └── nfc_tlv_block.h
│   │   ├── t4t_lib
│   │   │   ├── license.txt
│   │   │   ├── nfc_t4t_lib.h
│   │   │   ├── nfc_t4t_lib_gcc.a
│   │   │   ├── nfc_t4t_lib_gcc_no_fpu.a
│   │   │   ├── nfc_t4t_lib_iar.a
│   │   │   └── nfc_t4t_lib_keil.lib
│   │   └── t4t_parser
│   │       ├── apdu
│   │       ├── cc_file
│   │       ├── hl_detection_procedure
│   │       └── tlv
│   ├── proprietary_rf
│   │   ├── esb
│   │   │   ├── nrf_esb.c
│   │   │   ├── nrf_esb.h
│   │   │   ├── nrf_esb_error_codes.h
│   │   │   └── nrf_esb_resources.h
│   │   └── gzll
│   │       ├── arm
│   │       ├── config
│   │       ├── gcc
│   │       ├── iar
│   │       ├── nrf_gzll.h
│   │       ├── nrf_gzll_constants.h
│   │       ├── nrf_gzll_error.h
│   │       ├── nrf_gzll_resources.h
│   │       ├── nrf_gzp.c
│   │       ├── nrf_gzp.h
│   │       ├── nrf_gzp_device.c
│   │       ├── nrf_gzp_host.c
│   │       └── nrf_gzp_host_nrf5x.c
│   ├── sdk_validation.h
│   ├── serialization
│   │   ├── application
│   │   │   ├── codecs
│   │   │   ├── hal
│   │   │   └── transport
│   │   ├── common
│   │   │   ├── ble_serialization.c
│   │   │   ├── ble_serialization.h
│   │   │   ├── cond_field_serialization.c
│   │   │   ├── cond_field_serialization.h
│   │   │   ├── ser_config.h
│   │   │   ├── ser_dbg_sd_str.c
│   │   │   ├── ser_dbg_sd_str.h
│   │   │   ├── struct_ser
│   │   │   └── transport
│   │   └── connectivity
│   │       ├── codecs
│   │       ├── hal
│   │       ├── ser_conn_cmd_decoder.c
│   │       ├── ser_conn_cmd_decoder.h
│   │       ├── ser_conn_dtm_cmd_decoder.c
│   │       ├── ser_conn_dtm_cmd_decoder.h
│   │       ├── ser_conn_error_handling.c
│   │       ├── ser_conn_event_encoder.c
│   │       ├── ser_conn_event_encoder.h
│   │       ├── ser_conn_handlers.c
│   │       ├── ser_conn_handlers.h
│   │       ├── ser_conn_pkt_decoder.c
│   │       ├── ser_conn_pkt_decoder.h
│   │       ├── ser_conn_reset_cmd_decoder.c
│   │       └── ser_conn_reset_cmd_decoder.h
│   ├── softdevice
│   │   ├── common
│   │   │   ├── nrf_sdh.c
│   │   │   ├── nrf_sdh.h
│   │   │   ├── nrf_sdh_ant.c
│   │   │   ├── nrf_sdh_ant.h
│   │   │   ├── nrf_sdh_ble.c
│   │   │   ├── nrf_sdh_ble.h
│   │   │   ├── nrf_sdh_freertos.c
│   │   │   ├── nrf_sdh_freertos.h
│   │   │   ├── nrf_sdh_soc.c
│   │   │   └── nrf_sdh_soc.h
│   │   ├── mbr
│   │   │   ├── headers
│   │   │   └── hex
│   │   ├── s112
│   │   │   ├── doc
│   │   │   ├── headers
│   │   │   ├── hex
│   │   │   └── toolchain
│   │   ├── s113
│   │   │   ├── doc
│   │   │   ├── headers
│   │   │   ├── hex
│   │   │   └── toolchain
│   │   ├── s122
│   │   │   ├── doc
│   │   │   ├── headers
│   │   │   └── hex
│   │   ├── s132
│   │   │   ├── doc
│   │   │   ├── headers
│   │   │   ├── hex
│   │   │   ├── s132_nrf52_7.2.0_softdevice.hex
│   │   │   └── toolchain
│   │   ├── s140
│   │   │   ├── doc
│   │   │   ├── headers
│   │   │   └── hex
│   │   ├── s212
│   │   │   ├── headers
│   │   │   └── toolchain
│   │   ├── s312
│   │   │   ├── headers
│   │   │   └── toolchain
│   │   ├── s332
│   │   │   ├── headers
│   │   │   └── toolchain
│   │   └── s340
│   │       ├── headers
│   │       └── toolchain
│   └── toolchain
│       ├── arm
│       │   └── uicr_config.h
│       ├── cmsis
│       │   ├── dsp
│       │   └── include
│       ├── gcc
│       │   ├── Makefile.common
│       │   ├── Makefile.posix
│       │   ├── Makefile.windows
│       │   ├── dump.mk
│       │   └── gcc_nrf51_common.ld
│       └── iar
│           ├── iar_nrf51_blank_xxaa.icf
│           └── iar_nrf51_blank_xxac.icf
├── doc
├── external
│   ├── cJSON
│   │   ├── LICENSE
│   │   ├── README
│   │   ├── cJSON.c
│   │   ├── cJSON.h
│   │   ├── cJSON_iot_hooks.c
│   │   ├── cJSON_iot_hooks.h
│   │   └── test.c
│   ├── cifra_AES128-EAX
│   │   ├── bitops.h
│   │   ├── blockwise.c
│   │   ├── blockwise.h
│   │   ├── cf_config.h
│   │   ├── cifra_cmac.c
│   │   ├── cifra_eax_aes.c
│   │   ├── cifra_eax_aes.h
│   │   ├── eax.c
│   │   ├── gf128.c
│   │   ├── gf128.h
│   │   ├── handy.h
│   │   ├── license.txt
│   │   ├── modes.c
│   │   ├── modes.h
│   │   ├── prp.h
│   │   └── tassert.h
│   ├── fatfs
│   │   ├── doc
│   │   │   ├── 00index_e.html
│   │   │   ├── 00index_j.html
│   │   │   ├── css_e.css
│   │   │   ├── css_j.css
│   │   │   ├── en
│   │   │   ├── ja
│   │   │   ├── res
│   │   │   └── updates.txt
│   │   ├── port
│   │   │   ├── diskio_blkdev.c
│   │   │   └── diskio_blkdev.h
│   │   └── src
│   │       ├── 00history.txt
│   │       ├── 00readme.txt
│   │       ├── diskio.c
│   │       ├── diskio.h
│   │       ├── ff.c
│   │       ├── ff.h
│   │       ├── ffconf.h
│   │       ├── integer.h
│   │       └── option
│   ├── fnmatch
│   │   ├── fnmatch.c
│   │   └── fnmatch.h
│   ├── fprintf
│   │   ├── nrf_fprintf.c
│   │   ├── nrf_fprintf.h
│   │   ├── nrf_fprintf_format.c
│   │   └── nrf_fprintf_format.h
│   ├── freertos
│   │   ├── config
│   │   │   └── FreeRTOSConfig.h
│   │   ├── license
│   │   │   └── license.txt
│   │   ├── portable
│   │   │   ├── ARM
│   │   │   ├── CMSIS
│   │   │   ├── GCC
│   │   │   └── IAR
│   │   ├── readme.txt
│   │   └── source
│   │       ├── croutine.c
│   │       ├── event_groups.c
│   │       ├── include
│   │       ├── list.c
│   │       ├── portable
│   │       ├── queue.c
│   │       ├── readme.txt
│   │       ├── stream_buffer.c
│   │       ├── tasks.c
│   │       └── timers.c
│   ├── infineon
│   │   ├── CONTRIBUTING.md
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── examples
│   │   │   └── ecdsa_utils
│   │   ├── optiga
│   │   │   ├── cmd
│   │   │   ├── common
│   │   │   ├── comms
│   │   │   ├── crypt
│   │   │   ├── dtls
│   │   │   ├── include
│   │   │   └── util
│   │   └── pal
│   │       └── nrf5x
│   ├── licenses_external.txt
│   ├── lwip
│   │   ├── CHANGELOG
│   │   ├── COPYING
│   │   ├── FILES
│   │   ├── README
│   │   ├── UPGRADING
│   │   ├── doc
│   │   │   ├── FILES
│   │   │   ├── NO_SYS_SampleCode.c
│   │   │   ├── contrib.txt
│   │   │   ├── doxygen
│   │   │   ├── mdns.txt
│   │   │   ├── mqtt_client.txt
│   │   │   ├── ppp.txt
│   │   │   ├── rawapi.txt
│   │   │   ├── savannah.txt
│   │   │   ├── snmp_agent.txt
│   │   │   └── sys_arch.txt
│   │   ├── license.txt
│   │   └── src
│   │       ├── FILES
│   │       ├── Filelists.mk
│   │       ├── api
│   │       ├── apps
│   │       ├── core
│   │       ├── include
│   │       ├── netif
│   │       └── port
│   ├── mbedtls
│   │   ├── CMakeLists.txt
│   │   ├── CONTRIBUTING.md
│   │   ├── ChangeLog
│   │   ├── DartConfiguration.tcl
│   │   ├── LICENSE
│   │   ├── Makefile
│   │   ├── README.md
│   │   ├── apache-2.0.txt
│   │   ├── configs
│   │   │   ├── README.txt
│   │   │   ├── config-ccm-psk-tls1_2.h
│   │   │   ├── config-mini-tls1_1.h
│   │   │   ├── config-no-entropy.h
│   │   │   ├── config-suite-b.h
│   │   │   └── config-thread.h
│   │   ├── doxygen
│   │   │   ├── input
│   │   │   └── mbedtls.doxyfile
│   │   ├── include
│   │   │   ├── CMakeLists.txt
│   │   │   └── mbedtls
│   │   ├── library
│   │   │   ├── CMakeLists.txt
│   │   │   ├── Makefile
│   │   │   ├── aes.c
│   │   │   ├── aesni.c
│   │   │   ├── arc4.c
│   │   │   ├── aria.c
│   │   │   ├── asn1parse.c
│   │   │   ├── asn1write.c
│   │   │   ├── base64.c
│   │   │   ├── bignum.c
│   │   │   ├── blowfish.c
│   │   │   ├── camellia.c
│   │   │   ├── ccm.c
│   │   │   ├── certs.c
│   │   │   ├── chacha20.c
│   │   │   ├── chachapoly.c
│   │   │   ├── cipher.c
│   │   │   ├── cipher_wrap.c
│   │   │   ├── cmac.c
│   │   │   ├── ctr_drbg.c
│   │   │   ├── debug.c
│   │   │   ├── des.c
│   │   │   ├── dhm.c
│   │   │   ├── ecdh.c
│   │   │   ├── ecdsa.c
│   │   │   ├── ecjpake.c
│   │   │   ├── ecp.c
│   │   │   ├── ecp_curves.c
│   │   │   ├── entropy.c
│   │   │   ├── entropy_poll.c
│   │   │   ├── error.c
│   │   │   ├── gcm.c
│   │   │   ├── havege.c
│   │   │   ├── hkdf.c
│   │   │   ├── hmac_drbg.c
│   │   │   ├── md.c
│   │   │   ├── md2.c
│   │   │   ├── md4.c
│   │   │   ├── md5.c
│   │   │   ├── md_wrap.c
│   │   │   ├── memory_buffer_alloc.c
│   │   │   ├── net_sockets.c
│   │   │   ├── nist_kw.c
│   │   │   ├── oid.c
│   │   │   ├── padlock.c
│   │   │   ├── pem.c
│   │   │   ├── pk.c
│   │   │   ├── pk_wrap.c
│   │   │   ├── pkcs11.c
│   │   │   ├── pkcs12.c
│   │   │   ├── pkcs5.c
│   │   │   ├── pkparse.c
│   │   │   ├── pkwrite.c
│   │   │   ├── platform.c
│   │   │   ├── platform_util.c
│   │   │   ├── poly1305.c
│   │   │   ├── ripemd160.c
│   │   │   ├── rsa.c
│   │   │   ├── rsa_internal.c
│   │   │   ├── sha1.c
│   │   │   ├── sha256.c
│   │   │   ├── sha512.c
│   │   │   ├── ssl_cache.c
│   │   │   ├── ssl_ciphersuites.c
│   │   │   ├── ssl_cli.c
│   │   │   ├── ssl_cookie.c
│   │   │   ├── ssl_srv.c
│   │   │   ├── ssl_ticket.c
│   │   │   ├── ssl_tls.c
│   │   │   ├── threading.c
│   │   │   ├── timing.c
│   │   │   ├── version.c
│   │   │   ├── version_features.c
│   │   │   ├── x509.c
│   │   │   ├── x509_create.c
│   │   │   ├── x509_crl.c
│   │   │   ├── x509_crt.c
│   │   │   ├── x509_csr.c
│   │   │   ├── x509write_crt.c
│   │   │   ├── x509write_csr.c
│   │   │   └── xtea.c
│   │   ├── programs
│   │   │   ├── CMakeLists.txt
│   │   │   ├── Makefile
│   │   │   ├── README.md
│   │   │   ├── aes
│   │   │   ├── hash
│   │   │   ├── pkey
│   │   │   ├── random
│   │   │   ├── ssl
│   │   │   ├── util
│   │   │   ├── wince_main.c
│   │   │   └── x509
│   │   ├── scripts
│   │   │   ├── abi_check.py
│   │   │   ├── apidoc_full.sh
│   │   │   ├── bump_version.sh
│   │   │   ├── config.pl
│   │   │   ├── data_files
│   │   │   ├── ecc-heap.sh
│   │   │   ├── find-mem-leak.cocci
│   │   │   ├── footprint.sh
│   │   │   ├── generate_errors.pl
│   │   │   ├── generate_features.pl
│   │   │   ├── generate_query_config.pl
│   │   │   ├── generate_visualc_files.pl
│   │   │   ├── massif_max.pl
│   │   │   ├── memory.sh
│   │   │   ├── output_env.sh
│   │   │   ├── rename.pl
│   │   │   ├── rm-calloc-cast.cocci
│   │   │   └── tmp_ignore_makefiles.sh
│   │   └── visualc
│   │       └── VS2010
│   ├── micro-ecc
│   │   ├── build_all.bat
│   │   ├── build_all.sh
│   │   ├── license.txt
│   │   ├── nrf51_armgcc
│   │   │   └── armgcc
│   │   ├── nrf51_iar
│   │   │   └── armgcc
│   │   ├── nrf51_keil
│   │   │   └── armgcc
│   │   ├── nrf52hf_armgcc
│   │   │   └── armgcc
│   │   ├── nrf52hf_iar
│   │   │   └── armgcc
│   │   ├── nrf52hf_keil
│   │   │   └── armgcc
│   │   ├── nrf52nf_armgcc
│   │   │   └── armgcc
│   │   ├── nrf52nf_iar
│   │   │   └── armgcc
│   │   └── nrf52nf_keil
│   │       └── armgcc
│   ├── nano
│   │   ├── mock_pb_decode.c
│   │   └── mock_pb_decode.h
│   ├── nano-pb
│   │   ├── LICENSE.txt
│   │   ├── generator
│   │   │   ├── camel_case_splitter.py
│   │   │   ├── nanopb_generator.py
│   │   │   ├── proto
│   │   │   ├── protoc-gen-nanopb
│   │   │   └── protoc-gen-nanopb.bat
│   │   ├── pb.h
│   │   ├── pb_common.c
│   │   ├── pb_common.h
│   │   ├── pb_decode.c
│   │   ├── pb_decode.h
│   │   ├── pb_encode.c
│   │   └── pb_encode.h
│   ├── nfc_adafruit_library
│   │   ├── adafruit_pn532.c
│   │   └── adafruit_pn532.h
│   ├── nrf_cc310
│   │   ├── Doxyfile
│   │   ├── Doxyfile.internal
│   │   ├── common
│   │   │   ├── integration_test_plat_defs.h
│   │   │   ├── integration_test_plat_utils.c
│   │   │   ├── integration_test_ssi_data.h
│   │   │   └── integration_test_ssi_defs.h
│   │   ├── include
│   │   │   ├── ccsw_crys_rsa_shared_types.h
│   │   │   ├── crys_aesccm.h
│   │   │   ├── crys_aesccm_error.h
│   │   │   ├── crys_chacha.h
│   │   │   ├── crys_chacha_error.h
│   │   │   ├── crys_chacha_poly.h
│   │   │   ├── crys_chacha_poly_error.h
│   │   │   ├── crys_common.h
│   │   │   ├── crys_common_error.h
│   │   │   ├── crys_dh.h
│   │   │   ├── crys_dh_error.h
│   │   │   ├── crys_dh_kg.h
│   │   │   ├── crys_ec_edw_api.h
│   │   │   ├── crys_ec_mont_api.h
│   │   │   ├── crys_ec_mont_edw_error.h
│   │   │   ├── crys_ecpki_build.h
│   │   │   ├── crys_ecpki_dh.h
│   │   │   ├── crys_ecpki_domain.h
│   │   │   ├── crys_ecpki_ecdsa.h
│   │   │   ├── crys_ecpki_error.h
│   │   │   ├── crys_ecpki_kg.h
│   │   │   ├── crys_ecpki_types.h
│   │   │   ├── crys_error.h
│   │   │   ├── crys_hash.h
│   │   │   ├── crys_hash_defs.h
│   │   │   ├── crys_hash_error.h
│   │   │   ├── crys_hkdf.h
│   │   │   ├── crys_hkdf_error.h
│   │   │   ├── crys_hmac.h
│   │   │   ├── crys_hmac_defs.h
│   │   │   ├── crys_hmac_error.h
│   │   │   ├── crys_kdf.h
│   │   │   ├── crys_kdf_error.h
│   │   │   ├── crys_pka_defs_hw.h
│   │   │   ├── crys_poly.h
│   │   │   ├── crys_poly_error.h
│   │   │   ├── crys_rnd.h
│   │   │   ├── crys_rnd_error.h
│   │   │   ├── crys_rsa_build.h
│   │   │   ├── crys_rsa_error.h
│   │   │   ├── crys_rsa_kg.h
│   │   │   ├── crys_rsa_prim.h
│   │   │   ├── crys_rsa_schemes.h
│   │   │   ├── crys_rsa_types.h
│   │   │   ├── crys_srp.h
│   │   │   ├── crys_srp_error.h
│   │   │   ├── dx_reg_base_host.h
│   │   │   ├── sns_silib.h
│   │   │   ├── ssi_aes.h
│   │   │   ├── ssi_aes_defs.h
│   │   │   ├── ssi_aes_error.h
│   │   │   ├── ssi_bitops.h
│   │   │   ├── ssi_pal_abort.h
│   │   │   ├── ssi_pal_barrier.h
│   │   │   ├── ssi_pal_compiler.h
│   │   │   ├── ssi_pal_dma.h
│   │   │   ├── ssi_pal_dma_defs.h
│   │   │   ├── ssi_pal_dma_plat.h
│   │   │   ├── ssi_pal_error.h
│   │   │   ├── ssi_pal_file.h
│   │   │   ├── ssi_pal_file_plat.h
│   │   │   ├── ssi_pal_fips.h
│   │   │   ├── ssi_pal_init.h
│   │   │   ├── ssi_pal_list.h
│   │   │   ├── ssi_pal_log.h
│   │   │   ├── ssi_pal_mem.h
│   │   │   ├── ssi_pal_memmap.h
│   │   │   ├── ssi_pal_mutex.h
│   │   │   ├── ssi_pal_mutex_plat.h
│   │   │   ├── ssi_pal_perf.h
│   │   │   ├── ssi_pal_perf_plat.h
│   │   │   ├── ssi_pal_sem.h
│   │   │   ├── ssi_pal_sem_plat.h
│   │   │   ├── ssi_pal_trng.h
│   │   │   ├── ssi_pal_types.h
│   │   │   ├── ssi_pal_types_plat.h
│   │   │   ├── ssi_pka_hw_plat_defs.h
│   │   │   ├── ssi_regs.h
│   │   │   ├── ssi_sram_map.h
│   │   │   ├── ssi_util_defs.h
│   │   │   ├── ssi_util_error.h
│   │   │   ├── ssi_util_key_derivation.h
│   │   │   └── ssi_util_key_derivation_defs.h
│   │   ├── lib
│   │   │   ├── cortex-m4
│   │   │   └── license.txt
│   │   └── license.txt
│   ├── nrf_cc310_bl
│   │   ├── include
│   │   │   ├── crys_aesccm.h
│   │   │   ├── crys_ecpki_error.h
│   │   │   ├── crys_error.h
│   │   │   ├── crys_hash_error.h
│   │   │   ├── crys_rnd.h
│   │   │   ├── crys_rnd_error.h
│   │   │   ├── nrf_cc310_bl.h
│   │   │   ├── nrf_cc310_bl_ecdsa_verify_common.h
│   │   │   ├── nrf_cc310_bl_ecdsa_verify_secp224r1.h
│   │   │   ├── nrf_cc310_bl_ecdsa_verify_secp256r1.h
│   │   │   ├── nrf_cc310_bl_hash_common.h
│   │   │   ├── nrf_cc310_bl_hash_sha256.h
│   │   │   ├── nrf_cc310_bl_init.h
│   │   │   ├── sns_silib.h
│   │   │   ├── ssi_aes.h
│   │   │   ├── ssi_aes_defs.h
│   │   │   ├── ssi_aes_error.h
│   │   │   ├── ssi_pal_types.h
│   │   │   └── ssi_pal_types_plat.h
│   │   ├── lib
│   │   │   ├── cortex-m4
│   │   │   └── license.txt
│   │   └── license.txt
│   ├── nrf_oberon
│   │   ├── include
│   │   │   ├── mbedtls
│   │   │   ├── ocrypto_aes_cbc.h
│   │   │   ├── ocrypto_aes_ccm.h
│   │   │   ├── ocrypto_aes_cmac.h
│   │   │   ├── ocrypto_aes_ctr.h
│   │   │   ├── ocrypto_aes_eax.h
│   │   │   ├── ocrypto_aes_gcm.h
│   │   │   ├── ocrypto_aes_key.h
│   │   │   ├── ocrypto_chacha20.h
│   │   │   ├── ocrypto_chacha20_poly1305.h
│   │   │   ├── ocrypto_chacha20_poly1305_inc.h
│   │   │   ├── ocrypto_constant_time.h
│   │   │   ├── ocrypto_curve25519.h
│   │   │   ├── ocrypto_curve_p256.h
│   │   │   ├── ocrypto_ecdh_p256.h
│   │   │   ├── ocrypto_ecdsa_p256.h
│   │   │   ├── ocrypto_ecjpake_p256.h
│   │   │   ├── ocrypto_ed25519.h
│   │   │   ├── ocrypto_hkdf_sha1.h
│   │   │   ├── ocrypto_hkdf_sha256.h
│   │   │   ├── ocrypto_hkdf_sha512.h
│   │   │   ├── ocrypto_hmac_sha1.h
│   │   │   ├── ocrypto_hmac_sha256.h
│   │   │   ├── ocrypto_hmac_sha512.h
│   │   │   ├── ocrypto_poly1305.h
│   │   │   ├── ocrypto_rsa.h
│   │   │   ├── ocrypto_rsa_key.h
│   │   │   ├── ocrypto_sc_p256.h
│   │   │   ├── ocrypto_sha1.h
│   │   │   ├── ocrypto_sha256.h
│   │   │   ├── ocrypto_sha512.h
│   │   │   ├── ocrypto_srp.h
│   │   │   └── ocrypto_srtp.h
│   │   ├── lib
│   │   │   ├── cortex-m0
│   │   │   ├── cortex-m33
│   │   │   ├── cortex-m33 nodsp
│   │   │   ├── cortex-m4
│   │   │   └── license.txt
│   │   └── license.txt
│   ├── nrf_tls
│   │   ├── mbedtls
│   │   │   ├── dtls
│   │   │   ├── nrf_crypto
│   │   │   ├── tls
│   │   │   └── tls_interface.c
│   │   └── nrf_tls.h
│   ├── protothreads
│   │   ├── nrf_pt.h
│   │   └── pt-1.4
│   │       ├── Makefile
│   │       ├── README
│   │       ├── README-VISUAL-C .txt
│   │       ├── doc
│   │       ├── example-buffer.c
│   │       ├── example-codelock.c
│   │       ├── example-small.c
│   │       ├── lc-addrlabels.h
│   │       ├── lc-switch.h
│   │       ├── lc.h
│   │       ├── pt-sem.h
│   │       └── pt.h
│   ├── segger_rtt
│   │   ├── SEGGER_RTT.c
│   │   ├── SEGGER_RTT.h
│   │   ├── SEGGER_RTT_Conf.h
│   │   ├── SEGGER_RTT_Syscalls_GCC.c
│   │   ├── SEGGER_RTT_Syscalls_IAR.c
│   │   ├── SEGGER_RTT_Syscalls_KEIL.c
│   │   ├── SEGGER_RTT_Syscalls_SES.c
│   │   ├── SEGGER_RTT_printf.c
│   │   └── license
│   │       └── license.txt
│   ├── thedotfactory_fonts
│   │   ├── SIL-License.txt
│   │   ├── nrf_font.h
│   │   ├── orkney24pts.c
│   │   └── orkney8pts.c
│   ├── tile
│   │   ├── tile_lib
│   │   │   ├── crypto
│   │   │   ├── drivers
│   │   │   ├── modules
│   │   │   ├── tile_lib.h
│   │   │   └── tile_lib.lib
│   │   └── tile_shim
│   │       ├── tile_assert
│   │       ├── tile_bdaddr
│   │       ├── tile_config.h
│   │       ├── tile_features
│   │       ├── tile_gatt_db
│   │       ├── tile_player
│   │       ├── tile_service
│   │       └── tile_storage
│   └── utf_converter
│       ├── LICENSE
│       ├── utf.c
│       └── utf.h
├── integration
│   └── nrfx
│       ├── legacy
│       │   ├── apply_old_config.h
│       │   ├── nrf_drv_clock.c
│       │   ├── nrf_drv_clock.h
│       │   ├── nrf_drv_common.h
│       │   ├── nrf_drv_comp.h
│       │   ├── nrf_drv_gpiote.h
│       │   ├── nrf_drv_i2s.h
│       │   ├── nrf_drv_lpcomp.h
│       │   ├── nrf_drv_pdm.h
│       │   ├── nrf_drv_power.c
│       │   ├── nrf_drv_power.h
│       │   ├── nrf_drv_ppi.c
│       │   ├── nrf_drv_ppi.h
│       │   ├── nrf_drv_pwm.h
│       │   ├── nrf_drv_qdec.h
│       │   ├── nrf_drv_qspi.h
│       │   ├── nrf_drv_rng.c
│       │   ├── nrf_drv_rng.h
│       │   ├── nrf_drv_rtc.h
│       │   ├── nrf_drv_saadc.h
│       │   ├── nrf_drv_spi.c
│       │   ├── nrf_drv_spi.h
│       │   ├── nrf_drv_spis.c
│       │   ├── nrf_drv_spis.h
│       │   ├── nrf_drv_swi.c
│       │   ├── nrf_drv_swi.h
│       │   ├── nrf_drv_systick.h
│       │   ├── nrf_drv_timer.h
│       │   ├── nrf_drv_twi.c
│       │   ├── nrf_drv_twi.h
│       │   ├── nrf_drv_twis.h
│       │   ├── nrf_drv_uart.c
│       │   ├── nrf_drv_uart.h
│       │   ├── nrf_drv_usbd.h
│       │   ├── nrf_drv_usbd_errata.h
│       │   └── nrf_drv_wdt.h
│       ├── nrfx_config.h
│       ├── nrfx_glue.h
│       └── nrfx_log.h
├── keilclear.bat
├── modules
│   └── nrfx
│       ├── CHANGELOG.md
│       ├── LICENSE
│       ├── README.md
│       ├── doc
│       │   ├── buildfiles
│       │   ├── drv_supp_matrix.dox
│       │   ├── generate_html_doc.bat
│       │   ├── generate_html_doc.sh
│       │   ├── main_page.dox
│       │   ├── nrf51_series.dox
│       │   ├── nrf52810.dox
│       │   ├── nrf52820.dox
│       │   ├── nrf52832.dox
│       │   ├── nrf52833.dox
│       │   ├── nrf52840.dox
│       │   ├── nrf9160.dox
│       │   ├── nrfx.doxyfile
│       │   └── nrfx_api.dox
│       ├── drivers
│       │   ├── include
│       │   ├── nrfx_common.h
│       │   ├── nrfx_errors.h
│       │   └── src
│       ├── hal
│       │   ├── nrf_aar.h
│       │   ├── nrf_acl.h
│       │   ├── nrf_adc.h
│       │   ├── nrf_bprot.h
│       │   ├── nrf_ccm.h
│       │   ├── nrf_clock.h
│       │   ├── nrf_comp.h
│       │   ├── nrf_dppi.h
│       │   ├── nrf_ecb.c
│       │   ├── nrf_ecb.h
│       │   ├── nrf_egu.h
│       │   ├── nrf_ficr.h
│       │   ├── nrf_gpio.h
│       │   ├── nrf_gpiote.h
│       │   ├── nrf_i2s.h
│       │   ├── nrf_kmu.h
│       │   ├── nrf_lpcomp.h
│       │   ├── nrf_mpu.h
│       │   ├── nrf_mwu.h
│       │   ├── nrf_nfct.h
│       │   ├── nrf_nvmc.c
│       │   ├── nrf_nvmc.h
│       │   ├── nrf_pdm.h
│       │   ├── nrf_power.h
│       │   ├── nrf_ppi.h
│       │   ├── nrf_pwm.h
│       │   ├── nrf_qdec.h
│       │   ├── nrf_qspi.h
│       │   ├── nrf_radio.h
│       │   ├── nrf_regulators.h
│       │   ├── nrf_rng.h
│       │   ├── nrf_rtc.h
│       │   ├── nrf_saadc.h
│       │   ├── nrf_spi.h
│       │   ├── nrf_spim.h
│       │   ├── nrf_spis.h
│       │   ├── nrf_spu.h
│       │   ├── nrf_systick.h
│       │   ├── nrf_temp.h
│       │   ├── nrf_timer.h
│       │   ├── nrf_twi.h
│       │   ├── nrf_twim.h
│       │   ├── nrf_twis.h
│       │   ├── nrf_uart.h
│       │   ├── nrf_uarte.h
│       │   ├── nrf_usbd.h
│       │   ├── nrf_vmc.h
│       │   └── nrf_wdt.h
│       ├── helpers
│       │   └── nrfx_gppi.h
│       ├── mdk
│       │   ├── arm_startup_nrf51.s
│       │   ├── arm_startup_nrf52.s
│       │   ├── arm_startup_nrf52805.s
│       │   ├── arm_startup_nrf52810.s
│       │   ├── arm_startup_nrf52811.s
│       │   ├── arm_startup_nrf52820.s
│       │   ├── arm_startup_nrf52833.s
│       │   ├── arm_startup_nrf52840.s
│       │   ├── arm_startup_nrf5340_application.s
│       │   ├── arm_startup_nrf5340_network.s
│       │   ├── arm_startup_nrf9160.s
│       │   ├── compiler_abstraction.h
│       │   ├── gcc_startup_nrf51.S
│       │   ├── gcc_startup_nrf52.S
│       │   ├── gcc_startup_nrf52805.S
│       │   ├── gcc_startup_nrf52810.S
│       │   ├── gcc_startup_nrf52811.S
│       │   ├── gcc_startup_nrf52820.S
│       │   ├── gcc_startup_nrf52833.S
│       │   ├── gcc_startup_nrf52840.S
│       │   ├── gcc_startup_nrf5340_application.S
│       │   ├── gcc_startup_nrf5340_network.S
│       │   ├── gcc_startup_nrf9160.S
│       │   ├── iar_startup_nrf51.s
│       │   ├── iar_startup_nrf52.s
│       │   ├── iar_startup_nrf52805.s
│       │   ├── iar_startup_nrf52810.s
│       │   ├── iar_startup_nrf52811.s
│       │   ├── iar_startup_nrf52820.s
│       │   ├── iar_startup_nrf52833.s
│       │   ├── iar_startup_nrf52840.s
│       │   ├── iar_startup_nrf5340_application.s
│       │   ├── iar_startup_nrf5340_network.s
│       │   ├── iar_startup_nrf9160.s
│       │   ├── nrf.h
│       │   ├── nrf51.h
│       │   ├── nrf51.svd
│       │   ├── nrf51422_peripherals.h
│       │   ├── nrf51422_xxaa.ld
│       │   ├── nrf51422_xxab.ld
│       │   ├── nrf51422_xxac.ld
│       │   ├── nrf51801_peripherals.h
│       │   ├── nrf51801_xxab.ld
│       │   ├── nrf51802_peripherals.h
│       │   ├── nrf51802_xxaa.ld
│       │   ├── nrf51822_peripherals.h
│       │   ├── nrf51822_xxaa.ld
│       │   ├── nrf51822_xxab.ld
│       │   ├── nrf51822_xxac.ld
│       │   ├── nrf51824_peripherals.h
│       │   ├── nrf51824_xxaa.ld
│       │   ├── nrf51_bitfields.h
│       │   ├── nrf51_common.ld
│       │   ├── nrf51_deprecated.h
│       │   ├── nrf51_erratas.h
│       │   ├── nrf51_peripherals.h
│       │   ├── nrf51_to_nrf52.h
│       │   ├── nrf51_to_nrf52810.h
│       │   ├── nrf51_to_nrf52840.h
│       │   ├── nrf51_xxaa.ld
│       │   ├── nrf51_xxab.ld
│       │   ├── nrf51_xxac.ld
│       │   ├── nrf52.h
│       │   ├── nrf52.svd
│       │   ├── nrf52805.h
│       │   ├── nrf52805.svd
│       │   ├── nrf52805_bitfields.h
│       │   ├── nrf52805_peripherals.h
│       │   ├── nrf52805_xxaa.ld
│       │   ├── nrf52810.h
│       │   ├── nrf52810.svd
│       │   ├── nrf52810_bitfields.h
│       │   ├── nrf52810_name_change.h
│       │   ├── nrf52810_peripherals.h
│       │   ├── nrf52810_to_nrf52811.h
│       │   ├── nrf52810_xxaa.ld
│       │   ├── nrf52811.h
│       │   ├── nrf52811.svd
│       │   ├── nrf52811_bitfields.h
│       │   ├── nrf52811_peripherals.h
│       │   ├── nrf52811_xxaa.ld
│       │   ├── nrf52820.h
│       │   ├── nrf52820.svd
│       │   ├── nrf52820_bitfields.h
│       │   ├── nrf52820_peripherals.h
│       │   ├── nrf52820_xxaa.ld
│       │   ├── nrf52832_peripherals.h
│       │   ├── nrf52832_xxaa.ld
│       │   ├── nrf52832_xxab.ld
│       │   ├── nrf52833.h
│       │   ├── nrf52833.svd
│       │   ├── nrf52833_bitfields.h
│       │   ├── nrf52833_peripherals.h
│       │   ├── nrf52833_to_nrf52820.h
│       │   ├── nrf52833_xxaa.ld
│       │   ├── nrf52840.h
│       │   ├── nrf52840.svd
│       │   ├── nrf52840_bitfields.h
│       │   ├── nrf52840_peripherals.h
│       │   ├── nrf52840_xxaa.ld
│       │   ├── nrf52_bitfields.h
│       │   ├── nrf52_common.ld
│       │   ├── nrf52_erratas.h
│       │   ├── nrf52_name_change.h
│       │   ├── nrf52_to_nrf52810.h
│       │   ├── nrf52_to_nrf52833.h
│       │   ├── nrf52_to_nrf52840.h
│       │   ├── nrf52_xxaa.ld
│       │   ├── nrf5340_application.h
│       │   ├── nrf5340_application.svd
│       │   ├── nrf5340_application_bitfields.h
│       │   ├── nrf5340_application_peripherals.h
│       │   ├── nrf5340_network.h
│       │   ├── nrf5340_network.svd
│       │   ├── nrf5340_network_bitfields.h
│       │   ├── nrf5340_network_peripherals.h
│       │   ├── nrf5340_xxaa_application.ld
│       │   ├── nrf5340_xxaa_network.ld
│       │   ├── nrf53_erratas.h
│       │   ├── nrf9160.h
│       │   ├── nrf9160.svd
│       │   ├── nrf9160_bitfields.h
│       │   ├── nrf9160_name_change.h
│       │   ├── nrf9160_peripherals.h
│       │   ├── nrf9160_xxaa.ld
│       │   ├── nrf91_erratas.h
│       │   ├── nrf_common.ld
│       │   ├── nrf_erratas.h
│       │   ├── nrf_peripherals.h
│       │   ├── ses_startup_nrf51.s
│       │   ├── ses_startup_nrf52.s
│       │   ├── ses_startup_nrf52805.s
│       │   ├── ses_startup_nrf52810.s
│       │   ├── ses_startup_nrf52811.s
│       │   ├── ses_startup_nrf52820.s
│       │   ├── ses_startup_nrf52833.s
│       │   ├── ses_startup_nrf52840.s
│       │   ├── ses_startup_nrf5340_application.s
│       │   ├── ses_startup_nrf5340_network.s
│       │   ├── ses_startup_nrf9160.s
│       │   ├── ses_startup_nrf_common.s
│       │   ├── startup_config.h
│       │   ├── system_nrf.h
│       │   ├── system_nrf51.c
│       │   ├── system_nrf51.h
│       │   ├── system_nrf52.c
│       │   ├── system_nrf52.h
│       │   ├── system_nrf52805.c
│       │   ├── system_nrf52805.h
│       │   ├── system_nrf52810.c
│       │   ├── system_nrf52810.h
│       │   ├── system_nrf52811.c
│       │   ├── system_nrf52811.h
│       │   ├── system_nrf52820.c
│       │   ├── system_nrf52820.h
│       │   ├── system_nrf52833.c
│       │   ├── system_nrf52833.h
│       │   ├── system_nrf52840.c
│       │   ├── system_nrf52840.h
│       │   ├── system_nrf5340_application.c
│       │   ├── system_nrf5340_application.h
│       │   ├── system_nrf5340_network.c
│       │   ├── system_nrf5340_network.h
│       │   ├── system_nrf9160.c
│       │   └── system_nrf9160.h
│       ├── nrfx.h
│       ├── soc
│       │   ├── nrfx_atomic.c
│       │   ├── nrfx_atomic.h
│       │   ├── nrfx_atomic_internal.h
│       │   ├── nrfx_coredep.h
│       │   ├── nrfx_irqs.h
│       │   ├── nrfx_irqs_nrf51.h
│       │   ├── nrfx_irqs_nrf52810.h
│       │   ├── nrfx_irqs_nrf52811.h
│       │   ├── nrfx_irqs_nrf52820.h
│       │   ├── nrfx_irqs_nrf52832.h
│       │   ├── nrfx_irqs_nrf52833.h
│       │   ├── nrfx_irqs_nrf52840.h
│       │   └── nrfx_irqs_nrf9160.h
│       └── templates
│           ├── nRF51
│           ├── nRF52810
│           ├── nRF52811
│           ├── nRF52820
│           ├── nRF52832
│           ├── nRF52833
│           ├── nRF52840
│           ├── nRF9160
│           ├── nrfx_glue.h
│           └── nrfx_log.h
├── nRF52832蓝牙串口透传_ble_app_uarts.zip
└── project
    ├── config
    │   └── sdk_config.h
    └── mdk5
        ├── EventRecorderStub.scvd
        ├── Listings
        │   ├── arm_startup_nrf52.lst
        │   └── nrf52832_qfaa.map
        ├── Objects
        │   ├── ExtDll.iex
        │   ├── app_button.crf
        │   ├── app_button.d
        │   ├── app_button.o
        │   ├── app_error.crf
        │   ├── app_error.d
        │   ├── app_error.o
        │   ├── app_error_handler_keil.crf
        │   ├── app_error_handler_keil.d
        │   ├── app_error_handler_keil.o
        │   ├── app_error_weak.crf
        │   ├── app_error_weak.d
        │   ├── app_error_weak.o
        │   ├── app_fifo.crf
        │   ├── app_fifo.d
        │   ├── app_fifo.o
        │   ├── app_scheduler.crf
        │   ├── app_scheduler.d
        │   ├── app_scheduler.o
        │   ├── app_timer2.crf
        │   ├── app_timer2.d
        │   ├── app_timer2.o
        │   ├── app_uart_fifo.crf
        │   ├── app_uart_fifo.d
        │   ├── app_uart_fifo.o
        │   ├── app_util_platform.crf
        │   ├── app_util_platform.d
        │   ├── app_util_platform.o
        │   ├── arm_startup_nrf52.d
        │   ├── arm_startup_nrf52.o
        │   ├── ble_advdata.crf
        │   ├── ble_advdata.d
        │   ├── ble_advdata.o
        │   ├── ble_advertising.crf
        │   ├── ble_advertising.d
        │   ├── ble_advertising.o
        │   ├── ble_app_uarts_IK-52832DK.dep
        │   ├── ble_conn_params.crf
        │   ├── ble_conn_params.d
        │   ├── ble_conn_params.o
        │   ├── ble_conn_state.crf
        │   ├── ble_conn_state.d
        │   ├── ble_conn_state.o
        │   ├── ble_srv_common.crf
        │   ├── ble_srv_common.d
        │   ├── ble_srv_common.o
        │   ├── boards.crf
        │   ├── boards.d
        │   ├── boards.o
        │   ├── bsp.crf
        │   ├── bsp.d
        │   ├── bsp.o
        │   ├── drv_rtc.crf
        │   ├── drv_rtc.d
        │   ├── drv_rtc.o
        │   ├── hardfault_implementation.crf
        │   ├── hardfault_implementation.d
        │   ├── hardfault_implementation.o
        │   ├── main.crf
        │   ├── main.d
        │   ├── main.o
        │   ├── my_ble_uarts.crf
        │   ├── my_ble_uarts.d
        │   ├── my_ble_uarts.o
        │   ├── nrf52832_qfaa.axf
        │   ├── nrf52832_qfaa.build_log.htm
        │   ├── nrf52832_qfaa.hex
        │   ├── nrf52832_qfaa.htm
        │   ├── nrf52832_qfaa.lnp
        │   ├── nrf52832_qfaa.sct
        │   ├── nrf_assert.crf
        │   ├── nrf_assert.d
        │   ├── nrf_assert.o
        │   ├── nrf_atfifo.crf
        │   ├── nrf_atfifo.d
        │   ├── nrf_atfifo.o
        │   ├── nrf_atflags.crf
        │   ├── nrf_atflags.d
        │   ├── nrf_atflags.o
        │   ├── nrf_atomic.crf
        │   ├── nrf_atomic.d
        │   ├── nrf_atomic.o
        │   ├── nrf_balloc.crf
        │   ├── nrf_balloc.d
        │   ├── nrf_balloc.o
        │   ├── nrf_ble_gatt.crf
        │   ├── nrf_ble_gatt.d
        │   ├── nrf_ble_gatt.o
        │   ├── nrf_ble_qwr.crf
        │   ├── nrf_ble_qwr.d
        │   ├── nrf_ble_qwr.o
        │   ├── nrf_drv_clock.crf
        │   ├── nrf_drv_clock.d
        │   ├── nrf_drv_clock.o
        │   ├── nrf_drv_uart.crf
        │   ├── nrf_drv_uart.d
        │   ├── nrf_drv_uart.o
        │   ├── nrf_fprintf.crf
        │   ├── nrf_fprintf.d
        │   ├── nrf_fprintf.o
        │   ├── nrf_fprintf_format.crf
        │   ├── nrf_fprintf_format.d
        │   ├── nrf_fprintf_format.o
        │   ├── nrf_log_backend_rtt.crf
        │   ├── nrf_log_backend_rtt.d
        │   ├── nrf_log_backend_rtt.o
        │   ├── nrf_log_backend_serial.crf
        │   ├── nrf_log_backend_serial.d
        │   ├── nrf_log_backend_serial.o
        │   ├── nrf_log_backend_uart.crf
        │   ├── nrf_log_backend_uart.d
        │   ├── nrf_log_backend_uart.o
        │   ├── nrf_log_default_backends.crf
        │   ├── nrf_log_default_backends.d
        │   ├── nrf_log_default_backends.o
        │   ├── nrf_log_frontend.crf
        │   ├── nrf_log_frontend.d
        │   ├── nrf_log_frontend.o
        │   ├── nrf_log_str_formatter.crf
        │   ├── nrf_log_str_formatter.d
        │   ├── nrf_log_str_formatter.o
        │   ├── nrf_memobj.crf
        │   ├── nrf_memobj.d
        │   ├── nrf_memobj.o
        │   ├── nrf_pwr_mgmt.crf
        │   ├── nrf_pwr_mgmt.d
        │   ├── nrf_pwr_mgmt.o
        │   ├── nrf_ringbuf.crf
        │   ├── nrf_ringbuf.d
        │   ├── nrf_ringbuf.o
        │   ├── nrf_sdh.crf
        │   ├── nrf_sdh.d
        │   ├── nrf_sdh.o
        │   ├── nrf_sdh_ble.crf
        │   ├── nrf_sdh_ble.d
        │   ├── nrf_sdh_ble.o
        │   ├── nrf_sdh_soc.crf
        │   ├── nrf_sdh_soc.d
        │   ├── nrf_sdh_soc.o
        │   ├── nrf_section_iter.crf
        │   ├── nrf_section_iter.d
        │   ├── nrf_section_iter.o
        │   ├── nrf_sortlist.crf
        │   ├── nrf_sortlist.d
        │   ├── nrf_sortlist.o
        │   ├── nrf_strerror.crf
        │   ├── nrf_strerror.d
        │   ├── nrf_strerror.o
        │   ├── nrfx_atomic.crf
        │   ├── nrfx_atomic.d
        │   ├── nrfx_atomic.o
        │   ├── nrfx_clock.crf
        │   ├── nrfx_clock.d
        │   ├── nrfx_clock.o
        │   ├── nrfx_gpiote.crf
        │   ├── nrfx_gpiote.d
        │   ├── nrfx_gpiote.o
        │   ├── nrfx_prs.crf
        │   ├── nrfx_prs.d
        │   ├── nrfx_prs.o
        │   ├── nrfx_uart.crf
        │   ├── nrfx_uart.d
        │   ├── nrfx_uart.o
        │   ├── nrfx_uarte.crf
        │   ├── nrfx_uarte.d
        │   ├── nrfx_uarte.o
        │   ├── retarget.crf
        │   ├── retarget.d
        │   ├── retarget.o
        │   ├── segger_rtt.crf
        │   ├── segger_rtt.d
        │   ├── segger_rtt.o
        │   ├── segger_rtt_printf.crf
        │   ├── segger_rtt_printf.d
        │   ├── segger_rtt_printf.o
        │   ├── segger_rtt_syscalls_keil.crf
        │   ├── segger_rtt_syscalls_keil.d
        │   ├── segger_rtt_syscalls_keil.o
        │   ├── system_nrf52.crf
        │   ├── system_nrf52.d
        │   ├── system_nrf52.o
        │   ├── utf.crf
        │   ├── utf.d
        │   └── utf.o
        ├── RTE
        │   ├── Device
        │   ├── _IK-52832DK
        │   └── _flash_s132_nrf52_7.2.0_softdevice
        ├── ble_app_uarts.uvguix.ZShuo
        ├── ble_app_uarts.uvoptx
        └── ble_app_uarts.uvprojx

427 directories, 1367 files



标签: NRF52832 NRF 32 RF 蓝牙

实例下载地址

nRF52832的蓝牙串口透传实例代码

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警