マイコン工作実験日記

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

発信者名表示

2011-07-19 22:58:14 | WT32/BM20
ここんとこ、めっきりスローペースになっているBlueSAMの開発。ようやくとHFPでの着信時に発信者番号で電話帳を引いて、発信者名を表示できるようにしました。電話帳データの転送からの一連の手順は、手動操作に頼っており、画面からのメニュー操作でおこなえるようにするまでには至っていません。

ステップ1.電話帳転送
ここはすでに記事にしたとおりの手順。SPIフラッシュのダウンロード用領域に、携帯の電話帳データをOPPで受信します。



ステップ2. vCardデータ変換
ダウンロードされたvCardデータから、必要な部分(名前と電話番号)だけを拾いだし、内部表現に変換してSPIフラッシュの別の領域(電話帳領域)に保存。内部表現の文字コードはSJISなので、必要であればUTF-8からの変換をおこなう。



この例では、3150行分のデータをvCardデータを読んだことを示しています。

ステップ3. 名前検索

作成された電話帳の内部表現はソートされているわけでもないので、単純にバカ・サーチしているだけ。



実際の着信時には、HFPで通知される発信者番号で電話帳を検索して名前を見つけてLCDに表示させます。こんな具合になりました。