WCA-009頒布について
- WCA-009頒布希望の方は、この記事を読んでから申し込み願います。
- WCA-009の動作確認には、トラ技2011年9月号の記事、またはこのブログ記事を参照されることをお勧めします。
- iWRAP4.0.0ファームウェアでは、iOS5とのAVRCP接続に問題があることがわかっています。対処方法についてはこの記事を参照してください。
- iWRAP 4.0.1がリリースされました。AVRCP接続問題が修正されています。



つなたーむを使うことにしました。
0120506に対応するモデム信号を送ると、きれいにデータが受信できました。
90 81〜
3F CFの部分が実際に有効なデータ部分で、
3FCFがCRCの値になっています。

30 B1 B2 30 35 30 36が、
0120506に対応しているのですが、偶数パリティで送る約束になっているので、ダンプデータは
B1 B2になっています。





0120506に相当するモデム信号です。実際のデータが始まる前に充分に長い連続したマークを送出することで、全体が300bitになるようにわざと長さを調節してみました。1200bpsのレートで送出しているので、送出時間は1/4秒となるハズで、ほぼそれに近い248msが所要時間として表示されています。ですので、送出に要する割り込み処理が間に合っていないとかいうことは無いと考えているのですが。

極性反転というのは、RJ11の2本の線の極性を反転してやる操作で、これはSLICの64番レジスタで操作できます。次の
情報受信端末起動信号というのは、0.5秒鳴動/0.5秒休止の周期で呼出し信号を送出してやることのようです。ですので、これもSLICのRING関連のレジスタを設定してやることで、実現できます。普通の2秒/1秒の周期の呼出し信号の場合には電話機は着信音を鳴らしますが、この情報受信端末起動信号の場合にはナンバーディスプレイ対応の電話機は着信音を鳴らさないのです。ナンバーディスプレイに対応していない安物電話機では、こんな芸当はできないので、短い周期でベルが鳴り始めます。
一次応答信号というのは、なんのことはない、Off-hook信号のことです。実際には人間が受話器をとりあげているわけではないですが、電話機が自動的にオフフック操作をすると思えばいいでしょう。これを受けて、SLIC側から発信者番号情報をモデム信号として送信してやります。モデム信号については、SLICが持っているFSK信号の送信機能を利用することで送信できます。

