実際に発呼や切断をしてみると、接続/切断時やスピーカのオン/オフのタイミングでリセットがかかってしまう現象が発生するようになってしまいました。割り込みのタイミングでスタック溢れが生じているのかとも思ったのですが、どうやらUSB電源で動かしていたのがいけないようです。USB電話機、W-SIM, AT91SAM7S256を全て駆動するには、NOTE PCからのUSB給電では足りなくなることがあるように思われます。そこで、ACアダプタ用のジャックを付けたして、秋月5V ACアダプタで動作させることにしました。
音声はまだ片方向だけしか通っていないのですが、とりあえず
デモではスピーカを使っていますが、もちろんハンドセットも使えます。
電話機上の各種機能ボタンは、スピーカ以外はまだサポートできていません。この次は、ボリューム制御くらいはできるようにしてみましょうか。LCDには、接続の前後には何も表示されていないので、ちょっと寂しいですね。また、RTCをつなげた方がいいかもしれません。おっと、そんなことよりも音声を両方向通す事が最重要でしたね。
音声はまだ片方向だけしか通っていないのですが、とりあえず
天気予報へ電話する様子を動画にしてみました。
デモではスピーカを使っていますが、もちろんハンドセットも使えます。
- スピーカボタンがボタンが押されると、オフフック動作であると判断し、ダイアルトーンを出します。ダイアルトーンは、P4-Kにコマンドを送ってやると、電話機が生成してくれます。スピーカのオン/オフもコマンド制御です。
- 番号キーが押されたことを検出し、LCDに表示します。最初のひと桁を検出した時点でダイアルトーンの生成を止めています。
#
ボタンが押されると発呼します。- 相手と接続中は、LCD表示は通話時間表示になります。
- スピーカボタンが押されると、オンフック動作であると判断し、呼を切断するとともにスピーカをオフにします。
電話機上の各種機能ボタンは、スピーカ以外はまだサポートできていません。この次は、ボリューム制御くらいはできるようにしてみましょうか。LCDには、接続の前後には何も表示されていないので、ちょっと寂しいですね。また、RTCをつなげた方がいいかもしれません。おっと、そんなことよりも音声を両方向通す事が最重要でしたね。