オーディオアプリ(App_Audio)

TWELITE のアナログ入力とPWM出力を用いてオーディオまたは信号波形をボタンを押した間に相手側に送信するアプリケーションです。専用のオーディオインタフェースICは不要ですが、ローパスフィルタ、アンプなどの外部回路の構成が必要になります。

TWELITE BLUE専用です。TWELITE REDでは動作しません。

仕様

ソフトウェア

※ソースコードはTWELITE SDKのApp_Audio に含まれます。

※ ファームウェアの書き込み方法はTWELITE R-トワイライターの利用を推奨します。

ハードウェア

回路図

※クリックすると拡大します

解説

音声入力部

 

音声出力部

使用するピン

使用するピン名は 超簡単!標準アプリを参照ください。

ピン名 解説 備考
AI1 アナログ入力 (必須) 0-2V の間で振幅するようにアナログ信号を調整してください。AC信号は入力できません。
また、入力のローパスフィルタはサンプリング定理の考え方から必要です。肉声などあまり高周波が含まれない信号を入力する場合は省略しても出力に大きな影響がない場合もあります。
PWM1 無線経由の信号データの出力 32KHz のPWM 出力となります。これをローパスフィルタと AC カット用のキャパシタを介すると、元のアナログ信号を再現します。
PWM2 A1 のパススルー 無線通信せず、単体で LPF などの評価を行う場合使用します。
PWM3 サンプリング周期を示す矩形波  
DI1 LO にすると無線出力します (必須)  
DI2 LO にするとサンプルトーンを出力します 本来テスト用ですが、モールス信号送信機といった応用が考えられます。
DO1 LO になると無線信号を出力中を意味します  
DO2 DI2 が LO になると、LO 出力します  

使い方

(1) TWELITEには全て同じファームウェア(App_Audio*.bin)を書き込みます。
(2) 事前にインタラクティブモードで設定を済ませておきます。
※ 特に信号伝送を行いたい場合は RAW8,RAW10, サンプリング周期設定が必須です。
(3) AI1, PWM1, DI1 を接続(参考回路図参照)したトランシーバーを2ヶ(以上でも可)作成します。
(4) 2ヶのトランシーバーの電源を投入します。
(5) 片方でボタンを押せば、他方から音が出ます。
※ 両方同時に押すと音が出ません。

インタラクティブモードの設定

インタラクティブモードを表示するには、TWELITE の UART0 を接続し (TWELITER など)、ターミナルソフトを 115200bps 8N1 条件で開きます。+ + + と + を3回一呼吸置きながら入力すると、以下の画面が表示されます。

--- CONFIG/TWE AUDIO APP V0-03-2/SID=0x81000038/LID=0x78 ---
 a: set Application ID (0x67720108)
 i: set Device ID (--)
 c: set Channels (18)
 x: set Tx Power (3)
 p: set PWM HZ (32000)
 f: set Sample Freq (8000)
 d: set Codec Type (0)
 o: set Option Bits (0x00001130)
 b: set UART baud (38400)
---
 S: save Configuration
 R: reset to Defaults

[PWM HZ]

PWM の周波数を決定します。

例えば 32000Hz の場合、16MHz/32000=500 カウントによる DUTY 比の変更が可能です。 ディジタルオーディオで一般的な16bit(=65536)に対して、約9bit(=512段階)と粗くな ります。 周波数を下げると音質(ダイナミックレンジやS/N)が向上するかもしれませんが、 PWM の制御タイミングなどの揺らぎなどの影響、PWM 周波数自体が音質に影響しやすく なりますので、バランスの良いポイントを選ぶ必要があります。

[Sample Freq]

ADC のサンプリング周波数 (fs) です。

fs/2 Hz 以上の信号が含まれると折り返し ノイズが発生します。8000Hz なら 4000Hz 以上の音声は含まないようにするか、 LPF (ローパスフィルタ) により抑え込みます。

周波数を上げると音質は向上しますが、無線の通信が追いつかなくなります。 8000Hz では 20ms 毎に無線通信を行います。

[Codec Type]

ADCから得られたデータ、無線パケットでも送信できるように変換します。

[オプションビット]

制限事項

IMA ADPCM について

広く使われている(簡易)ADPCMで、音質面では高域の再現性が低下するものの、計算量の少なさと状態ベクトルが小さいため取り扱いが良好です。

/***********************************************************
 Copyright 1992 by Stichting Mathematisch Centrum, Amsterdam, The
 Netherlands.

 All Rights Reserved

 Permission to use, copy, modify, and distribute this software and its
 documentation for any purpose and without fee is hereby granted,
 provided that the above copyright notice appear in all copies and that
 both that copyright notice and this permission notice appear in
 supporting documentation, and that the names of Stichting Mathematisch
 Centrum or CWI not be used in advertising or publicity pertaining to
 distribution of the software without specific, written prior permission.
 ******************************************************************/

/*
 ** Intel/DVI ADPCM coder/decoder.
 **
 ** The algorithm for this coder was taken from the IMA Compatability Project
 ** proceedings, Vol 2, Number 2; May 1992.
 **
 ** Version 1.2, 18-Dec-92.
 **
 */
TWELITE
TWELITE
DIP
DIP
UART
UART
CUE
CUE
ARIA
ARIA
PAL
PAL
STICK
STICK
spot
SPOT
R3
R3
STARTER KIT
STARTER KIT
アンテナ
アンテナ
製品一覧
製品一覧

モノをつなぐ無線

モノをつなぐ無線
モノの無線
導入事例
導入事例
選び方
選び方
小型
小型
省電力
省電力
多数接続
多数接続
コントロール
コントロール
モニタリング
モニタリング
ソフトウエア
ソフトウエア
親機
親機
中継機
中継機
子機
子機
始め方
始め方

評価開発環境

STAGE
STAGE
STAGE APP
STAGE APP
interactive
アプリ設定
アプリ書換
アプリ書換
プログラミング
プログラミング