xiazai linux bt demo

[email protected]:~$
[email protected]:~$
[email protected]:~$
[email protected]:~$ ls
Desktop    Downloads  esp-project  Pictures  Sandstorm  Videos
Documents  esp        Music        Public    Templates
[email protected]:~$ ls
Desktop    Downloads  esp-project  Pictures  Sandstorm  Videos
Documents  esp        Music        Public    Templates
[email protected]:~$
[email protected]:~$
[email protected]:~$ ls
Desktop    Downloads  esp-project  Pictures  Sandstorm  Videos
Documents  esp        Music        Public    Templates
[email protected]:~$ cd esp
[email protected]:~/esp$ git clone https://github.com/whyengineer/esp32_bt_speaker.git
Cloning into ‘esp32_bt_speaker‘...
remote: Counting objects: 45, done.
remote: Compressing objects: 100% (40/40), done.
remote: Total 45 (delta 2), reused 45 (delta 2), pack-reused 0
Unpacking objects: 100% (45/45), done.
Checking connectivity... done.
[email protected]:~/esp$
[email protected]:~/esp$
[email protected]:~/esp$ ls
esp32_bt_speaker  esp-idf  xtensa-esp32-elf
[email protected]:~/esp$ cd esp-idf/
[email protected]:~/esp/esp-idf$ git checkout origin/release/v2.1
M    components/bt/lib
M    components/esp32/lib
M    components/esptool_py/esptool
Note: checking out ‘origin/release/v2.1‘.

You are in ‘detached HEAD‘ state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

git checkout -b <new-branch-name>

HEAD is now at 7138fb0... Merge branch ‘bugfix/xtal_freq_40_2.1‘ into ‘release/v2.1‘
[email protected]:~/esp/esp-idf$ git branch
* (HEAD detached at origin/release/v2.1)
  master
[email protected]:~/esp/esp-idf$ git pull origin release/v2.1
From https://github.com/espressif/esp-idf
 * branch            release/v2.1 -> FETCH_HEAD
Already up-to-date.
[email protected]:~/esp/esp-idf$ git branch
* (HEAD detached at origin/release/v2.1)
  master
[email protected]:~/esp/esp-idf$ git checkout release/v2.1
M    components/bt/lib
M    components/esp32/lib
M    components/esptool_py/esptool
Branch release/v2.1 set up to track remote branch release/v2.1 from origin.
Switched to a new branch ‘release/v2.1‘
[email protected]:~/esp/esp-idf$
[email protected]:~/esp/esp-idf$
[email protected]:~/esp/esp-idf$ git branch
  master
* release/v2.1
[email protected]:~/esp/esp-idf$
[email protected]:~/esp/esp-idf$
[email protected]:~/esp/esp-idf$ git submodule update
Submodule path ‘components/bt/lib‘: checked out ‘8afa935db1ab30583d5178ac28d88a13c92570eb‘
Submodule path ‘components/esp32/lib‘: checked out ‘c225bf8bcae52652733d577e37fa1affe370caf4‘
Submodule path ‘components/esptool_py/esptool‘: checked out ‘582a069ebadb5a2a97edee0e798f5190ff58845f‘
[email protected]:~/esp/esp-idf$
[email protected]:~/esp/esp-idf$ ls
add_path.sh  CONTRIBUTING.rst  examples  LICENSE  README.md
components   docs              Kconfig   make     tools
[email protected]:~/esp/esp-idf$ cd ..
[email protected]:~/esp$ ls
esp32_bt_speaker  esp-idf  xtensa-esp32-elf
[email protected]:~/esp$ cd esp32_bt_speaker/
[email protected]:~/esp/esp32_bt_speaker$ make menuconfig
MENUCONFIG

*** End of the configuration.
*** Execute ‘make‘ to start the build or try ‘make help‘.

GENCONFIG
[email protected]:~/esp/esp32_bt_speaker$ make -j8
Building partitions from /home/th/esp/esp-idf/components/partition_table/partitions_singleapp.csv...
CC bt_app_core.o
CC tcp.o
CC esp_ota_ops.o
CC src/efuse.o
CC libcoap/src/address.o
CC bt.o
CC src/efuse.o
CXX cxx_guards.o
CC src/bootloader_flash.o
CC libcoap/src/async.o
CC wm8978.o
AR libapp_update.a
CC bluedroid/bta/dm/bta_dm_api.o
CC bt_speaker.o
CC src/bootloader_flash.o
CC spi_master.o
CC src/secure_boot_signatures.o
/home/th/esp/esp32_bt_speaker/components/bsp/./wm8978.c:105:13: warning: ‘wm8979_loopback‘ defined but not used [-Wunused-function]
 static void wm8979_loopback()
             ^