slic clidを追加しただけです。



]]] MMnetSAM7X Console Monitor [[[ > slic init ProSLIC detected. 1652ms > dtmf start
> Off-Hook. DTMF: 0 DTMF: 1 DTMF: 2 DTMF: 3 DTMF: 4 DTMF: 5 DTMF: 6 DTMF: 7 DTMF: 8 DTMF: 9 DTMF: * DTMF: 0 DTMF: #
On-Hook. Off-Hook. DTMF: 0 DTMF: 1 DTMF: 2 DTMF: 3 DTMF: 4 DTMF: 5 DTMF: 6 DTMF: 7 DTMF: 8 DTMF: 9 DTMF: * DTMF: 0 DTMF: # > On-Hook.
ヤッター!と声が出てしまいました。DTMFの検出なんてコードの実装に時間かかるんじゃないかと心配していたのですが、あっけなくできちゃってビックリです。
Loop Closure Transition Interruptが発生します。この割り込み要因はレジスタ19を読んで判別できますが、これだけでは状態が変化したことがわかるだけです。そこで、さらにレジスタ68を読んで実際のフッキング状態を確認することで、オンフック/オフフックのいずれであるかを判断してやります。
]]] MMnetSAM7X Console Monitor [[[ > > slic init ProSLIC detected. 1652ms > Off-Hook. On-Hook. > slic ring > Ring Trip On-Hook. >
Ring Trip Interruptが発生します。ベルとベルの間の1秒間の休止期間の間にオフフックすれば、
Loop Closure Transition Interruptになります。
Ring Tripというのは電話屋さん用語なのでしょうが、日本語では何と訳すのでしょうか?
> > Off-Hook > > On-Hook Off-Hook On-Hook Off-Hook On-Hook Off-Hook On-Hook Off-Hook On-Hook Off-Hook > > On-Hook >
Off-Hookメッセージです。
5を押してみました。
On-Hook/Off-Hookがバラバラと連続して5回表示されました。最後の
On-Hookは実際に受話器をオンフックした際のメッセージです。電話機の設定を10PPSに変更すると、表示される間隔が目に見えて長くなるのがわかります。

]]] MMnetSAM7X Console Monitor [[[ > > slic dump 0: 33 1: 88 2: 00 3: 00 4: 00 5: 00 6: 60 8: 02 9: 00 10: 08 11: 33 14: 10 15: 00 18: 00 19: 00 20: 00 21: 00 22: 00 23: 00 28: 00 29: 00 30: 00 31: 00 32: 00 33: 00 34: 00 36: 00 37: 00 38: 00 39: 00 40: 00 41: 00 42: 00 43: 00 48: 00 49: 00 50: 00 51: 00 52: 00 63: 54 64: 00 65: 61 66: 03 67: 1f 68: 00 69: 0a 70: 0a 71: 00 72: 20 73: 02 74: 32 75: 10 76: 00 77: 00 78: 00 79: 00 80: 00 81: 00 82: 00 83: 00 84: 02 85: 02 86: 00 87: 00 88: 00 89: 00 92: ff 93: 34 94: 00 96: 1f 97: 1e 98: 10 99: 10 100: 11 101: 11 102: 08 103: 88 104: 00 105: 00 107: 08 108: 00 0: fb97 1: 23fe 2: a981 3: 4b9e 4: c7dc 5: ff34 6: 3e57 7: fffb 8: b2a9 9: ef71 13: edb6 14: 1a7e 15: e6ff 16: c333 17: dfec 18: 42c7 19: bf6c 20: aeff 21: 2bdf 22: d94a 23: 32f8 24: e3f7 25: 236d 26: 5783 27: bef9 66: c7ff 69: af54 70: e0b6 71: 68fd 72: f45d 73: f735 74: ffaf > slic init ProSLIC detected. 1652ms > > slic dump 0: 33 1: a8 2: 00 3: 00 4: 00 5: 00 6: 60 8: 00 9: 00 10: 28 11: 33 14: 00 15: 00 18: 00 19: 00 20: 00 21: 00 22: 03 23: 00 28: 00 29: 0c 30: 40 31: 00 32: 00 33: 00 34: 00 36: 00 37: 00 38: 00 39: 00 40: 00 41: 00 42: 00 43: 00 48: 40 49: 1f 50: 80 51: 3e 52: 00 63: 54 64: 11 65: 61 66: 03 67: 1f 68: 04 69: 0a 70: 0a 71: 00 72: 08 73: 02 74: 32 75: 10 76: 00 77: 00 78: 08 79: 00 80: 07 81: 28 82: 3f 83: 3f 84: 01 85: 01 86: 00 87: 00 88: 01 89: 00 92: 60 93: 38 94: 07 96: 00 97: 00 98: 11 99: 10 100: 10 101: 0f 102: 03 103: 23 104: 09 105: d8 107: 07 108: eb 0: 7e70 1: 0038 2: 0000 3: 7870 4: 007d 5: 0000 6: 0000 7: 7ef0 8: 0160 9: 0000 13: 4000 14: 4000 15: 1000 16: 3600 17: 1000 18: 0080 19: 07c0 20: 376f 21: 1b80 22: 8000 23: 0320 24: 008c 25: 008c 26: 0010 27: 0200 66: 1000 69: 00da 70: 6b60 71: 0074 72: 79c0 73: 1120 74: 3be0 >まずは初期化処理を実施。リセットして、各種レジスタの設定ならびにキャリブレーション。具体的にどのような調整をしているのかという詳細はてんで理解できていないのですが、全ての初期化処理を実施するのに1.652秒かかっています。初期化処理の最後ではSLICをアクティブ状態とし、オンフック電圧が印加されます。
> slic ring > > slic active >試しに呼出音を鳴動させてみます。うん、ちゃんと1秒/2秒の周期で鳴ってくれます。アクティブ状態に戻すことで、呼出音を止めます。掲載した写真では電話機のLEDが赤く点灯しているのがわかりますが、この電話機は呼出音の鳴動周期に合わせてLEDが点灯/消灯します。
> hello start started. > hello stop >SSCを使ってSLICに対して音声PCM信号を送出するタスクを起動。受話器から"Hello, World"が聞こえます。SPI関連とPCM関連の両方とも問題なく動作しているようです。



| 信号 | 意味 |
|---|---|
| PCLK | PCMサンプリング・クロック。SLICの基本動作クロックとしても使用される。 |
| FSYNC | 8KHzのフレーム同期信号。PCLK周波数を求めるのにも使われる。 |
| DRX | SLICへの音声入力信号 |
| DTX | SLICからの音声出力信号 |




