ESP32関連の知識ポイント

1. vs code コードは前のステップに戻ります:
方法 1: Windows の場合、ショートカット キー「Alt+←」を使用して実行できます。
方法 2: vs code インターフェイスを使用して操作し、戻ります。

Windows コマンド ラインで ESP-IDF を使用してプロジェクト コードをコンパイルおよびダウンロードする方法
(1). ESP-IDF 4.4 CMD インターフェイス ウィンドウを開きます
(2). コマンド ラインを使用して、プロジェクト ファイル ディレクトリ (例: project) を入力します。ファイル: C:\projects\hello_world (ディレクトリの場所)、「cd C:\projects\hello_world」と入力し、Enter キーを押します
ここに画像の説明を挿入
(3) コマンド ライン
idf.py set-target ESP32 (ターゲット ESP32 デバイスの設定)
idf.py menuconfig (SDK の構成) )
idf.py build (プロジェクト コードをコンパイル)
idf .py flash -p COM13 (指定されたポートにコードをダウンロード)
idf.py Monitor -p COM13 (指定されたポートにデバッグ情報を出力)
CTRL+] (キーボード キー)
idf.py creat- project (プロジェクト名) (新規プロジェクトの作成)

ここに画像の説明を挿入

2. vs codeでESP-IDF Monitor Deviceのボーレートを設定します。
ステップ管理 - 新しいコード更新が利用可能------コマンド パレットで検索または選択するためのダイアログ ボックスがポップアップ表示されます: ESP-IDF:SDK 構成エディター (menuconfig)、クリックして構成インターフェイスをポップアップ表示します: 「idf.py モニター」を検索「ボーレート」バーを使用してボーレートを設定します。
ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入
3. VS Code ヘッダファイルの下に波線があり、クリックしてもファイルにアクセスできません。
方法 1: [コマンド パレット] ポップアップ ダイアログ ボックスに入り、ESP-IDF:Add vscode 構成フォルダーを検索または選択します。
ここに画像の説明を挿入
方法 2: [コマンド パレット] ポップアップ ダイアログ ボックスに入り、[C/C++: 構成の編集 (JSON)] を検索または選択して c_cpp_properties.json ファイルをポップアップ表示し、ヘッダー ファイルの実際の保存場所を「includePath」の下に追加します

ここに画像の説明を挿入
4. vs コードに埋め込まれた ESP_IDF コンパイル環境のコンパイル中にエラーが発生し、「そのようなファイルまたはディレクトリの解決策はありません。対応する .c ファイル内の CMakeList.txt ファイルを変更し、対応する .h ファイルの .c ファイル名を追加してください」と表示されます。 idf_component_register または .h ファイルに対応するファイルの実際の保存場所。
ここに画像の説明を挿入
ここに画像の説明を挿入
5. Bluetooth ビーコン ビーコン ブロードキャストの原理
UUID は、図に示すように、
ここに画像の説明を挿入
LL (リンク層) ブロードキャスト パケット フォーマットでビーコン ビーコン ブロードキャストにおける渦巻き送信を定義します。 Adv Data データ定義Adv Data データ型定義
ここに画像の説明を挿入
ここに画像の説明を挿入

ここに画像の説明を挿入

ここに画像の説明を挿入

ここに画像の説明を挿入
ビーコンブロードキャストエディストーン受信の主な処理:
ギャップコールバック関数の登録 ---- ギャップ設定スキャンパラメータ ---- スキャンパラメータ設定完了イベント(コールバック) ---- スキャン開始完了イベント(コールバック) - スキャン結果イベント(コールバック) )----イベント タイプの検索 - クエリ結果 - エディストーン データ パケットの解析 - UID または URL または TLM/ETLM または EID

ビーコン ブロードキャスト渦巻き送信の主なプロセス:
ギャップ コールバック関数の登録 - ADV UID (または URL または TLM など) データ パケットの合成 - 合成された UID データの内容と長さを adv_data 構造に割り当てます サービス データ変数内で ---- - ギャップ設定 adv_data データパラメータ ----- adv_data 設定完了イベント(コールバック) ----- ギャップは adv_data ブロードキャストを開始します

6. GATT 関連処理の概念
ATT 属性と GATT 一般属性
ここに画像の説明を挿入
GATT サーバーの初期化と GATT クライアントの初期化
ここに画像の説明を挿入
GATT サーバーと GATT クライアントの通信
ここに画像の説明を挿入
GATTS コールバック処理
ここに画像の説明を挿入
GATTC コールバック処理
ここに画像の説明を挿入
GAP イベント コールバック クライアント
ここに画像の説明を挿入
ここに画像の説明を挿入
サービス属性テーブル
ここに画像の説明を挿入
7. SMP セキュリティ ペアリング バインディング ペアリング
処理
ここに画像の説明を挿入
認証が必要
ここに画像の説明を挿入
IO 機能
ここに画像の説明を挿入
ペアリング方法
ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入
SMP 関連の初期化
ここに画像の説明を挿入
セキュリティ設定パラメータの設定
ここに画像の説明を挿入
SMP サーバー GATT コールバック
ここに画像の説明を挿入
SMP サーバー GATT コールバック プロセス:
(1). APP の登録 - デバイス名の設定 - ローカル暗号化のオープン - 属性テーブルの作成
(2). 属性テーブルの作成 - 属性テーブルの記録ハンドル – サービスを開始します
(3). 仮想接続を待機します – (仮想接続がある場合) セキュリティ接続認証要件を設定します

SMP サーバー GAP コールバック
ここに画像の説明を挿入
SMP サーバー GAP コールバック プロセス:
(1).ローカル暗号化を有効にする 完了 – ブロードキャスト データ スキャン応答データの設定 – ブロードキャスト データの設定 ブロードキャスト スキャン応答の設定 – ブロードキャストの開始 – ブロードキャストの開始 完了 – 印刷 (2)
.クライアントが接続すると、クライアントはセキュリティ リクエストを送信します) – サーバーはセキュリティ リクエストへのアクセスを許可します
(3). クライアントとサーバーは認証要件を交換します – キー表示通知、デジタル比較リクエスト、OOB リクエスト、またはキー リクエスト、OOB リクエストとキー リクエストは 6 桁の数字を入力します
(4) 認証完了 (キー) – 認証ステータスの判断 – 印刷製本デバイスのアドレス – キー配布イベント (クライアントから送信されたキー) – 印刷キーの種類

SMP クライアント GATT コールバック
ここに画像の説明を挿入
SMP クライアント GATT コールバック プロセス:
(1). APP を登録 – ローカル暗号化を有効にする (GAP レイヤにジャンプ) – ローカル暗号化を有効にする完了 – スキャン パラメータの設定 – スキャン パラメータの設定完了 – スキャンの開始
(2). GAP レイヤ、スキャンの開始 完了 - スキャン結果イベント - デバイス名の一致 - (一致が成功した場合) ブロードキャストの停止 - 仮想接続の開始
(3). 仮想接続の開始後、仮想接続が作成されます - 相手のアドレスを記録します当事者のデバイス - 最大伝送単位を送信します
(4).(最大伝送単位の送信は成功します) 最大伝送単位の構成 - ローカルでサービスを取得します
(5). サービス検出結果 - 開始ハンドルと終了ハンドルを記録します - サービス検出完了 - 機能属性テーブルを取得します– 登録通知 – 登録通知の完了 – 通知用に指定された機能記述子の書き込み


ここに画像の説明を挿入
IO 機能をシミュレートするためのSMP クライアント GAP コールバック
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/qizhi321123/article/details/128700846