CC src/secure_boot_signatures.o
CC bt_app_av.o
CC libcoap/src/block.o
CC src/secure_boot.o
CC src/secure_boot.o
AR libbsp.a
CC panic.o
CC src/flash_partitions.o
AR libbt_speaker.a
CC src/flash_partitions.o
CC libcoap/src/coap_time.o
CC event.o
CC src/esp_image_format.o
CC src/esp_image_format.o
CC libcoap/src/debug.o
CC sigmadelta.o
CC src/flash_encrypt.o
CC core_dump.o
CC eth.o
CC src/flash_encrypt.o
CC uart.o
CC lib_printf.o
CC src/bootloader_random.o
CC wifi.o
CC libcoap/src/encode.o
CC task_wdt.o
CC src/bootloader_random.o
AR libbootloader_support.a
CC log.o
CC bluedroid/bta/dm/bta_dm_sco.o
CC libcoap/src/hashkey.o
AR liblog.a
AR libespressif.a
CC spi_flash_rom_patch.o
CC emac_dev.o
AR libcxx.a
CC library/xmltok.o
CC libcoap/src/mem.o
CC system_api.o
AR libbootloader_support.a
CC bluedroid/bta/dm/bta_dm_ci.o
CC src/option/syscall.o
CC libcoap/src/net.o
CC src/option/unicode.o
CC emac_main.o
CC src/ff.o
AR libspi_flash.a
CC bluedroid/bta/dm/bta_dm_act.o
CC micro-ecc/uECC.o
CC gdbstub.o
CC phy_init.o
CC i2s.o
CC libcoap/src/option.o
CC eth_phy/phy_common.o
CC deep_sleep.o
CC eth_phy/phy_lan8720.o
CC eth_phy/phy_tlk110.o
CC libcoap/src/pdu.o
CC cpu_start.o
AR libethernet.a
AR libmicro-ecc.a
CC ringbuf.o
CC esp32/rtc_pm.o
CC esp32/cpu_util.o
CC esp32/brownout.o
CC libcoap/src/resource.o
CC esp32/rtc_init.o
CC src/vfs_fat_sdmmc.o
CC periph_ctrl.o
CC esp32/rtc_sleep.o
CC heap_alloc_caps.o
CC heap_regions_debug.o
CC src/diskio_sdmmc.o
CC esp32/rtc_time.o
CC xtensa_intr.o
CC ledc.o
CC freertos_hooks.o
CC esp32/rtc_clk.o
CC queue.o
CC crosscore_int.o
CC src/vfs_fat_spiflash.o
CC libcoap/src/str.o
CC cache_err_int.o
CC libcoap/src/subscribe.o
AR libsoc.a
CC src/diskio_spiflash.o
CC bootloader_start.o
CC ipc.o
CC croutine.o
CC libcoap/src/uri.o
CC intr_alloc.o
CC src/vfs_fat.o
CC spi_common.o
CC list.o
CC flash_qio_mode.o
CC xtensa_init.o
CC port/coap_io_socket.o
CC bluedroid/bta/dm/bta_dm_pm.o
CC port.o
AR libmain.a
CC app_trace.o
LD bootloader.elf
CC src/diskio.o
AR libcoap.a
CC bluedroid/bta/dm/bta_dm_main.o
CC heap_regions.o
CC hal_i2s.o
CC event_loop.o
CC gpio.o
AR libfatfs.a
CC event_groups.o
CC src//jsmn.o
CC hal_eth.o
CC clk.o
CC bluedroid/bta/dm/bta_dm_cfg.o
esptool.py v2.0
CC bluedroid/bta/gatt/bta_gatts_main.o
AR libjsmn.a
CC hw_random.o
CC library/cJSON.o
CC tasks.o
CC hal_i2c.o
CC dport_access.o
CC bluedroid/bta/gatt/bta_gatts_api.o
CC bluedroid/bta/gatt/bta_gattc_cache.o
CC library/xmlparse.o
CC timer.o
AR libhal.a
CC restore.o
CC event_default_handlers.o
CC bluedroid/bta/gatt/bta_gattc_main.o
CC private/randombytes_esp32.o
CC libsodium/src/libsodium/crypto_aead/chacha20poly1305/sodium/aead_chacha20poly1305.o
CC pcnt.o
CC int_wdt.o
CC bluedroid/bta/gatt/bta_gattc_api.o
CC bluedroid/bta/gatt/bta_gatts_utils.o
CC port/cJSON_Utils.o
CC hwcrypto/sha.o
CC libsodium/src/libsodium/crypto_aead/xchacha20poly1305/sodium/aead_xchacha20poly1305.o
CC timers.o
CC libsodium/src/libsodium/crypto_auth/crypto_auth.o
CC rmt.o
CC bluedroid/bta/gatt/bta_gattc_act.o
CC hwcrypto/aes.o
CC libsodium/src/libsodium/crypto_auth/hmacsha256/auth_hmacsha256.o
CC FreeRTOS-openocd.o
AR libesp32.a
CC bluedroid/bta/gatt/bta_gattc_ci.o
AR libjson.a
CC log.o
CC libsodium/src/libsodium/crypto_auth/hmacsha512/auth_hmacsha512.o
CC api/pppapi.o
CC xtensa_overlay_os_hook.o
CC libsodium/src/libsodium/crypto_auth/hmacsha512256/auth_hmacsha512256.o
CC api/netdb.o
AS xtensa_context.o
CC bluedroid/bta/gatt/bta_gatts_act.o
AR liblog.a
CC libsodium/src/libsodium/crypto_box/crypto_box_seal.o
AS portasm.o
CC library/pk_wrap.o
AS xtensa_vectors.o
CC libsodium/src/libsodium/crypto_box/crypto_box.o
AS xtensa_intr_asm.o
CC api/api_lib.o
CC libsodium/src/libsodium/crypto_box/crypto_box_easy.o
AR libfreertos.a
CC mdns.o
CC library/entropy.o
CC libsodium/src/libsodium/crypto_box/curve25519xsalsa20poly1305/box_curve25519xsalsa20poly1305.o
CC mcpwm.o
CC libsodium/src/libsodium/crypto_core/curve25519/ref10/curve25519_ref10.o
CC library/sha512.o
CC bluedroid/bta/gatt/bta_gattc_utils.o
CC api/netifapi.o
CC bluedroid/bta/hh/bta_hh_api.o
CC api/tcpip.o
CC bluedroid/bta/hh/bta_hh_utils.o
CC bluedroid/bta/hh/bta_hh_le.o
CC api/netbuf.o
CC bluedroid/bta/hh/bta_hh_act.o
CC library/pkcs12.o
CC bluedroid/bta/hh/bta_hh_main.o
CC api/err.o
CC library/xmlrole.o
CC bluedroid/bta/hh/bta_hh_cfg.o
CC bluedroid/bta/sdp/bta_sdp.o
CC api/api_msg.o
CC library/error.o
CC sdmmc_transaction.o
AR libmdns.a
CC micro-ecc/uECC.o
CC bluedroid/bta/sdp/bta_sdp_act.o
CC time.o
CC spi_slave.o
CC reent_init.o
CC library/xmltok_ns.o
CC library/pkcs5.o
CC syscalls.o
CC library/xmltok_impl.o
CC port/minicheck.o
CC syscall_table.o
CC bluedroid/bta/sdp/bta_sdp_cfg.o
CC library/sha1.o
CC port/expat_element.o
CC locks.o
CC api/sockets.o
CC bluedroid/bta/sdp/bta_sdp_api.o
CC port/chardata.o
CC sdmmc_host.o
AR libnewlib.a
CC nghttp2/lib/nghttp2_http.o
AR libexpat.a
CXX src/nvs_types.o
CC bluedroid/bta/av/bta_av_api.o
CC library/x509_csr.o
AR libmicro-ecc.a
CC library/ssl_cert.o
CC library/ssl_methods.o
CC nghttp2/lib/nghttp2_version.o
CC library/md4.o
CC i2c.o
CC library/x509_crt.o
CC bluedroid/bta/av/bta_av_ssm.o
CC nghttp2/lib/nghttp2_mem.o
CC library/ssl_pkey.o
CC nghttp2/lib/nghttp2_hd_huffman.o
CC library/ssl_x509.o
CC library/ssl_lib.o
CC nghttp2/lib/nghttp2_rcbuf.o
CC bluedroid/bta/av/bta_av_cfg.o
CC nghttp2/lib/nghttp2_callbacks.o
CC bluedroid/bta/av/bta_av_ci.o
CC nghttp2/lib/nghttp2_session.o
CC library/ssl_stack.o
CC rtc_module.o
CC apps/dhcpserver.o
CC bluedroid/bta/av/bta_av_act.o
CC library/ecp.o
CC platform/ssl_pm.o
CXX src/nvs_page.o
CC platform/ssl_port.o
CC apps/sntp/sntp.o
AR libopenssl.a
CC sdmmc_cmd.o
CC apps/ping/ping.o
AR libdriver.a
AR libsdmmc.a
CC flash_mmap.o
CC esp32/rtc_pm.o
CC esp32/cpu_util.o
CC apps/ping/esp_ping.o
CC esp32/brownout.o
CC library/blowfish.o
CC bluedroid/bta/av/bta_av_main.o
CC esp32/rtc_init.o
CC core/mem.o
CC partition.o
CC esp32/rtc_sleep.o
CC library/ssl_ticket.o
CC core/inet_chksum.o
CC spi_flash_rom_patch.o
CC esp32/rtc_time.o
CC library/ecp_curves.o
CC core/init.o
CC esp32/rtc_clk.o
CC core/memp.o
CC bluedroid/bta/av/bta_av_sbc.o
CC cache_utils.o
CC core/sys.o
AR libsoc.a
CC tcpip_adapter_lwip.o
CXX src/nvs_item_hash_list.o
CC bluedroid/bta/av/bta_av_aact.o
CC core/tcp.o
CC flash_ops.o
CC nghttp2/lib/nghttp2_stream.o
AR libspi_flash.a
CC ulp.o
CC library/cipher.o
CC ulp_macro.o
AR libtcpip_adapter.a
CC vfs_uart.o
AR libulp.a
CXX wear_levelling.o
CC vfs.o
CC core/dns.o
CC nghttp2/lib/nghttp2_hd.o
CC library/pkcs11.o
CC library/pk.o
CXX WL_Flash.o
CC library/entropy_poll.o
AR libvfs.a
CC library/x509write_csr.o
CC src/crypto/aes-internal-enc.o
CXX src/nvs_pagemanager.o
CC core/ip.o
CC library/version_features.o
CC bluedroid/bta/ar/bta_ar.o
CC src/crypto/sha256-internal.o
CC library/ripemd160.o
CC libsodium/src/libsodium/crypto_core/hchacha20/core_hchacha20.o
CXX crc32.o
CC core/raw.o
CXX SPI_Flash.o
CC src/crypto/md5-internal.o
CC libsodium/src/libsodium/crypto_core/hsalsa20/ref2/core_hsalsa20_ref2.o
CXX Partition.o
CC bluedroid/bta/sys/bta_sys_main.o
CC nghttp2/lib/nghttp2_priority_spec.o
CC libsodium/src/libsodium/crypto_core/hsalsa20/core_hsalsa20.o
AR libwear_levelling.a
CC core/tcp_in.o
CC eri.o
CC libsodium/src/libsodium/crypto_core/salsa/ref/core_salsa_ref.o
CC src/crypto/aes-internal.o
CC nghttp2/lib/nghttp2_buf.o
CC trax.o
CC library/rsa.o
AR libxtensa-debug-module.a
CC main.o
CC src/crypto/sha1.o
CC libsodium/src/libsodium/crypto_generichash/crypto_generichash.o
CC bluedroid/bta/sys/utl.o
CC nghttp2/lib/nghttp2_option.o
CC libsodium/src/libsodium/crypto_generichash/blake2b/generichash_blake2.o
CC src/crypto/aes-internal-dec.o
/home/th/esp/esp32_bt_speaker/main/./main.c: In function ‘app_main‘:
/home/th/esp/esp32_bt_speaker/main/./main.c:47:15: warning: unused variable ‘err‘ [-Wunused-variable]
     esp_err_t err;
               ^
