{"id":507,"date":"2022-11-14T16:35:55","date_gmt":"2022-11-14T08:35:55","guid":{"rendered":"http:\/\/wordpress.loc\/?p=507"},"modified":"2022-11-14T16:36:39","modified_gmt":"2022-11-14T08:36:39","slug":"esp32_ch1-4","status":"publish","type":"post","link":"https:\/\/www.nmking.io\/index.php\/2022\/11\/14\/507\/","title":{"rendered":"\u5e38\u898bibeacon\u898f\u683c\u8207python \u7a0b\u5f0f\u78bc"},"content":{"rendered":"\n<figure class=\"wp-block-pullquote\"><blockquote><p>\u5ba4\u5167\u5b9a\u4f4d\u662f\u76ee\u524d\u5f88\u6d41\u884c\u7684\u670d\u52d9\uff0c\u9664\u4e86\u7528RFID(\u8ddd\u96e2\u592a\u77ed)\u4e4b\u5916\uff0c\u9084\u662f\u4ee5beacon\u6700\u5e38\u88ab\u4f7f\u7528<\/p><\/blockquote><\/figure>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-ht-block-toc is-style-rounded htoc htoc--position-wide toc-list-style-plain\" data-htoc-state=\"expanded\"><span class=\"htoc__title\"><span class=\"ht_toc_title\">Table of Contents<\/span><span class=\"htoc__toggle\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"16\" height=\"16\"><g fill=\"#444\"><path d=\"M15 7H1c-.6 0-1 .4-1 1s.4 1 1 1h14c.6 0 1-.4 1-1s-.4-1-1-1z\"><\/path><path d=\"M15 1H1c-.6 0-1 .4-1 1s.4 1 1 1h14c.6 0 1-.4 1-1s-.4-1-1-1zM15 13H1c-.6 0-1 .4-1 1s.4 1 1 1h14c.6 0 1-.4 1-1s-.4-1-1-1z\"><\/path><\/g><\/svg><\/span><\/span><div class=\"htoc__itemswrap\"><ul class=\"ht_toc_list\"><li class=\"\"><a href=\"#htoc-\">\u524d\u8a00<\/a><\/li><li class=\"\"><a href=\"#htoc-ibeacon\">\u5e38\u898bibeacon\u898f\u683c<\/a><ul class=\"ht_toc_child_list\"><li class=\"\"><a href=\"#htoc-1\">1.\u624b\u74b0\u578b<\/a><\/li><li class=\"\"><a href=\"#htoc-2\">2.\u540a\u74b0\u578b<\/a><\/li><li class=\"\"><a href=\"#htoc-3\">3.\u9577\u6548\u578b<\/a><\/li><\/ul><\/li><li class=\"\"><a href=\"#htoc-python\">\u4f7f\u7528python\u505a\u5ba4\u5167\u5b9a\u4f4d<\/a><\/li><\/ul><\/div><\/div>\n\n\n\n<p>\u6211\u7684ESP32\u5be6\u505a\u66f8\u7c4d\uff1a<a rel=\"noreferrer noopener\" href=\"https:\/\/www.nmking.io\/index.php\/2022\/11\/10\/esp32_ch1-2\/\" target=\"_blank\">\u6211\u51fa\u66f8\u4e86 ESP32 \u7269\u806f\u7db2\u5c08\u984c<\/a><br>\u535a\u5ba2\u4f86\u7db2\u5740\uff1a<a rel=\"noreferrer noopener\" href=\"https:\/\/www.books.com.tw\/products\/0010901195\" target=\"_blank\">https:\/\/www.books.com.tw\/products\/0010901195<\/a><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"htoc-\">\u524d\u8a00<\/h2>\n\n\n\n<p>\u5ba4\u5167\u5b9a\u4f4d\u662f\u76ee\u524d\u5f88\u6d41\u884c\u7684\u670d\u52d9\uff0c\u9664\u4e86\u7528RFID(\u8ddd\u96e2\u592a\u77ed)\u4e4b\u5916\uff0c\u9084\u662f\u4ee5beacon\u6700\u5e38\u88ab\u4f7f\u7528\uff0cbeacon\u7684\u539f\u7406\u662f\u5229\u7528\u85cd\u82bd\u7684\u8a0a\u865f\u5f37\u5ea6RSSI\uff0c\u63a8\u6e2c\u4f7f\u7528\u8005\u8207\u6bcf\u4e00\u500bbeacon\u7684\u8ddd\u96e2\uff0c\u4ee5\u5f80\u6211\u66fe\u7d93\u4ecb\u7d39\u4f7f\u7528arduino\uff0c\u6216\u8005android\u4f86\u5b9a\u4f4d\uff0c\u9019\u6b21\u8981\u4ecb\u7d39\u5982\u4f55\u5229\u7528\u6700\u6d41\u884c\u7684python\u505a\u5ba4\u5167\u5b9a\u4f4d\u4e0d\u904e\u6211\u9084\u6c92\u4f5c\u5230\u4e09\u89d2\u5b9a\u4f4d\uff0c\u5982\u679c\u6709\u7814\u7a76\u7684\u5925\u4f34\u53ef\u4ee5\u5206\u4eab\u4e00\u4e0b\u3002\u9806\u4fbf\u4ecb\u7d39\u8ce3\u5834\u88e1\u5e38\u898b\u7684beacon\u985e\u578b\u3002\uff08beacon\u5b9a\u4f4d\u539f\u7406\u53ef\u53c3\u8003\u672c\u6587\uff1a<a href=\"https:\/\/www.nmking.io\/index.php\/2022\/11\/10\/esp32_ch1-3\/\">ESP32 Arduino Beacon\u7c21\u6613Bluetooth\u5ba4\u5167\u5b9a\u4f4d<\/a>\uff09<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"htoc-ibeacon\">\u5e38\u898bibeacon\u898f\u683c<\/h2>\n\n\n\n<p>ibeacon\u5075\u6e2c\u5b9a\u4f4d\uff0c\u76ee\u524d\u63d0\u4f9b\u4e09\u7a2e\u4e3b\u8981\u898f\u683c<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"htoc-1\">1.\u624b\u74b0\u578b<\/h3>\n\n\n\n<p><a href=\"https:\/\/goods.ruten.com.tw\/item\/show?21828335470340\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/goods.ruten.com.tw\/item\/show?21828335470340<\/a><\/p>\n\n\n\n<p>\u8a2d\u5b9aAPP\u4e0b\u8f09<\/p>\n\n\n\n<p>iOS\uff1a<a href=\"https:\/\/t.ly\/RCp8\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/t.ly\/RCp8<\/a><br>(\u5bc6\u78bc\uff1a123456\uff0c\u6709\u5b8c\u6574\u529f\u80fd)<\/p>\n\n\n\n<p>\u8a2d\u5b9aAPP Android\uff1a<a href=\"https:\/\/t.ly\/zk3X\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/t.ly\/zk3X<\/a><br>(\u529f\u80fd\u5f88\u5c11)<\/p>\n\n\n\n<p>\u9019\u6b3e\u512a\u9ede\u662f\uff0c\u53ef\u4ee5\u914d\u5408\u624b\u74b0\uff0c\u800c\u4e14\u9632\u6c34\uff0c\u4f46\u662f\u7f3a\u9ede\u662f\u5728\u66f4\u63db\u96fb\u6c60\u6642\uff0c\u5fc5\u9808\u6253\u958b\u5916\u6bbc\uff0c\u800c\u5916\u6bbc\u6709\u9ede\u96e3\u958b\uff0c\u9019\u90e8\u4efd\u6bd4\u8f03\u4e0d\u65b9\u4fbf<\/p>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/pic.pimg.tw\/youyouyou\/1582128981-1615665503_n.png?w=1290&#038;ssl=1\" alt=\"\"\/><figcaption class=\"wp-element-caption\">\u624b\u74b0\u578bbeacon\u6a21\u584a-\u5546\u54c1\u5716<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/pic.pimg.tw\/youyouyou\/1582128953-4270839400_n.png?w=1290&#038;ssl=1\" alt=\"\"\/><figcaption class=\"wp-element-caption\">\u5be6\u969b\u7522\u54c1\u5716<\/figcaption><\/figure>\n<\/div>\n\n\n\n<p>\u65b0\u6b3e\u624b\u74b0\u578b\u6709\u5e36\u9ad4\u611f\u53ca\u6eab\u6fd5\u5ea6\u5075\u6e2c\uff0c\u5916\u578b\u8207\u4e0a\u8ff0\u5b8c\u5168\u76f8\u540c\uff0c\u4f46\u5176\u63a7\u5236APP\u4e0d\u540c<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/pic.pimg.tw\/youyouyou\/1595691641-3134712875-g_n.png?resize=842%2C455&#038;ssl=1\" alt=\"\" width=\"842\" height=\"455\"\/><figcaption class=\"wp-element-caption\">\u624b\u74b0\u578bbeacon\u6a21\u584a-APP\u6e2c\u8a66<\/figcaption><\/figure>\n\n\n\n<p>\u6e2c\u8a66\u5f71\u7247\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"\u85cd\u82bd\u5b9a\u4f4d\u53ca\u4e09\u8ef8\u9640\u87ba\u5100\u9ad4\u611f\u5075\u6e2c\u5c55\u793a(beacon and gyroscope demo)\" width=\"1290\" height=\"726\" src=\"https:\/\/www.youtube.com\/embed\/2YJDgJu-lQ0?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"htoc-2\">2.\u540a\u74b0\u578b<\/h3>\n\n\n\n<p><a href=\"https:\/\/goods.ruten.com.tw\/item\/show?21947900936493\">https:\/\/goods.ruten.com.tw\/item\/show?21947900936493<\/a><\/p>\n\n\n\n<p>\u9019\u6b3e\u7684\u512a\u9ede\u662f\u958b\u95dc\u505a\u5728\u5916\u9762\uff0c\u5bb9\u6613\u958b\u95dc\uff0c\u53e6\u5916APP\u6709\u63d0\u4f9b\u4e00\u500b\u529f\u80fd\u505a\u5b9a\u6642\u555f\u52d5\u8207\u95dc\u9589\uff0c\u4e0d\u904e\u56e0\u70ba\u5f62\u72c0\u95dc\u4fc2\uff0c\u627e\u4e0d\u5230\u642d\u914d\u7684\u624b\u74b0\uff0c\u53ea\u80fd\u505a\u6210\u540a\u74b0\u7684\u6a23\u5f0f<\/p>\n\n\n\n<p>APP\u4e0b\u8f09\uff1a<a href=\"https:\/\/drive.google.com\/file\/d\/1Ko0G9j8slIW00JH1MxVOtpbLSNfAuewy\/view\" target=\"_blank\" rel=\"noreferrer noopener\">Beacon\u6416\u4e00\u6416\u52a9\u7406<\/a><\/p>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-large is-resized\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/pic.pimg.tw\/youyouyou\/1582129020-2175266228_n.png?resize=347%2C360&#038;ssl=1\" alt=\"\" width=\"347\" height=\"360\"\/><figcaption class=\"wp-element-caption\">\u540a\u74b0\u578bbeacon\u6a21\u584a-\u5546\u54c1\u5716<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/pic.pimg.tw\/youyouyou\/1575094738-3596169452.png?resize=442%2C364&#038;ssl=1\" alt=\"\" width=\"442\" height=\"364\"\/><figcaption class=\"wp-element-caption\">\u540a\u74b0\u578bbeacon\u6a21\u584a-\u5927\u5c0f\u5c3a\u5bf8<\/figcaption><\/figure>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"htoc-3\">3.\u9577\u6548\u578b<\/h3>\n\n\n\n<p><a href=\"https:\/\/goods.ruten.com.tw\/item\/show?21948944190719\">https:\/\/goods.ruten.com.tw\/item\/show?21948944190719<\/a><\/p>\n\n\n\n<p>\u9019\u6b3e\u662f\u4f7f\u7528CR2477\u9ad8\u5bb9\u91cf\u96fb\u6c60\uff0c\u56e0\u6b64\u81f3\u5c11\u53ef\u4ee5\u4f7f\u7528\u4e00\u5e74\u4ee5\u4e0a\uff0c\u4e14\u9632\u6c34\u3001\u9632\u9707\uff0c\u53ef\u653e\u7f6e\u6236\u5916\uff0c\u4f46\u76f8\u5c0d\u9ad4\u7a4d\u5c31\u8f03\u70ba\u9f90\u5927\u3002<\/p>\n\n\n\n<p>APP\u4e0b\u8f09\uff1aios\u641c\u5c0bOE beacon\uff1a <a href=\"https:\/\/apps.apple.com\/tw\/app\/oe-beacon\/id1235422365\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/apps.apple.com\/tw\/app\/oe-beacon\/id1235422365<\/a><\/p>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/pic.pimg.tw\/youyouyou\/1575094823-1540491162.png?w=1290&#038;ssl=1\" alt=\"\"\/><figcaption class=\"wp-element-caption\">\u9577\u6548\u578bbeacon\u6a21\u584a-\u5546\u54c1\u5716<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/pic.pimg.tw\/youyouyou\/1582129069-441956392_n.png?w=1290&#038;ssl=1\" alt=\"\"\/><figcaption class=\"wp-element-caption\">\u9577\u6548\u578bbeacon\u6a21\u584a-\u5be6\u969b\u7522\u54c1\u5716\u8207\u96fb\u6c60\u578b\u865f<\/figcaption><\/figure>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"htoc-python\">\u4f7f\u7528python\u505a\u5ba4\u5167\u5b9a\u4f4d<\/h2>\n\n\n\n<p>\u9019\u7bc7\u6587\u7ae0\u662f\u611f\u8b1d\u7db2\u53cb\u5c0f\u660e\u63d0\u4f9b\u4e00\u500b\u7db2\u5740\uff0c\u4f7f\u7528python\u7a0b\u5f0f\u78bc<\/p>\n\n\n\n<p>\u539f\u59cb\u78bc\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from bluepy.btle import Scanner, DefaultDelegate\n\nclass ScanDelegate(DefaultDelegate):\n    def __init__(self):\n        DefaultDelegate.__init__(self)\n\n    def handleDiscovery(self, dev, isNewDev, isNewData):\n        if isNewDev:\n            print \"Discovered device\", dev.addr\n        elif isNewData:\n            print \"Received new data from\", dev.addr\n\nscanner = Scanner().withDelegate(ScanDelegate())\ndevices = scanner.scan(10.0)\n\nfor dev in devices:\n    print \"Device %s (%s), RSSI=%d dB\" % (dev.addr, dev.addrType, dev.rssi)\n    for (adtype, desc, value) in dev.getScanData():\n        print \"  %s = %s\" % (desc, value)<\/code><\/pre>\n\n\n\n<p>\u4f86\u6e90\u7db2\u5740\uff1ahttps:\/\/ianharvey.github.io\/bluepy-doc\/scanner.html<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5ba4\u5167\u5b9a\u4f4d\u662f\u76ee\u524d\u5f88\u6d41\u884c\u7684\u670d\u52d9\uff0c\u9664\u4e86\u7528RFID(\u8ddd\u96e2\u592a\u77ed)\u4e4b\u5916\uff0c\u9084\u662f\u4ee5beacon\u6700\u5e38\u88ab\u4f7f\u7528 \u6211\u7684ESP32\u5be6\u505a\u66f8 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[1],"tags":[],"class_list":["post-507","post","type-post","status-publish","format-standard","hentry","category-esp32"],"blocksy_meta":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.nmking.io\/index.php\/wp-json\/wp\/v2\/posts\/507","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.nmking.io\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.nmking.io\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.nmking.io\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.nmking.io\/index.php\/wp-json\/wp\/v2\/comments?post=507"}],"version-history":[{"count":3,"href":"https:\/\/www.nmking.io\/index.php\/wp-json\/wp\/v2\/posts\/507\/revisions"}],"predecessor-version":[{"id":510,"href":"https:\/\/www.nmking.io\/index.php\/wp-json\/wp\/v2\/posts\/507\/revisions\/510"}],"wp:attachment":[{"href":"https:\/\/www.nmking.io\/index.php\/wp-json\/wp\/v2\/media?parent=507"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.nmking.io\/index.php\/wp-json\/wp\/v2\/categories?post=507"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.nmking.io\/index.php\/wp-json\/wp\/v2\/tags?post=507"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}