IIC プロトコル
注意:ホストデバイスと音声対話モジュールの電源は異なっていてもかまいませんが、接続時には必ず共通接地する必要があります。そうすることで安定した通信レベルを提供できます
1.音声対話モジュールがスレーブとなる
ホストが送信した信号を受信して解析します:
IIC 信号の割り込みを待ち、IIC でデータを受信した場合は、IIC で受信したレジスタアドレス情報に基づいて、対応する関数機能を呼び出します。
データ処理とフィードバック:
音声対話モジュールがレジスタ読み取りコマンドを受信すると、対応する送信関数を呼び出し、認識したデータをホストデバイスに送信する必要があります。
2.IIC デバイスアドレスとレジスタ機能
音声対話モジュールの IIC スレーブのデバイスアドレスは 0x2A です。
3.コマンドエントリーの取得。
添付ファイル内の命令词播报词协议列表V1_中文ファイルを開くと、通信プロトコルが 0xFE、0xED で始まり、0xEE で終わり、中間の 2 バイトがそれぞれ機能タイプと ID 番号であることがわかります。

音声対話モジュールが “停车” コマンドワードを認識すると、“好的,已停止” と応答し、ホストコントローラは認識結果レジスタ(0xDA)で 0x02 という 1 バイトのデータを読み取ることができます。このデータは “停车” の送信プロトコルの 4 番目のバイトと同じです。

4.再生フレーズエントリー
再生フレーズエントリーはアクティブには再生されず、必ずホストコントローラが IIC を通じて設定した場合にのみ再生されます(コマンドエントリーの再生フレーズも再生できます)。
ホストコントローラが IIC を通じて再生レジスタアドレス(0xD1)に 1 バイトを書き込みます。これはコマンドワードの ID 番号で、音声再生モジュールは対応するフレーズを再生します。0xFF は通常の再生フレーズです。

例えば:
ユーザーが “这是红色” を再生したい場合、ホストコントローラは IIC を通じて再生レジスタ(0xD1)に “0x5F” を書き込む必要があります。すると音声対話モジュールは “这是红色” を再生します。

5.機能ワードエントリーの再生
機能ワードエントリーはコマンドワードを認識したときに再生することも、IIC で特定のバイトを書き込んで再生することもできます。
ホストコントローラが IIC を通じて再生レジスタアドレス(0xD2)に 1 バイトを書き込みます。これはコマンドワードの ID 番号で、音声再生モジュールは対応するフレーズを再生します。0xFF は通常の再生フレーズです。

例えば:
ユーザーが “这是红色” を再生したい場合、ホストコントローラは IIC を通じて再生レジスタ(0xD2)に “0x01” を書き込む必要があります。すると音声対話モジュールは “欢迎使用小犀” を再生します。

5.コマンドエントリーの再生
コマンドエントリーはコマンドワードを認識したときに再生することも、IIC で特定のバイトを書き込んで再生することもできます。
ホストコントローラが IIC を通じて再生レジスタアドレス(0xD3)に 1 バイトを書き込みます。これはコマンドワードの ID 番号で、音声再生モジュールは対応するフレーズを再生します。0xFF は通常の再生フレーズです。

例えば:
ユーザーが “好的,正在前进” を再生したい場合、ホストコントローラは IIC を通じて再生レジスタ(0xD3)に “0x04” を書き込む必要があります。すると音声対話モジュールは “好的,正在前进” を再生します。