CC libsodium/src/libsodium/crypto_generichash/blake2b/ref/blake2b-compress-avx2.o
CC nghttp2/lib/nghttp2_npn.o
AR libmain.a
CC bluedroid/bta/sys/bta_sys_conn.o
CC libsodium/src/libsodium/crypto_generichash/blake2b/ref/generichash_blake2b.o
CC nghttp2/lib/nghttp2_helper.o
CC src/crypto/aes-unwrap.o
CC libsodium/src/libsodium/crypto_generichash/blake2b/ref/blake2b-compress-ref.o
CC src/crypto/crypto_internal-rsa.o
CC core/def.o
CC library/net.o
CC src/crypto/des-internal.o
CC nghttp2/lib/nghttp2_outbound_item.o
CC library/md_wrap.o
CC bluedroid/btcore/bdaddr.o
CC src/crypto/dh_group5.o
CC core/netif.o
CC nghttp2/lib/nghttp2_hd_huffman_data.o
CC library/dhm.o
CC src/crypto/ms_funcs.o
CC bluedroid/btif/bta_gattc_co.o
CC src/crypto/aes-wrap.o
CC nghttp2/lib/nghttp2_frame.o
CC core/stats.o
CC src/crypto/sha1-internal.o
CC bluedroid/btif/bta_dm_co.o
CC library/pkwrite.o
CC core/timers.o
CC src/crypto/md4-internal.o
CXX src/nvs_storage.o
CC library/ssl_cli.o
CC bluedroid/btif/bta_gatts_co.o
CC core/pbuf.o
CC src/crypto/dh_groups.o
CC src/crypto/crypto_internal.o
CC nghttp2/lib/nghttp2_debug.o
CC nghttp2/lib/nghttp2_pq.o
CC bluedroid/device/interop.o
CC src/crypto/sha256.o
CC src/crypto/rc4.o
CC bluedroid/device/controller.o
CC nghttp2/lib/nghttp2_queue.o
CC src/crypto/md5.o
CC core/udp.o
CC src/crypto/aes-cbc.o
CC nghttp2/lib/nghttp2_submit.o
CC src/crypto/sha1-pbkdf2.o
CC src/crypto/bignum.o
CC src/crypto/crypto_internal-modexp.o
CC library/timing.o
CC bluedroid/gki/gki_ulinux.o
CC nghttp2/lib/nghttp2_map.o
CC library/asn1parse.o
CC src/crypto/crypto_internal-cipher.o
CC core/tcp_out.o
CC bluedroid/gki/gki_buffer.o
AR libnghttp.a
CC library/padlock.o
CC library/pem.o
CC port/os_xtensa.o
CC library/version.o
CC library/ssl_cache.o
CC bluedroid/hci/buffer_allocator.o
CC bluedroid/hci/hci_hal_h4.o
CC library/memory_buffer_alloc.o
CC library/md2.o
CC bluedroid/hci/hci_packet_parser.o
CC library/ecdsa.o
CC library/ssl_srv.o
AR libwpa_supplicant.a
CC libsodium/src/libsodium/crypto_generichash/blake2b/ref/blake2b-compress-ssse3.o
CC bluedroid/hci/packet_fragmenter.o
CC libsodium/src/libsodium/crypto_generichash/blake2b/ref/blake2b-ref.o
CC core/ipv4/ip_frag.o
CC library/ctr_drbg.o
CC bluedroid/hci/hci_layer.o
CC core/ipv4/dhcp.o
CC bluedroid/hci/hci_packet_factory.o
CXX src/nvs_api.o
CC libsodium/src/libsodium/crypto_generichash/blake2b/ref/blake2b-compress-sse41.o
CC libsodium/src/libsodium/crypto_hash/crypto_hash.o
CC library/ecdh.o
CC libsodium/src/libsodium/crypto_hash/sha256/hash_sha256.o
CC bluedroid/main/bte_main.o
CC libsodium/src/libsodium/crypto_hash/sha256/cp/hash_sha256_cp.o
CC library/asn1write.o
CC bluedroid/main/bte_init.o
CC bluedroid/osi/future.o
CC bluedroid/osi/hash_map.o
CC library/debug.o
CC library/x509_create.o
CC library/ecjpake.o
CC core/ipv4/ip4_addr.o
CC library/oid.o
CC bluedroid/osi/fixed_queue.o
CC libsodium/src/libsodium/crypto_hash/sha512/hash_sha512.o
CC bluedroid/osi/config.o
CC library/md.o
CC libsodium/src/libsodium/crypto_hash/sha512/cp/hash_sha512_cp.o
CC bluedroid/osi/list.o
CC core/ipv4/igmp.o
CC library/ssl_ciphersuites.o
CC library/base64.o
CC bluedroid/osi/hash_functions.o
CC bluedroid/osi/alarm.o
CC library/xtea.o
CC library/aesni.o
CC bluedroid/osi/buffer.o
CC core/ipv4/ip4.o
CC library/cipher_wrap.o
CC library/arc4.o
CC bluedroid/osi/osi_arch.o
CC bluedroid/osi/allocator.o
CC library/bignum.o
CC bluedroid/external/sbc/decoder/srce/bitstream-decode.o
CC library/pkparse.o
CC core/ipv4/autoip.o
CC bluedroid/external/sbc/decoder/srce/synthesis-sbc.o
CC core/ipv4/icmp.o
CC bluedroid/external/sbc/decoder/srce/decoder-oina.o
CC bluedroid/external/sbc/decoder/srce/synthesis-dct8.o
CC bluedroid/external/sbc/decoder/srce/framing.o
CC bluedroid/external/sbc/decoder/srce/dequant.o
CC core/ipv6/ip6_frag.o
CC bluedroid/external/sbc/decoder/srce/alloc.o
CC library/ssl_tls.o
CC bluedroid/external/sbc/decoder/srce/bitalloc.o
CC bluedroid/external/sbc/decoder/srce/bitalloc-sbc.o
CC core/ipv6/dhcp6.o
CC bluedroid/external/sbc/decoder/srce/decoder-private.o
CC bluedroid/external/sbc/decoder/srce/synthesis-8-generated.o
CC libsodium/src/libsodium/crypto_kdf/blake2b/kdf_blake2b.o
CC core/ipv6/inet6.o
AR libnvs_flash.a
CC bluedroid/external/sbc/decoder/srce/framing-sbc.o
CC libsodium/src/libsodium/crypto_kdf/crypto_kdf.o
CC bluedroid/external/sbc/decoder/srce/oi_codec_version.o
CC libsodium/src/libsodium/crypto_kx/crypto_kx.o
CC core/ipv6/ip6_addr.o
CC libsodium/src/libsodium/crypto_onetimeauth/crypto_onetimeauth.o
CC bluedroid/external/sbc/decoder/srce/decoder-sbc.o
CC bluedroid/btc/core/btc_task.o
CC libsodium/src/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305.o
CC libsodium/src/libsodium/crypto_onetimeauth/poly1305/donna/poly1305_donna.o
CC library/threading.o
CC core/ipv6/ip6.o
CC library/x509_crl.o
CC libsodium/src/libsodium/crypto_pwhash/argon2/argon2-core.o
CC bluedroid/btc/core/btc_main.o
CC bluedroid/btc/core/btc_util.o
CC libsodium/src/libsodium/crypto_pwhash/argon2/blake2b-long.o
CC libsodium/src/libsodium/crypto_pwhash/argon2/argon2.o
CC bluedroid/btc/core/btc_storage.o
CC libsodium/src/libsodium/crypto_pwhash/argon2/argon2-fill-block-ref.o
CC library/gcm.o
CC bluedroid/btc/core/btc_ble_storage.o
CC libsodium/src/libsodium/crypto_pwhash/argon2/pwhash_argon2i.o
CC core/ipv6/nd6.o
CC bluedroid/btc/core/btc_sm.o
CC libsodium/src/libsodium/crypto_pwhash/argon2/argon2-fill-block-ssse3.o
CC libsodium/src/libsodium/crypto_pwhash/argon2/argon2-encoding.o
CC library/havege.o
CC bluedroid/btc/core/btc_profile_queue.o
CC bluedroid/btc/core/btc_alarm.o
CC library/x509.o
CC libsodium/src/libsodium/crypto_pwhash/crypto_pwhash.o
CC bluedroid/btc/core/btc_manage.o
CC bluedroid/btc/core/btc_sec.o
CC bluedroid/btc/core/btc_config.o
CC libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/scrypt_platform.o
CC bluedroid/btc/core/btc_dev.o
CC libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/pwhash_scryptsalsa208sha256.o
CC library/certs.o
CC library/md5.o
CC libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/crypto_scrypt-common.o
CC bluedroid/btc/core/btc_dm.o
CC bluedroid/btc/profile/esp/blufi/blufi_prf.o
CC libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/pbkdf2-sha256.o
CC core/ipv6/mld6.o
CC library/camellia.o
CC library/ssl_cookie.o
CC libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/nosse/pwhash_scryptsalsa208sha256_nosse.o
CC bluedroid/btc/profile/esp/blufi/blufi_protocol.o
CC library/ccm.o
CC libsodium/src/libsodium/crypto_scalarmult/crypto_scalarmult.o
CC core/ipv6/ethip6.o
CC libsodium/src/libsodium/crypto_scalarmult/curve25519/scalarmult_curve25519.o
CC library/hmac_drbg.o
CC libsodium/src/libsodium/crypto_scalarmult/curve25519/ref10/x25519_ref10.o
CC library/des.o
CC core/ipv6/icmp6.o
CC bluedroid/btc/profile/std/gap/btc_gap_bt.o
CC bluedroid/btc/profile/std/gap/btc_gap_ble.o
CC libsodium/src/libsodium/crypto_secretbox/crypto_secretbox_easy.o
CC libsodium/src/libsodium/crypto_secretbox/crypto_secretbox.o
CC library/sha256.o
CC libsodium/src/libsodium/crypto_secretbox/xsalsa20poly1305/secretbox_xsalsa20poly1305.o
CC bluedroid/btc/profile/std/gatt/btc_gatts.o
CC netif/slipif.o
CC libsodium/src/libsodium/crypto_shorthash/crypto_shorthash.o
CC libsodium/src/libsodium/crypto_shorthash/siphash24/shorthash_siphashx24.o
CC libsodium/src/libsodium/crypto_shorthash/siphash24/shorthash_siphash24.o
CC libsodium/src/libsodium/crypto_shorthash/siphash24/ref/shorthash_siphash24_ref.o
CC netif/etharp.o
CC libsodium/src/libsodium/crypto_shorthash/siphash24/ref/shorthash_siphashx24_ref.o
CC library/platform.o
CC library/aes.o
CC library/x509write_crt.o
CC libsodium/src/libsodium/crypto_sign/crypto_sign.o
CC libsodium/src/libsodium/crypto_sign/ed25519/sign_ed25519.o
CC libsodium/src/libsodium/crypto_sign/ed25519/ref10/obsolete.o
CC bluedroid/btc/profile/std/gatt/btc_gatt_util.o
CC libsodium/src/libsodium/crypto_sign/ed25519/ref10/sign.o
CC netif/ethernet.o
CC libsodium/src/libsodium/crypto_sign/ed25519/ref10/open.o
CC port/mbedtls_debug.o
CC bluedroid/btc/profile/std/gatt/btc_gattc.o
CC libsodium/src/libsodium/crypto_sign/ed25519/ref10/keypair.o
CC libsodium/src/libsodium/crypto_stream/chacha20/stream_chacha20.o
CC port/esp_sha1.o
CC libsodium/src/libsodium/crypto_stream/chacha20/ref/chacha20_ref.o
CC netif/lowpan6.o
CC port/net.o
CC port/esp_sha256.o
CC bluedroid/btc/profile/std/a2dp/bta_av_co.o
CC port/esp_bignum.o
CC libsodium/src/libsodium/crypto_stream/crypto_stream.o
CC netif/ethernetif.o
CC libsodium/src/libsodium/crypto_stream/salsa20/stream_salsa20.o
CC libsodium/src/libsodium/crypto_stream/salsa20/ref/salsa20_ref.o
CC port/freertos/sys_arch.o
CC libsodium/src/libsodium/crypto_stream/xsalsa20/stream_xsalsa20.o
CC port/esp_hardware.o
CC libsodium/src/libsodium/crypto_verify/sodium/verify.o
CC port/esp_sha512.o
CC libsodium/src/libsodium/randombytes/randombytes.o
CC libsodium/src/libsodium/sodium/core.o
AR libmbedtls.a
CC bluedroid/btc/profile/std/a2dp/btc_media_task.o
CC libsodium/src/libsodium/sodium/version.o
CC port/netif/wlanif.o
CC libsodium/src/libsodium/sodium/runtime.o
CC libsodium/src/libsodium/sodium/utils.o
CC bluedroid/btc/profile/std/a2dp/btc_avk.o
CC bluedroid/stack/btm/btm_ble_batchscan.o
CC bluedroid/btc/profile/std/avrc/btc_avrc.o
CC bluedroid/stack/btm/btm_ble_cont_energy.o
CC bluedroid/stack/btm/btm_sec.o
CC port/netif/ethernetif.o
AR liblibsodium.a
CC bluedroid/stack/btm/btm_ble.o
CC bluedroid/stack/btm/btm_pm.o
CC port/debug/lwip_debug.o
CC bluedroid/stack/btm/btm_ble_adv_filter.o
CC bluedroid/stack/btm/btm_inq.o
CC bluedroid/stack/btm/btm_main.o
CC bluedroid/stack/btm/btm_sco.o
AR liblwip.a
CC bluedroid/stack/btm/btm_ble_privacy.o
CC bluedroid/stack/btm/btm_acl.o
CC bluedroid/stack/btm/btm_ble_bgconn.o
CC bluedroid/stack/btm/btm_dev.o
CC bluedroid/stack/btm/btm_ble_gap.o
CC bluedroid/stack/btm/btm_ble_multi_adv.o
CC bluedroid/stack/btm/btm_ble_addr.o
CC bluedroid/stack/btm/btm_devctl.o
CC bluedroid/stack/btu/btu_hcif.o
CC bluedroid/stack/btu/btu_task.o
CC bluedroid/stack/btu/btu_init.o
CC bluedroid/stack/gap/gap_ble.o
CC bluedroid/stack/gap/gap_conn.o
CC bluedroid/stack/gap/gap_api.o
CC bluedroid/stack/gap/gap_utils.o
CC bluedroid/stack/gatt/gatt_db.o
CC bluedroid/stack/gatt/gatt_cl.o
CC bluedroid/stack/gatt/gatt_attr.o
CC bluedroid/stack/gatt/gatt_main.o
CC bluedroid/stack/gatt/gatt_sr.o
CC bluedroid/stack/gatt/att_protocol.o
CC bluedroid/stack/gatt/gatt_auth.o
CC bluedroid/stack/gatt/gatt_api.o
CC bluedroid/stack/gatt/gatt_utils.o
CC bluedroid/stack/hcic/hciblecmds.o
CC bluedroid/stack/hcic/hcicmds.o
CC bluedroid/stack/l2cap/l2c_ble.o
CC bluedroid/stack/l2cap/l2c_main.o
CC bluedroid/stack/l2cap/l2c_utils.o
CC bluedroid/stack/l2cap/l2c_ucd.o
CC bluedroid/stack/l2cap/l2cap_client.o
CC bluedroid/stack/l2cap/l2c_csm.o
CC bluedroid/stack/l2cap/l2c_link.o
CC bluedroid/stack/l2cap/l2c_fcr.o
CC bluedroid/stack/l2cap/l2c_api.o
CC bluedroid/stack/sdp/sdp_utils.o
CC bluedroid/stack/sdp/sdp_db.o
CC bluedroid/stack/sdp/sdp_discovery.o
CC bluedroid/stack/sdp/sdp_main.o
CC bluedroid/stack/sdp/sdp_server.o
CC bluedroid/stack/sdp/sdp_api.o
CC bluedroid/stack/smp/smp_main.o
CC bluedroid/stack/smp/smp_keys.o
CC bluedroid/stack/smp/smp_api.o
CC bluedroid/stack/smp/smp_utils.o
CC bluedroid/stack/smp/p_256_ecc_pp.o
CC bluedroid/stack/smp/smp_act.o
CC bluedroid/stack/smp/smp_br_main.o
CC bluedroid/stack/smp/aes.o
CC bluedroid/stack/smp/smp_cmac.o
CC bluedroid/stack/smp/p_256_multprecision.o
CC bluedroid/stack/smp/p_256_curvepara.o
CC bluedroid/stack/smp/smp_l2c.o
CC bluedroid/stack/avct/avct_lcb.o
CC bluedroid/stack/avct/avct_lcb_act.o
CC bluedroid/stack/avct/avct_l2c.o
CC bluedroid/stack/avct/avct_api.o
CC bluedroid/stack/avct/avct_ccb.o
CC bluedroid/stack/avrc/avrc_pars_ct.o
CC bluedroid/stack/avrc/avrc_opt.o
CC bluedroid/stack/avrc/avrc_bld_ct.o
CC bluedroid/stack/avrc/avrc_pars_tg.o
CC bluedroid/stack/avrc/avrc_bld_tg.o
CC bluedroid/stack/avrc/avrc_api.o
CC bluedroid/stack/avrc/avrc_utils.o
CC bluedroid/stack/avrc/avrc_sdp.o
CC bluedroid/stack/avdt/avdt_l2c.o
CC bluedroid/stack/avdt/avdt_api.o
CC bluedroid/stack/avdt/avdt_ccb.o
CC bluedroid/stack/avdt/avdt_scb_act.o
CC bluedroid/stack/avdt/avdt_scb.o
CC bluedroid/stack/avdt/avdt_msg.o
CC bluedroid/stack/avdt/avdt_ccb_act.o
CC bluedroid/stack/avdt/avdt_ad.o
CC bluedroid/stack/a2dp/a2d_sbc.o
CC bluedroid/stack/a2dp/a2d_api.o
CC bluedroid/utils/bt_utils.o
CC bluedroid/api/esp_avrc_api.o
CC bluedroid/api/esp_bt_main.o
CC bluedroid/api/esp_bt_device.o
CC bluedroid/api/esp_gap_bt_api.o
CC bluedroid/api/esp_a2dp_api.o
CC bluedroid/api/esp_gatts_api.o
CC bluedroid/api/esp_blufi_api.o
CC bluedroid/api/esp_gap_ble_api.o
CC bluedroid/api/esp_gattc_api.o
AR libbt.a
LD we_esp32.elf
esptool.py v2.0
To flash all build output, run ‘make flash‘ or:
python /home/th/esp/esp-idf/components/esptool_py/esptool/esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 115200 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 0x1000 /home/th/esp/esp32_bt_speaker/build/bootloader/bootloader.bin 0x10000 /home/th/esp/esp32_bt_speaker/build/we_esp32.bin 0x8000 /home/th/esp/esp32_bt_speaker/build/partitions_singleapp.bin
[email protected]:~/esp/esp32_bt_speaker$ sudo make flash monitor
[sudo] password for th:
Sorry, try again.
[sudo] password for th:
Flashing binaries to serial port /dev/ttyUSB0 (app at offset 0x10000)...
esptool.py v2.0
Connecting........___
Chip is ESP32D0WDQ6 (revision 1)
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 14128 bytes to 8281...
Wrote 14128 bytes (8281 compressed) at 0x00001000 in 0.7 seconds (effective 154.5 kbit/s)...
Hash of data verified.
Compressed 1157024 bytes to 596691...
Wrote 1157024 bytes (596691 compressed) at 0x00010000 in 52.6 seconds (effective 176.1 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 82...
Wrote 3072 bytes (82 compressed) at 0x00008000 in 0.0 seconds (effective 2013.9 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting...
MONITOR
--- idf_monitor on /dev/ttyUSB0 115200 ---
--- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
ets Jun  8 2016 00:22:57

rst:0x1 (POWERON_RESET),boot:0x3f (SPI_FAST_FLASH_BOOT)
flash read err, 1000
Falling back to built-in command interpreter.
OK
>ets Jun  8 2016 00:22:57

rst:0x10 (RTCWDT_RTC_RESET),boot:0x3f (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0x00
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0008,len:8
load:0x3fff0010,len:3416
load:0x40078000,len:10384
load:0x40080000,len:252
0x40080000: _iram_start at ??:?

entry 0x40080034
0x40080034: _iram_start at ??:?

I (2176) I2S: DMA Malloc info, datalen=blocksize=1024, dma_buf_count=2
I (2176) I2S: DMA Malloc info, datalen=blocksize=1024, dma_buf_count=2
I (2179) I2S: Req RATE: 44100, real rate: 44642.000, BITS: 16, CLKM: 14, BCK: 8, MCLK: 11289966.924, SCLK: 1428544.000000, diva: 64, divb: 11
W (2371) phy_init: failed to load RF calibration data (0x1102), falling back to full calibration
E (2537) BT: config_parse returned with err code: 2

E (22626) BT: btm_sec_conn_req

E (22631) BT: btm_sec_connected

E (32391) BT: btm_sec_conn_req

E (32396) BT: btm_sec_connected

I (32640) BT_AV: a2dp conn_state_cb, state 1
I (32794) BT_AV: a2dp audio_cfg_cb , codec type 0
I (32795) BT_AV: audio player configured
E (32919) BT: bta_dm_rm_cback:0, status:0
I (32920) BT_AV: a2dp conn_state_cb, state 2
E (32981) BT: process_service_search_attr_rsp

E (33139) BT: bta_av_rc_opened allow incoming AVRCP connections:1
E (33139) BT: bta_av_rc_opened rcb[0] shdl:1 lidx:1/0
I (33142) BT_AV: avrc conn_state evt: state 1, feature 0x49, [68:3e:34:61:42:5b]
E (49126) BT: bta_av_proc_stream_evt: p_data is null
E (49126) BT: bta_av_link_role_ok hndl:x41 role:1 conn_audio:x1 bits:1 features:x8202

E (49129) BT: bta_dm_rm_cback:0, status:0
E (49134) BT: bta_dm_rm_cback:0, status:7
E (49140) BT: BTA_AV_START_EVT status 0, suspending 0, init 0

I (49145) BT_AV: a2dp audio_state_cb state 2
E (49572) BT: Pkt dropped

E (51214) BT_AV: audio data pkt cnt 100
E (53141) BT_AV: audio data pkt cnt 200
E (55080) BT_AV: audio data pkt cnt 300
E (57025) BT_AV: audio data pkt cnt 400
E (58952) BT_AV: audio data pkt cnt 500
E (59394) BT: Pkt dropped

E (59501) BT: Pkt dropped

E (60926) BT_AV: audio data pkt cnt 600
E (62865) BT_AV: audio data pkt cnt 700
E (64804) BT_AV: audio data pkt cnt 800
E (66731) BT_AV: audio data pkt cnt 900
E (68670) BT_AV: audio data pkt cnt 1000
E (70609) BT_AV: audio data pkt cnt 1100
E (72536) BT_AV: audio data pkt cnt 1200
E (74475) BT_AV: audio data pkt cnt 1300
E (76419) BT_AV: audio data pkt cnt 1400
E (77323) BT: bta_av_proc_stream_evt: p_data is null
E (77324) BT: bta_dm_rm_cback:0, status:6
E (77327) BT: BTA_AV_SUSPEND_EVT status 0, init 0

I (77328) BT_AV: a2dp audio_state_cb state 0
E (78012) BT: bta_av_proc_stream_evt: p_data is null
E (78013) BT: bta_av_link_role_ok hndl:x41 role:1 conn_audio:x1 bits:1 features:x8202

E (78016) BT: bta_dm_rm_cback:0, status:0
E (78020) BT: bta_dm_rm_cback:0, status:7
E (78026) BT: BTA_AV_START_EVT status 0, suspending 0, init 0

I (78032) BT_AV: a2dp audio_state_cb state 2
E (80018) BT_AV: audio data pkt cnt 100
E (81969) BT_AV: audio data pkt cnt 200
E (83896) BT_AV: audio data pkt cnt 300
E (85687) BT: Pkt dropped

E (85792) BT: Pkt dropped

E (85882) BT_AV: audio data pkt cnt 400
E (87820) BT_AV: audio data pkt cnt 500
E (89759) BT_AV: audio data pkt cnt 600
E (91687) BT_AV: audio data pkt cnt 700
E (93625) BT_AV: audio data pkt cnt 800
E (95564) BT_AV: audio data pkt cnt 900
E (97492) BT_AV: audio data pkt cnt 1000
E (99430) BT_AV: audio data pkt cnt 1100
E (101369) BT_AV: audio data pkt cnt 1200
E (103297) BT_AV: audio data pkt cnt 1300
E (104896) BT: Pkt dropped

E (105259) BT_AV: audio data pkt cnt 1400
E (107192) BT_AV: audio data pkt cnt 1500
E (107793) BT: Pkt dropped

E (109142) BT_AV: audio data pkt cnt 1600
E (111075) BT_AV: audio data pkt cnt 1700
E (113015) BT: Pkt dropped

E (113020) BT_AV: audio data pkt cnt 1800
E (114965) BT_AV: audio data pkt cnt 1900
E (115514) BT: Pkt dropped

E (116921) BT_AV: audio data pkt cnt 2000
E (118848) BT_AV: audio data pkt cnt 2100
E (120787) BT_AV: audio data pkt cnt 2200
E (122726) BT_AV: audio data pkt cnt 2300
E (124653) BT_AV: audio data pkt cnt 2400
E (126592) BT_AV: audio data pkt cnt 2500
E (128531) BT_AV: audio data pkt cnt 2600
E (130458) BT_AV: audio data pkt cnt 2700
E (131535) BT: Pkt dropped

E (132420) BT_AV: audio data pkt cnt 2800
E (134347) BT_AV: audio data pkt cnt 2900
E (136286) BT_AV: audio data pkt cnt 3000
E (138225) BT_AV: audio data pkt cnt 3100
E (140152) BT_AV: audio data pkt cnt 3200
E (142091) BT_AV: audio data pkt cnt 3300
E (144030) BT_AV: audio data pkt cnt 3400
E (145958) BT_AV: audio data pkt cnt 3500
E (147896) BT_AV: audio data pkt cnt 3600
E (149841) BT_AV: audio data pkt cnt 3700
E (151768) BT_AV: audio data pkt cnt 3800
E (153707) BT_AV: audio data pkt cnt 3900
E (155646) BT_AV: audio data pkt cnt 4000
E (157573) BT_AV: audio data pkt cnt 4100
E (159512) BT_AV: audio data pkt cnt 4200
E (161451) BT_AV: audio data pkt cnt 4300
E (163378) BT_AV: audio data pkt cnt 4400
E (165317) BT_AV: audio data pkt cnt 4500
E (167256) BT_AV: audio data pkt cnt 4600
E (169183) BT_AV: audio data pkt cnt 4700
E (171122) BT_AV: audio data pkt cnt 4800
E (173061) BT_AV: audio data pkt cnt 4900
E (174988) BT_AV: audio data pkt cnt 5000
E (176927) BT_AV: audio data pkt cnt 5100
E (178866) BT_AV: audio data pkt cnt 5200
E (180793) BT_AV: audio data pkt cnt 5300
E (182732) BT_AV: audio data pkt cnt 5400
E (184671) BT_AV: audio data pkt cnt 5500
E (186598) BT_AV: audio data pkt cnt 5600
E (188537) BT_AV: audio data pkt cnt 5700
E (190476) BT_AV: audio data pkt cnt 5800
E (191556) BT: Pkt dropped

E (191560) BT: Pkt dropped

E (191563) BT: Pkt dropped

E (192456) BT_AV: audio data pkt cnt 5900
E (194394) BT_AV: audio data pkt cnt 6000
E (196333) BT_AV: audio data pkt cnt 6100
E (198261) BT_AV: audio data pkt cnt 6200
E (200199) BT_AV: audio data pkt cnt 6300
E (202144) BT_AV: audio data pkt cnt 6400
E (204071) BT_AV: audio data pkt cnt 6500
E (206010) BT_AV: audio data pkt cnt 6600
E (207949) BT_AV: audio data pkt cnt 6700
E (208568) BT: Pkt dropped

E (209894) BT_AV: audio data pkt cnt 6800
E (211833) BT_AV: audio data pkt cnt 6900
E (213760) BT_AV: audio data pkt cnt 7000
E (215699) BT_AV: audio data pkt cnt 7100
E (217638) BT_AV: audio data pkt cnt 7200
E (219565) BT_AV: audio data pkt cnt 7300
E (221504) BT_AV: audio data pkt cnt 7400
E (223443) BT_AV: audio data pkt cnt 7500
E (225370) BT_AV: audio data pkt cnt 7600
E (227309) BT_AV: audio data pkt cnt 7700
E (229248) BT_AV: audio data pkt cnt 7800
E (231175) BT_AV: audio data pkt cnt 7900
E (233114) BT_AV: audio data pkt cnt 8000
E (235053) BT_AV: audio data pkt cnt 8100
E (236986) BT_AV: audio data pkt cnt 8200
E (237710) BT: Pkt dropped

E (238113) BT: Pkt dropped

E (238954) BT_AV: audio data pkt cnt 8300
E (240892) BT_AV: audio data pkt cnt 8400
E (242831) BT_AV: audio data pkt cnt 8500
E (244770) BT_AV: audio data pkt cnt 8600
E (245546) BT: Pkt dropped

E (246727) BT_AV: audio data pkt cnt 8700
E (248654) BT_AV: audio data pkt cnt 8800
E (250593) BT_AV: audio data pkt cnt 8900
E (252532) BT_AV: audio data pkt cnt 9000
E (253738) BT: Pkt dropped

E (254482) BT_AV: audio data pkt cnt 9100
E (256421) BT_AV: audio data pkt cnt 9200
E (257731) BT: Pkt dropped

E (258360) BT_AV: audio data pkt cnt 9300
E (260304) BT_AV: audio data pkt cnt 9400
E (262232) BT_AV: audio data pkt cnt 9500
E (264171) BT_AV: audio data pkt cnt 9600
E (266109) BT_AV: audio data pkt cnt 9700
E (268037) BT_AV: audio data pkt cnt 9800
E (269976) BT_AV: audio data pkt cnt 9900

时间: 2024-10-17 03:29:09

xiazai linux bt demo的相关文章

Linux SSH Demo

SSH(Secure Shell)是建立在应用层和传输层上的安全协议,专门为远程登录和其他网络服务提供安全协议. SSH对数据进行了加密和压缩,从而保证了数据安全性同时也加快了传输速度(Telnet则是明文传输数据).另,SSH开源,在Unix中获得广泛认可. 下面是简单Demo: ssh -p 222 genter@192.168.66.129 # ssh -p port user@ip port:可以在目标机配置文件 /etc/ssh/sshd_config 查看端口.为避免攻击,一般不会使

【网络编程】——linux socket demo

#include <stdio.h> #include <string.h> #include <stdlib.h> #include <sys/socket.h> #include <unistd.h> #include <netinet/in.h> #include <arpa/inet.h> #if 0 #define UDP #else #define TCP #endif int sockfd; char* IP

Linux Shell Demo

#!/bin/sh for p in ./* do if test -d $p then touch $p".ok" if test -f $p"/busi.xml" then echo "delete ${p}/busi.xml..." rm $p"/busi.xml" fi for z in $(find $p -name "*.zip") do echo "delete ${z}...&qu

Linux Signal Demo

#include <signal.h> #include <sys/types.h> #include <unistd.h> void new_op(int,siginfo_t*,void*); int main(int argc,char**argv) { struct sigaction act; union sigval mysigval; int i; int sig; pid_t pid; char data[10]; memset(data,0,sizeof

20135314朱恒志-实验四

北京电子科技学院(BESTI) 实     验    报     告 课程:密码系统设计基础                  班级:1353 姓名:朱恒志 学号:20135314 成绩:             指导教师:   娄嘉鹏    实验日期:2015.11.17 实验密级:         预习程度:             实验时间:15:30~17:30 仪器组次:4          必修/选修:必修    实验序号:14 实验名称:     内核驱动设计入门-模块方式驱动实验

ros科大讯飞语音识别

转自http://www.ncnynl.com/archives/201611/1069.html ROS入门教程-编写科大讯飞语音SDK的ROS包 说明 ROS软件包xfei_asr是集成自科大讯飞的linux的DEMO 介绍xfei_asr的安装和使用 介绍如何发布文字主题转变成语音播放 介绍如何录音并转变成文字输出,并发布主题 xf-ros说明 @author ncnynl <[email protected]> @time 2016-11-12 @website http://www.

c语言,const被绕过

注意在现在的gcc中, const可能会被用指针绕过. linux: // demo.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include "stdlib.h" #include <stdio.h> int _tmain(int argc, _TCHAR* argv[]) { const int ii = 1234; printf("ii = %d\n", ii); // error

shell 给未定义的变量设定默认值 ${parameter:-word}

参考: [ Unix & Linux ] Shell Demo $echo ${JENKINS_VERSION:-2.7.4} 2.7.4 $JENKINS_VERSION=2.99 $echo ${JENKINS_VERSION:-2.7.4} 2.99 原文地址:https://www.cnblogs.com/tiantiandas/p/shell_set_default_value_for_unset_variable.html

云端一体化差分升级,AliOSThings物联网升级“利器”

摘要: 随着物联网的日益发展,OTA升级逐渐成为物联网设备的刚性需求,目前物联网设备种类繁多,但并未提供统一的OTA升级方案,针对日益发展的物联网设备,开发者迫切需要一套云端一体化的OTA升级方案来满足快速迭代的产品开发周期,降低产品开发和部署的成本,同时针对物联网低功耗和省流量的场景,AliOS Things推出物联网设备的升级"利器":云端一体化的差分+安全升级,可以快速修复软件漏洞,更新系统,解决了用户开发部署难,售后维护成本高,升级下载流量大,升级不安全的痛点问题. 1.1 O