マイコン工作実験日記

Microcontroller を用いての工作、実験記録

ダイアリングから通話、切断まで

2016-04-10 12:45:54 | Weblog
先週の続きで、ダイアリングから発信、通話、そして切断までの一連の流れを処理できるように作業しています。ついでにLCDのアイコン表示もちょっと変更、追加。

まずは初期状態。HFP接続が無い状態では、通話できないことを示すために、受話器アイコンを使ってみることにしました。



HFP接続が確立するとこの表示を消して、アンテナと電池残量アイコんを表示。



受話器をオフフック/オンフックする度に、受話器アイコンを点灯/消灯することとしました。



ダイアル後、発信中と通話中はダイアルした番号を表示します。今のところ、発信中と通話中の表示が同一なので、この点は今後改善したいところ。



一連の処理の流れの様子は次のとおり。
  • ダイアル桁間タイマーにより入力されたダイアル信号の間隔を監視し、このタイマーが満了したことを検出したならばATDコマンドをWT32に送り、発信。
  • 呼び出し信号並びに通話音声用のSCOリンクが張られたことを示すRING ... SCOを検出したならば、SAIからのFSYNC信号に同期してADC/DACを動作させることで音声パスをつなげる。
  • オンフックで通話を切断するHANGUPコマンドをWT32に送信。
  • SCOリンクが切られたNO CARRIERイベントによりADC/DACの動作トリガをタイマーの設定し直す。